twilio-ruby 5.46.1 → 5.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (520) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +129 -0
  3. data/README.md +6 -6
  4. data/lib/twilio-ruby/rest/api.rb +1 -1
  5. data/lib/twilio-ruby/rest/api/v2010.rb +5 -4
  6. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +7 -1
  7. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +4 -4
  8. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +4 -4
  9. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +2 -2
  10. data/lib/twilio-ruby/rest/autopilot/v1.rb +5 -4
  11. data/lib/twilio-ruby/rest/bulkexports/v1.rb +10 -8
  12. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +14 -0
  13. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +14 -0
  14. data/lib/twilio-ruby/rest/chat/v1.rb +10 -8
  15. data/lib/twilio-ruby/rest/chat/v2.rb +10 -8
  16. data/lib/twilio-ruby/rest/client.rb +8 -1
  17. data/lib/twilio-ruby/rest/conversations/v1.rb +25 -20
  18. data/lib/twilio-ruby/rest/events/v1.rb +20 -16
  19. data/lib/twilio-ruby/rest/events/v1/event_type.rb +4 -4
  20. data/lib/twilio-ruby/rest/events/v1/schema.rb +4 -4
  21. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +4 -4
  22. data/lib/twilio-ruby/rest/events/v1/sink.rb +6 -5
  23. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +3 -3
  24. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +3 -3
  25. data/lib/twilio-ruby/rest/events/v1/subscription.rb +15 -8
  26. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +133 -6
  27. data/lib/twilio-ruby/rest/fax/v1.rb +5 -4
  28. data/lib/twilio-ruby/rest/flex_api/v1.rb +15 -12
  29. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +14 -0
  30. data/lib/twilio-ruby/rest/insights.rb +1 -1
  31. data/lib/twilio-ruby/rest/insights/v1.rb +11 -9
  32. data/lib/twilio-ruby/rest/insights/v1/room.rb +55 -43
  33. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +22 -22
  34. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +10 -8
  35. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +10 -8
  36. data/lib/twilio-ruby/rest/lookups/v1.rb +5 -4
  37. data/lib/twilio-ruby/rest/messaging.rb +20 -0
  38. data/lib/twilio-ruby/rest/messaging/v1.rb +35 -4
  39. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +328 -0
  40. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +143 -0
  41. data/lib/twilio-ruby/rest/messaging/v1/service.rb +43 -0
  42. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +266 -0
  43. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +125 -0
  44. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  45. data/lib/twilio-ruby/rest/monitor/v1.rb +10 -8
  46. data/lib/twilio-ruby/rest/notify/v1.rb +10 -8
  47. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +10 -8
  48. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +5 -4
  49. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +10 -8
  50. data/lib/twilio-ruby/rest/preview/marketplace.rb +10 -8
  51. data/lib/twilio-ruby/rest/preview/sync.rb +5 -4
  52. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +4 -8
  53. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +5 -4
  54. data/lib/twilio-ruby/rest/preview/understand.rb +5 -4
  55. data/lib/twilio-ruby/rest/preview/wireless.rb +15 -12
  56. data/lib/twilio-ruby/rest/proxy/v1.rb +5 -4
  57. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +1 -1
  58. data/lib/twilio-ruby/rest/serverless/v1.rb +5 -4
  59. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +11 -1
  60. data/lib/twilio-ruby/rest/studio/v1.rb +5 -4
  61. data/lib/twilio-ruby/rest/studio/v2.rb +5 -4
  62. data/lib/twilio-ruby/rest/supersim.rb +9 -0
  63. data/lib/twilio-ruby/rest/supersim/v1.rb +41 -20
  64. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +68 -16
  65. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +16 -0
  66. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  67. data/lib/twilio-ruby/rest/sync/v1.rb +5 -4
  68. data/lib/twilio-ruby/rest/sync/v1/service.rb +0 -8
  69. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +13 -32
  70. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +0 -8
  71. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +9 -23
  72. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +38 -45
  73. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +0 -8
  74. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +9 -23
  75. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +38 -47
  76. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +0 -8
  77. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +9 -23
  78. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +0 -6
  79. data/lib/twilio-ruby/rest/taskrouter/v1.rb +5 -4
  80. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +12 -13
  81. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +15 -3
  82. data/lib/twilio-ruby/rest/trunking/v1.rb +5 -4
  83. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  84. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  85. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  86. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  87. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  88. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  89. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  90. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  91. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  92. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  93. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  94. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  95. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  96. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  97. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  98. data/lib/twilio-ruby/rest/verify.rb +9 -0
  99. data/lib/twilio-ruby/rest/verify/v2.rb +26 -8
  100. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +24 -0
  101. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +4 -3
  102. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +41 -52
  103. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +269 -0
  104. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +329 -0
  105. data/lib/twilio-ruby/rest/video/v1.rb +20 -16
  106. data/lib/twilio-ruby/rest/video/v1/room.rb +4 -1
  107. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -6
  108. data/lib/twilio-ruby/rest/voice/v1.rb +20 -16
  109. data/lib/twilio-ruby/rest/wireless/v1.rb +15 -12
  110. data/lib/twilio-ruby/twiml/voice_response.rb +26 -2
  111. data/lib/twilio-ruby/version.rb +1 -1
  112. data/twilio-ruby.gemspec +1 -1
  113. metadata +26 -817
  114. data/spec/framework/request_spec.rb +0 -36
  115. data/spec/framework/serialize_spec.rb +0 -80
  116. data/spec/framework/version_spec.rb +0 -219
  117. data/spec/holodeck/holodeck.rb +0 -66
  118. data/spec/holodeck/hologram.rb +0 -4
  119. data/spec/http/http_client_spec.rb +0 -122
  120. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  121. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  122. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  123. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  124. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  125. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  126. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  127. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  128. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  129. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  130. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  131. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  132. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  133. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  134. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  135. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  136. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  137. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  138. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  139. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  140. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  141. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  142. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  143. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  144. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  145. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  146. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  147. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  148. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  149. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  150. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  151. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  152. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  153. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  154. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  155. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  156. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  157. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  158. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  159. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  160. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  161. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  162. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  163. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  164. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  165. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  166. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  167. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  168. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  169. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  170. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  171. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  172. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  173. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  174. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  175. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  176. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  177. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  178. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  179. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  180. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  181. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  182. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  183. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  184. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  185. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  186. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  187. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  188. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  189. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  190. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  191. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  192. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  193. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  194. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  195. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  196. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  197. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  198. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  199. data/spec/integration/api/v2010/account_spec.rb +0 -327
  200. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  201. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  202. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  203. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  204. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  205. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  206. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  207. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  208. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  209. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  210. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  211. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  212. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  213. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  214. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  215. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  216. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  217. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  218. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  219. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  220. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  221. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  222. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  223. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  224. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  225. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  226. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  227. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  228. data/spec/integration/chat/v1/service_spec.rb +0 -295
  229. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  230. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  231. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  232. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  233. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  234. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  235. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  236. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  237. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  238. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  239. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  240. data/spec/integration/chat/v2/service_spec.rb +0 -350
  241. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  242. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  243. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  244. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  245. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  246. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  247. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  248. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  249. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  250. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  251. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  252. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  253. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  254. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  255. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  256. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  257. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  258. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  259. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  260. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  261. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  262. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  263. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  264. data/spec/integration/events/v1/schema_spec.rb +0 -46
  265. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  266. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  267. data/spec/integration/events/v1/sink_spec.rb +0 -231
  268. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  269. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  270. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  271. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  272. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  273. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  274. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  275. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  276. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  277. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  278. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  279. data/spec/integration/insights/v1/call_spec.rb +0 -46
  280. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  281. data/spec/integration/insights/v1/room_spec.rb +0 -164
  282. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  283. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  284. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  285. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  286. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  287. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  288. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  289. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  290. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  291. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  292. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  293. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  294. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  295. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  296. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  297. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  298. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  299. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  300. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  301. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  302. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  303. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  304. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  305. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  306. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  307. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  308. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  309. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  310. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  311. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  312. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  313. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  314. data/spec/integration/notify/v1/service_spec.rb +0 -289
  315. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  316. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  317. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  318. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  319. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  320. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  321. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  322. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  323. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  324. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  325. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  326. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  327. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  328. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  329. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  330. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  331. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  332. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  333. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  334. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  335. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  336. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  337. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  338. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  339. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  340. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  341. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  342. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  343. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  344. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  345. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  346. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  347. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  348. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  349. data/spec/integration/preview/sync/service_spec.rb +0 -241
  350. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  351. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  352. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  353. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  354. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  355. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  356. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  357. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  358. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  359. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  360. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  361. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  362. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  363. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  364. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  365. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  366. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  367. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  368. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  369. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  370. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  371. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  372. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  373. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  374. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  375. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  376. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  377. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  378. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  379. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  380. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  381. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  382. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  383. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  384. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  385. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  386. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  387. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  388. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  389. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  390. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  391. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  392. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  393. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  394. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  395. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  396. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  397. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  398. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  399. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  400. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  401. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  402. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  403. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  404. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  405. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  406. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  407. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  408. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  409. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  410. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  411. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  412. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  413. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  414. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  415. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  416. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  417. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  418. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  419. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  420. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  421. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  422. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  423. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  424. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  425. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  426. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  427. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  428. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  429. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  430. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  431. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  432. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  433. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  434. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  435. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  436. data/spec/integration/sync/v1/service_spec.rb +0 -261
  437. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  438. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  439. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  440. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  441. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  442. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  443. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  444. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  445. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  446. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  447. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  448. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  449. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  450. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  451. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  452. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  453. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  454. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  455. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  456. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  457. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  458. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  459. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  460. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  461. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  462. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  463. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  464. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  465. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  466. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  467. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  468. data/spec/integration/verify/v2/form_spec.rb +0 -47
  469. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  470. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  471. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  472. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  473. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  474. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  475. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  476. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  477. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  478. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  479. data/spec/integration/verify/v2/service_spec.rb +0 -279
  480. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  481. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  482. data/spec/integration/video/v1/composition_spec.rb +0 -347
  483. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  484. data/spec/integration/video/v1/recording_spec.rb +0 -176
  485. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  486. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  487. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  488. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  489. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  490. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  491. data/spec/integration/video/v1/room_spec.rb +0 -301
  492. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  493. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  494. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  495. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  496. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  497. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  498. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  499. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  500. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  501. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  502. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  503. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  504. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  505. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  506. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  507. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  508. data/spec/jwt/access_token_spec.rb +0 -159
  509. data/spec/jwt/client_capability_spec.rb +0 -104
  510. data/spec/jwt/task_router_spec.rb +0 -172
  511. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  512. data/spec/rest/client_spec.rb +0 -255
  513. data/spec/security/request_validator_spec.rb +0 -125
  514. data/spec/spec_helper.rb +0 -38
  515. data/spec/support/fakeweb.rb +0 -2
  516. data/spec/twilio_spec.rb +0 -17
  517. data/spec/twiml/messaging_response_spec.rb +0 -235
  518. data/spec/twiml/voice_response_spec.rb +0 -847
  519. data/spec/util/configuration_spec.rb +0 -33
  520. data/spec/util/url_encode_spec.rb +0 -12
@@ -21,7 +21,8 @@ module Twilio
21
21
  # @param [String] service_sid The unique SID identifier of the Service.
22
22
  # @param [String] identity The unique external identifier for the Entity of the
23
23
  # Service. This identifier should be immutable, not PII, and generated by your
24
- # external system, such as your user's UUID, GUID, or SID.
24
+ # external system, such as your user's UUID, GUID, or SID. This value must be
25
+ # between 8 and 64 characters long.
25
26
  # @return [FactorList] FactorList
26
27
  def initialize(version, service_sid: nil, identity: nil)
27
28
  super(version)
@@ -31,49 +32,6 @@ module Twilio
31
32
  @uri = "/Services/#{@solution[:service_sid]}/Entities/#{@solution[:identity]}/Factors"
32
33
  end
33
34
 
34
- ##
35
- # Create the FactorInstance
36
- # @param [String] friendly_name The friendly name of this Factor
37
- # @param [factor.FactorTypes] factor_type The Type of this Factor. Currently only
38
- # `push` is supported
39
- # @param [String] binding_alg The algorithm used when `factor_type` is `push`.
40
- # Algorithm supported: `ES256`
41
- # @param [String] binding_public_key The Ecdsa public key in PKIX, ASN.1 DER
42
- # format encoded in Base64
43
- # @param [String] config_app_id The ID that uniquely identifies your app in the
44
- # Google or Apple store, such as `com.example.myapp`. Required when `factor_type`
45
- # is `push`
46
- # @param [factor.NotificationPlatforms] config_notification_platform The transport
47
- # technology used to generate the Notification Token. Can be `apn` or `fcm`.
48
- # Required when `factor_type` is `push`
49
- # @param [String] config_notification_token For APN, the device token. For FCM the
50
- # registration token. It used to send the push notifications. Required when
51
- # `factor_type` is `push`
52
- # @param [String] config_sdk_version The Verify Push SDK version used to configure
53
- # the factor
54
- # @return [FactorInstance] Created FactorInstance
55
- def create(friendly_name: nil, factor_type: nil, binding_alg: :unset, binding_public_key: :unset, config_app_id: :unset, config_notification_platform: :unset, config_notification_token: :unset, config_sdk_version: :unset)
56
- data = Twilio::Values.of({
57
- 'FriendlyName' => friendly_name,
58
- 'FactorType' => factor_type,
59
- 'Binding.Alg' => binding_alg,
60
- 'Binding.PublicKey' => binding_public_key,
61
- 'Config.AppId' => config_app_id,
62
- 'Config.NotificationPlatform' => config_notification_platform,
63
- 'Config.NotificationToken' => config_notification_token,
64
- 'Config.SdkVersion' => config_sdk_version,
65
- })
66
-
67
- payload = @version.create('POST', @uri, data: data)
68
-
69
- FactorInstance.new(
70
- @version,
71
- payload,
72
- service_sid: @solution[:service_sid],
73
- identity: @solution[:identity],
74
- )
75
- end
76
-
77
35
  ##
78
36
  # Lists FactorInstance records from the API as a list.
79
37
  # Unlike stream(), this operation is eager and will load `limit` records into
@@ -205,7 +163,7 @@ module Twilio
205
163
  # @param [Version] version Version that contains the resource
206
164
  # @param [String] service_sid The unique SID identifier of the Service.
207
165
  # @param [String] identity Customer unique identity for the Entity owner of the
208
- # Factor
166
+ # Factor. This value must be between 8 and 64 characters long.
209
167
  # @param [String] sid A 34 character string that uniquely identifies this Factor.
210
168
  # @return [FactorContext] FactorContext
211
169
  def initialize(version, service_sid, identity, sid)
@@ -242,19 +200,34 @@ module Twilio
242
200
  # Update the FactorInstance
243
201
  # @param [String] auth_payload The optional payload needed to verify the Factor
244
202
  # for the first time. E.g. for a TOTP, the numeric code.
245
- # @param [String] friendly_name The new friendly name of this Factor
203
+ # @param [String] friendly_name The new friendly name of this Factor. It can be up
204
+ # to 64 characters.
246
205
  # @param [String] config_notification_token For APN, the device token. For FCM the
247
206
  # registration token. It used to send the push notifications. Required when
248
- # `factor_type` is `push`
207
+ # `factor_type` is `push`. If specified, this value must be between 32 and 255
208
+ # characters long.
249
209
  # @param [String] config_sdk_version The Verify Push SDK version used to configure
250
210
  # the factor
211
+ # @param [String] config_time_step Defines how often, in seconds, are TOTP codes
212
+ # generated. i.e, a new TOTP code is generated every time_step seconds. Must be
213
+ # between 20 and 60 seconds, inclusive
214
+ # @param [String] config_skew The number of time-steps, past and future, that are
215
+ # valid for validation of TOTP codes. Must be between 0 and 2, inclusive
216
+ # @param [String] config_code_length Number of digits for generated TOTP codes.
217
+ # Must be between 3 and 8, inclusive
218
+ # @param [factor.TotpAlgorithms] config_alg The algorithm used to derive the TOTP
219
+ # codes. Can be `sha1`, `sha256` or `sha512`
251
220
  # @return [FactorInstance] Updated FactorInstance
252
- def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset)
221
+ def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset)
253
222
  data = Twilio::Values.of({
254
223
  'AuthPayload' => auth_payload,
255
224
  'FriendlyName' => friendly_name,
256
225
  'Config.NotificationToken' => config_notification_token,
257
226
  'Config.SdkVersion' => config_sdk_version,
227
+ 'Config.TimeStep' => config_time_step,
228
+ 'Config.Skew' => config_skew,
229
+ 'Config.CodeLength' => config_code_length,
230
+ 'Config.Alg' => config_alg,
258
231
  })
259
232
 
260
233
  payload = @version.update('POST', @uri, data: data)
@@ -293,7 +266,8 @@ module Twilio
293
266
  # @param [String] service_sid The unique SID identifier of the Service.
294
267
  # @param [String] identity The unique external identifier for the Entity of the
295
268
  # Service. This identifier should be immutable, not PII, and generated by your
296
- # external system, such as your user's UUID, GUID, or SID.
269
+ # external system, such as your user's UUID, GUID, or SID. This value must be
270
+ # between 8 and 64 characters long.
297
271
  # @param [String] sid A 34 character string that uniquely identifies this Factor.
298
272
  # @return [FactorInstance] FactorInstance
299
273
  def initialize(version, payload, service_sid: nil, identity: nil, sid: nil)
@@ -426,19 +400,34 @@ module Twilio
426
400
  # Update the FactorInstance
427
401
  # @param [String] auth_payload The optional payload needed to verify the Factor
428
402
  # for the first time. E.g. for a TOTP, the numeric code.
429
- # @param [String] friendly_name The new friendly name of this Factor
403
+ # @param [String] friendly_name The new friendly name of this Factor. It can be up
404
+ # to 64 characters.
430
405
  # @param [String] config_notification_token For APN, the device token. For FCM the
431
406
  # registration token. It used to send the push notifications. Required when
432
- # `factor_type` is `push`
407
+ # `factor_type` is `push`. If specified, this value must be between 32 and 255
408
+ # characters long.
433
409
  # @param [String] config_sdk_version The Verify Push SDK version used to configure
434
410
  # the factor
411
+ # @param [String] config_time_step Defines how often, in seconds, are TOTP codes
412
+ # generated. i.e, a new TOTP code is generated every time_step seconds. Must be
413
+ # between 20 and 60 seconds, inclusive
414
+ # @param [String] config_skew The number of time-steps, past and future, that are
415
+ # valid for validation of TOTP codes. Must be between 0 and 2, inclusive
416
+ # @param [String] config_code_length Number of digits for generated TOTP codes.
417
+ # Must be between 3 and 8, inclusive
418
+ # @param [factor.TotpAlgorithms] config_alg The algorithm used to derive the TOTP
419
+ # codes. Can be `sha1`, `sha256` or `sha512`
435
420
  # @return [FactorInstance] Updated FactorInstance
436
- def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset)
421
+ def update(auth_payload: :unset, friendly_name: :unset, config_notification_token: :unset, config_sdk_version: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset)
437
422
  context.update(
438
423
  auth_payload: auth_payload,
439
424
  friendly_name: friendly_name,
440
425
  config_notification_token: config_notification_token,
441
426
  config_sdk_version: config_sdk_version,
427
+ config_time_step: config_time_step,
428
+ config_skew: config_skew,
429
+ config_code_length: config_code_length,
430
+ config_alg: config_alg,
442
431
  )
443
432
  end
444
433
 
@@ -0,0 +1,269 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Verify < Domain
12
+ class V2 < Version
13
+ class ServiceContext < InstanceContext
14
+ class EntityContext < InstanceContext
15
+ ##
16
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
17
+ class NewFactorList < ListResource
18
+ ##
19
+ # Initialize the NewFactorList
20
+ # @param [Version] version Version that contains the resource
21
+ # @param [String] service_sid The unique SID identifier of the Service.
22
+ # @param [String] identity The unique external identifier for the Entity of the
23
+ # Service. This identifier should be immutable, not PII, and generated by your
24
+ # external system, such as your user's UUID, GUID, or SID. This value must be
25
+ # between 8 and 64 characters long.
26
+ # @return [NewFactorList] NewFactorList
27
+ def initialize(version, service_sid: nil, identity: nil)
28
+ super(version)
29
+
30
+ # Path Solution
31
+ @solution = {service_sid: service_sid, identity: identity}
32
+ @uri = "/Services/#{@solution[:service_sid]}/Entities/#{@solution[:identity]}/Factors"
33
+ end
34
+
35
+ ##
36
+ # Create the NewFactorInstance
37
+ # @param [String] friendly_name The friendly name of this Factor. It can be up to
38
+ # 64 characters.
39
+ # @param [new_factor.FactorTypes] factor_type The Type of this Factor. Currently
40
+ # only `push` is supported
41
+ # @param [String] binding_alg The algorithm used when `factor_type` is `push`.
42
+ # Algorithm supported: `ES256`
43
+ # @param [String] binding_public_key The Ecdsa public key in PKIX, ASN.1 DER
44
+ # format encoded in Base64
45
+ # @param [String] config_app_id The ID that uniquely identifies your app in the
46
+ # Google or Apple store, such as `com.example.myapp`. Required when `factor_type`
47
+ # is `push`. If specified, it can be up to 100 characters long.
48
+ # @param [new_factor.NotificationPlatforms] config_notification_platform The
49
+ # transport technology used to generate the Notification Token. Can be `apn` or
50
+ # `fcm`. Required when `factor_type` is `push`
51
+ # @param [String] config_notification_token For APN, the device token. For FCM the
52
+ # registration token. It used to send the push notifications. Required when
53
+ # `factor_type` is `push`. If specified, this value must be between 32 and 255
54
+ # characters long.
55
+ # @param [String] config_sdk_version The Verify Push SDK version used to configure
56
+ # the factor
57
+ # @param [String] binding_secret The shared secret for TOTP factors encoded in
58
+ # Base32
59
+ # @param [String] config_time_step Defines how often, in seconds, are TOTP codes
60
+ # generated. i.e, a new TOTP code is generated every time_step seconds. Must be
61
+ # between 20 and 60 seconds, inclusive. Defaults to 30 seconds
62
+ # @param [String] config_skew The number of time-steps, past and future, that are
63
+ # valid for validation of TOTP codes. Must be between 0 and 2, inclusive. Defaults
64
+ # to 1
65
+ # @param [String] config_code_length Number of digits for generated TOTP codes.
66
+ # Must be between 3 and 8, inclusive. Defaults to 6
67
+ # @param [new_factor.TotpAlgorithms] config_alg The algorithm used to derive the
68
+ # TOTP codes. Can be `sha1`, `sha256` or `sha512`. Defaults to `sha1`
69
+ # @return [NewFactorInstance] Created NewFactorInstance
70
+ def create(friendly_name: nil, factor_type: nil, binding_alg: :unset, binding_public_key: :unset, config_app_id: :unset, config_notification_platform: :unset, config_notification_token: :unset, config_sdk_version: :unset, binding_secret: :unset, config_time_step: :unset, config_skew: :unset, config_code_length: :unset, config_alg: :unset)
71
+ data = Twilio::Values.of({
72
+ 'FriendlyName' => friendly_name,
73
+ 'FactorType' => factor_type,
74
+ 'Binding.Alg' => binding_alg,
75
+ 'Binding.PublicKey' => binding_public_key,
76
+ 'Config.AppId' => config_app_id,
77
+ 'Config.NotificationPlatform' => config_notification_platform,
78
+ 'Config.NotificationToken' => config_notification_token,
79
+ 'Config.SdkVersion' => config_sdk_version,
80
+ 'Binding.Secret' => binding_secret,
81
+ 'Config.TimeStep' => config_time_step,
82
+ 'Config.Skew' => config_skew,
83
+ 'Config.CodeLength' => config_code_length,
84
+ 'Config.Alg' => config_alg,
85
+ })
86
+
87
+ payload = @version.create('POST', @uri, data: data)
88
+
89
+ NewFactorInstance.new(
90
+ @version,
91
+ payload,
92
+ service_sid: @solution[:service_sid],
93
+ identity: @solution[:identity],
94
+ )
95
+ end
96
+
97
+ ##
98
+ # Provide a user friendly representation
99
+ def to_s
100
+ '#<Twilio.Verify.V2.NewFactorList>'
101
+ end
102
+ end
103
+
104
+ ##
105
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
106
+ class NewFactorPage < Page
107
+ ##
108
+ # Initialize the NewFactorPage
109
+ # @param [Version] version Version that contains the resource
110
+ # @param [Response] response Response from the API
111
+ # @param [Hash] solution Path solution for the resource
112
+ # @return [NewFactorPage] NewFactorPage
113
+ def initialize(version, response, solution)
114
+ super(version, response)
115
+
116
+ # Path Solution
117
+ @solution = solution
118
+ end
119
+
120
+ ##
121
+ # Build an instance of NewFactorInstance
122
+ # @param [Hash] payload Payload response from the API
123
+ # @return [NewFactorInstance] NewFactorInstance
124
+ def get_instance(payload)
125
+ NewFactorInstance.new(
126
+ @version,
127
+ payload,
128
+ service_sid: @solution[:service_sid],
129
+ identity: @solution[:identity],
130
+ )
131
+ end
132
+
133
+ ##
134
+ # Provide a user friendly representation
135
+ def to_s
136
+ '<Twilio.Verify.V2.NewFactorPage>'
137
+ end
138
+ end
139
+
140
+ ##
141
+ # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
142
+ class NewFactorInstance < InstanceResource
143
+ ##
144
+ # Initialize the NewFactorInstance
145
+ # @param [Version] version Version that contains the resource
146
+ # @param [Hash] payload payload that contains response from Twilio
147
+ # @param [String] service_sid The unique SID identifier of the Service.
148
+ # @param [String] identity The unique external identifier for the Entity of the
149
+ # Service. This identifier should be immutable, not PII, and generated by your
150
+ # external system, such as your user's UUID, GUID, or SID. This value must be
151
+ # between 8 and 64 characters long.
152
+ # @return [NewFactorInstance] NewFactorInstance
153
+ def initialize(version, payload, service_sid: nil, identity: nil)
154
+ super(version)
155
+
156
+ # Marshaled Properties
157
+ @properties = {
158
+ 'sid' => payload['sid'],
159
+ 'account_sid' => payload['account_sid'],
160
+ 'service_sid' => payload['service_sid'],
161
+ 'entity_sid' => payload['entity_sid'],
162
+ 'identity' => payload['identity'],
163
+ 'binding' => payload['binding'],
164
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
165
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
166
+ 'friendly_name' => payload['friendly_name'],
167
+ 'status' => payload['status'],
168
+ 'factor_type' => payload['factor_type'],
169
+ 'config' => payload['config'],
170
+ 'url' => payload['url'],
171
+ }
172
+ end
173
+
174
+ ##
175
+ # @return [String] A string that uniquely identifies this Factor.
176
+ def sid
177
+ @properties['sid']
178
+ end
179
+
180
+ ##
181
+ # @return [String] Account Sid.
182
+ def account_sid
183
+ @properties['account_sid']
184
+ end
185
+
186
+ ##
187
+ # @return [String] Service Sid.
188
+ def service_sid
189
+ @properties['service_sid']
190
+ end
191
+
192
+ ##
193
+ # @return [String] Entity Sid.
194
+ def entity_sid
195
+ @properties['entity_sid']
196
+ end
197
+
198
+ ##
199
+ # @return [String] Unique external identifier of the Entity
200
+ def identity
201
+ @properties['identity']
202
+ end
203
+
204
+ ##
205
+ # @return [Hash] Unique external identifier of the Entity
206
+ def binding
207
+ @properties['binding']
208
+ end
209
+
210
+ ##
211
+ # @return [Time] The date this Factor was created
212
+ def date_created
213
+ @properties['date_created']
214
+ end
215
+
216
+ ##
217
+ # @return [Time] The date this Factor was updated
218
+ def date_updated
219
+ @properties['date_updated']
220
+ end
221
+
222
+ ##
223
+ # @return [String] A human readable description of this resource.
224
+ def friendly_name
225
+ @properties['friendly_name']
226
+ end
227
+
228
+ ##
229
+ # @return [new_factor.FactorStatuses] The Status of this Factor
230
+ def status
231
+ @properties['status']
232
+ end
233
+
234
+ ##
235
+ # @return [new_factor.FactorTypes] The Type of this Factor
236
+ def factor_type
237
+ @properties['factor_type']
238
+ end
239
+
240
+ ##
241
+ # @return [Hash] Binding for a `factor_type`.
242
+ def config
243
+ @properties['config']
244
+ end
245
+
246
+ ##
247
+ # @return [String] The URL of this resource.
248
+ def url
249
+ @properties['url']
250
+ end
251
+
252
+ ##
253
+ # Provide a user friendly representation
254
+ def to_s
255
+ "<Twilio.Verify.V2.NewFactorInstance>"
256
+ end
257
+
258
+ ##
259
+ # Provide a detailed, user friendly representation
260
+ def inspect
261
+ "<Twilio.Verify.V2.NewFactorInstance>"
262
+ end
263
+ end
264
+ end
265
+ end
266
+ end
267
+ end
268
+ end
269
+ end
@@ -0,0 +1,329 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Verify < Domain
12
+ class V2 < Version
13
+ class VerificationAttemptList < ListResource
14
+ ##
15
+ # Initialize the VerificationAttemptList
16
+ # @param [Version] version Version that contains the resource
17
+ # @return [VerificationAttemptList] VerificationAttemptList
18
+ def initialize(version)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {}
23
+ @uri = "/Attempts"
24
+ end
25
+
26
+ ##
27
+ # Lists VerificationAttemptInstance records from the API as a list.
28
+ # Unlike stream(), this operation is eager and will load `limit` records into
29
+ # memory before returning.
30
+ # @param [Time] date_created_after Datetime filter used to query Verification
31
+ # Attempts created after this datetime.
32
+ # @param [Time] date_created_before Datetime filter used to query Verification
33
+ # Attempts created before this datetime.
34
+ # @param [String] channel_data_to Destination of a verification. Depending on the
35
+ # type of channel, it could be a phone number in E.164 format or an email address.
36
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
37
+ # guarantees to never return more than limit. Default is no limit
38
+ # @param [Integer] page_size Number of records to fetch per request, when
39
+ # not set will use the default value of 50 records. If no page_size is defined
40
+ # but a limit is defined, stream() will attempt to read the limit with the most
41
+ # efficient page size, i.e. min(limit, 1000)
42
+ # @return [Array] Array of up to limit results
43
+ def list(date_created_after: :unset, date_created_before: :unset, channel_data_to: :unset, limit: nil, page_size: nil)
44
+ self.stream(
45
+ date_created_after: date_created_after,
46
+ date_created_before: date_created_before,
47
+ channel_data_to: channel_data_to,
48
+ limit: limit,
49
+ page_size: page_size
50
+ ).entries
51
+ end
52
+
53
+ ##
54
+ # Streams VerificationAttemptInstance records from the API as an Enumerable.
55
+ # This operation lazily loads records as efficiently as possible until the limit
56
+ # is reached.
57
+ # @param [Time] date_created_after Datetime filter used to query Verification
58
+ # Attempts created after this datetime.
59
+ # @param [Time] date_created_before Datetime filter used to query Verification
60
+ # Attempts created before this datetime.
61
+ # @param [String] channel_data_to Destination of a verification. Depending on the
62
+ # type of channel, it could be a phone number in E.164 format or an email address.
63
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
64
+ # guarantees to never return more than limit. Default is no limit.
65
+ # @param [Integer] page_size Number of records to fetch per request, when
66
+ # not set will use the default value of 50 records. If no page_size is defined
67
+ # but a limit is defined, stream() will attempt to read the limit with the most
68
+ # efficient page size, i.e. min(limit, 1000)
69
+ # @return [Enumerable] Enumerable that will yield up to limit results
70
+ def stream(date_created_after: :unset, date_created_before: :unset, channel_data_to: :unset, limit: nil, page_size: nil)
71
+ limits = @version.read_limits(limit, page_size)
72
+
73
+ page = self.page(
74
+ date_created_after: date_created_after,
75
+ date_created_before: date_created_before,
76
+ channel_data_to: channel_data_to,
77
+ page_size: limits[:page_size],
78
+ )
79
+
80
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
81
+ end
82
+
83
+ ##
84
+ # When passed a block, yields VerificationAttemptInstance records from the API.
85
+ # This operation lazily loads records as efficiently as possible until the limit
86
+ # is reached.
87
+ def each
88
+ limits = @version.read_limits
89
+
90
+ page = self.page(page_size: limits[:page_size], )
91
+
92
+ @version.stream(page,
93
+ limit: limits[:limit],
94
+ page_limit: limits[:page_limit]).each {|x| yield x}
95
+ end
96
+
97
+ ##
98
+ # Retrieve a single page of VerificationAttemptInstance records from the API.
99
+ # Request is executed immediately.
100
+ # @param [Time] date_created_after Datetime filter used to query Verification
101
+ # Attempts created after this datetime.
102
+ # @param [Time] date_created_before Datetime filter used to query Verification
103
+ # Attempts created before this datetime.
104
+ # @param [String] channel_data_to Destination of a verification. Depending on the
105
+ # type of channel, it could be a phone number in E.164 format or an email address.
106
+ # @param [String] page_token PageToken provided by the API
107
+ # @param [Integer] page_number Page Number, this value is simply for client state
108
+ # @param [Integer] page_size Number of records to return, defaults to 50
109
+ # @return [Page] Page of VerificationAttemptInstance
110
+ def page(date_created_after: :unset, date_created_before: :unset, channel_data_to: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
111
+ params = Twilio::Values.of({
112
+ 'DateCreatedAfter' => Twilio.serialize_iso8601_datetime(date_created_after),
113
+ 'DateCreatedBefore' => Twilio.serialize_iso8601_datetime(date_created_before),
114
+ 'ChannelData.To' => channel_data_to,
115
+ 'PageToken' => page_token,
116
+ 'Page' => page_number,
117
+ 'PageSize' => page_size,
118
+ })
119
+
120
+ response = @version.page('GET', @uri, params: params)
121
+
122
+ VerificationAttemptPage.new(@version, response, @solution)
123
+ end
124
+
125
+ ##
126
+ # Retrieve a single page of VerificationAttemptInstance records from the API.
127
+ # Request is executed immediately.
128
+ # @param [String] target_url API-generated URL for the requested results page
129
+ # @return [Page] Page of VerificationAttemptInstance
130
+ def get_page(target_url)
131
+ response = @version.domain.request(
132
+ 'GET',
133
+ target_url
134
+ )
135
+ VerificationAttemptPage.new(@version, response, @solution)
136
+ end
137
+
138
+ ##
139
+ # Provide a user friendly representation
140
+ def to_s
141
+ '#<Twilio.Verify.V2.VerificationAttemptList>'
142
+ end
143
+ end
144
+
145
+ class VerificationAttemptPage < Page
146
+ ##
147
+ # Initialize the VerificationAttemptPage
148
+ # @param [Version] version Version that contains the resource
149
+ # @param [Response] response Response from the API
150
+ # @param [Hash] solution Path solution for the resource
151
+ # @return [VerificationAttemptPage] VerificationAttemptPage
152
+ def initialize(version, response, solution)
153
+ super(version, response)
154
+
155
+ # Path Solution
156
+ @solution = solution
157
+ end
158
+
159
+ ##
160
+ # Build an instance of VerificationAttemptInstance
161
+ # @param [Hash] payload Payload response from the API
162
+ # @return [VerificationAttemptInstance] VerificationAttemptInstance
163
+ def get_instance(payload)
164
+ VerificationAttemptInstance.new(@version, payload, )
165
+ end
166
+
167
+ ##
168
+ # Provide a user friendly representation
169
+ def to_s
170
+ '<Twilio.Verify.V2.VerificationAttemptPage>'
171
+ end
172
+ end
173
+
174
+ class VerificationAttemptContext < InstanceContext
175
+ ##
176
+ # Initialize the VerificationAttemptContext
177
+ # @param [Version] version Version that contains the resource
178
+ # @param [String] sid The unique SID identifier of a Verification Attempt
179
+ # @return [VerificationAttemptContext] VerificationAttemptContext
180
+ def initialize(version, sid)
181
+ super(version)
182
+
183
+ # Path Solution
184
+ @solution = {sid: sid, }
185
+ @uri = "/Attempts/#{@solution[:sid]}"
186
+ end
187
+
188
+ ##
189
+ # Fetch the VerificationAttemptInstance
190
+ # @return [VerificationAttemptInstance] Fetched VerificationAttemptInstance
191
+ def fetch
192
+ payload = @version.fetch('GET', @uri)
193
+
194
+ VerificationAttemptInstance.new(@version, payload, sid: @solution[:sid], )
195
+ end
196
+
197
+ ##
198
+ # Provide a user friendly representation
199
+ def to_s
200
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
201
+ "#<Twilio.Verify.V2.VerificationAttemptContext #{context}>"
202
+ end
203
+
204
+ ##
205
+ # Provide a detailed, user friendly representation
206
+ def inspect
207
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
208
+ "#<Twilio.Verify.V2.VerificationAttemptContext #{context}>"
209
+ end
210
+ end
211
+
212
+ class VerificationAttemptInstance < InstanceResource
213
+ ##
214
+ # Initialize the VerificationAttemptInstance
215
+ # @param [Version] version Version that contains the resource
216
+ # @param [Hash] payload payload that contains response from Twilio
217
+ # @param [String] sid The unique SID identifier of a Verification Attempt
218
+ # @return [VerificationAttemptInstance] VerificationAttemptInstance
219
+ def initialize(version, payload, sid: nil)
220
+ super(version)
221
+
222
+ # Marshaled Properties
223
+ @properties = {
224
+ 'sid' => payload['sid'],
225
+ 'account_sid' => payload['account_sid'],
226
+ 'service_sid' => payload['service_sid'],
227
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
228
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
229
+ 'conversion_status' => payload['conversion_status'],
230
+ 'channel' => payload['channel'],
231
+ 'channel_data' => payload['channel_data'],
232
+ 'url' => payload['url'],
233
+ }
234
+
235
+ # Context
236
+ @instance_context = nil
237
+ @params = {'sid' => sid || @properties['sid'], }
238
+ end
239
+
240
+ ##
241
+ # Generate an instance context for the instance, the context is capable of
242
+ # performing various actions. All instance actions are proxied to the context
243
+ # @return [VerificationAttemptContext] VerificationAttemptContext for this VerificationAttemptInstance
244
+ def context
245
+ unless @instance_context
246
+ @instance_context = VerificationAttemptContext.new(@version, @params['sid'], )
247
+ end
248
+ @instance_context
249
+ end
250
+
251
+ ##
252
+ # @return [String] A string that uniquely identifies this Verification Attempt
253
+ def sid
254
+ @properties['sid']
255
+ end
256
+
257
+ ##
258
+ # @return [String] Account Sid
259
+ def account_sid
260
+ @properties['account_sid']
261
+ end
262
+
263
+ ##
264
+ # @return [String] The service_sid
265
+ def service_sid
266
+ @properties['service_sid']
267
+ end
268
+
269
+ ##
270
+ # @return [Time] The date this Attempt was created
271
+ def date_created
272
+ @properties['date_created']
273
+ end
274
+
275
+ ##
276
+ # @return [Time] The date this Attempt was updated
277
+ def date_updated
278
+ @properties['date_updated']
279
+ end
280
+
281
+ ##
282
+ # @return [verification_attempt.ConversionStatus] Status of a conversion
283
+ def conversion_status
284
+ @properties['conversion_status']
285
+ end
286
+
287
+ ##
288
+ # @return [verification_attempt.Channels] Channel used for the attempt
289
+ def channel
290
+ @properties['channel']
291
+ end
292
+
293
+ ##
294
+ # @return [Hash] Object with the channel information for an attempt
295
+ def channel_data
296
+ @properties['channel_data']
297
+ end
298
+
299
+ ##
300
+ # @return [String] The url
301
+ def url
302
+ @properties['url']
303
+ end
304
+
305
+ ##
306
+ # Fetch the VerificationAttemptInstance
307
+ # @return [VerificationAttemptInstance] Fetched VerificationAttemptInstance
308
+ def fetch
309
+ context.fetch
310
+ end
311
+
312
+ ##
313
+ # Provide a user friendly representation
314
+ def to_s
315
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
316
+ "<Twilio.Verify.V2.VerificationAttemptInstance #{values}>"
317
+ end
318
+
319
+ ##
320
+ # Provide a detailed, user friendly representation
321
+ def inspect
322
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
323
+ "<Twilio.Verify.V2.VerificationAttemptInstance #{values}>"
324
+ end
325
+ end
326
+ end
327
+ end
328
+ end
329
+ end