twilio-ruby 5.72.0 → 6.0.2

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 (654) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +14 -4
  4. data/.gitignore +3 -0
  5. data/CHANGES.md +281 -1
  6. data/CONTRIBUTING.md +10 -8
  7. data/LICENSE +1 -1
  8. data/Makefile +3 -0
  9. data/README.md +133 -40
  10. data/UPGRADE.md +10 -0
  11. data/advanced-examples/custom-http-client.md +170 -0
  12. data/cluster_spec.rb +77 -0
  13. data/lib/twilio-ruby/base/client_base.rb +124 -0
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  16. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  17. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  18. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  19. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  20. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  21. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  22. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  23. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +555 -514
  26. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -586
  27. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +433 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +963 -991
  48. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +653 -717
  49. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +498 -493
  51. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  52. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  53. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +399 -418
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +846 -903
  58. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  59. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  60. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  61. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +618 -625
  62. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  63. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  64. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  65. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  66. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  67. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +427 -390
  68. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  69. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +369 -385
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +514 -513
  72. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  73. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +400 -373
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  77. 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 +194 -195
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +650 -645
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +400 -374
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  88. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  89. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  101. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  102. data/lib/twilio-ruby/rest/api/v2010/account.rb +982 -943
  103. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  104. data/lib/twilio-ruby/rest/api.rb +25 -34
  105. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +429 -411
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  114. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  115. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  116. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +519 -500
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +674 -640
  120. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  121. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  122. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  123. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  124. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +246 -235
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  129. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  130. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  131. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  132. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  133. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +535 -515
  137. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  138. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  139. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +466 -440
  140. data/lib/twilio-ruby/rest/chat/v1/service.rb +862 -894
  141. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  142. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  143. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  144. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +607 -605
  149. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  150. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  152. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +510 -491
  153. data/lib/twilio-ruby/rest/chat/v2/service.rb +765 -778
  154. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  155. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  156. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  157. data/lib/twilio-ruby/rest/chat.rb +4 -48
  158. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  159. data/lib/twilio-ruby/rest/client.rb +328 -570
  160. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  161. data/lib/twilio-ruby/rest/content/v1/content.rb +364 -0
  162. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  163. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +266 -0
  164. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  165. data/lib/twilio-ruby/rest/content.rb +15 -0
  166. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +474 -444
  168. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  169. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +530 -495
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  173. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +606 -552
  175. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  176. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  177. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  178. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  179. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  180. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  181. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +537 -535
  184. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  185. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  186. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +618 -588
  187. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  188. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  189. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  190. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +485 -474
  191. data/lib/twilio-ruby/rest/conversations/v1/service.rb +477 -447
  192. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  193. data/lib/twilio-ruby/rest/conversations/v1/user.rb +473 -441
  194. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  195. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  196. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  197. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  198. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  199. data/lib/twilio-ruby/rest/events/v1/schema.rb +229 -218
  200. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  201. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  202. data/lib/twilio-ruby/rest/events/v1/sink.rb +439 -408
  203. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  204. data/lib/twilio-ruby/rest/events/v1/subscription.rb +420 -387
  205. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  206. data/lib/twilio-ruby/rest/events.rb +5 -34
  207. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +451 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  210. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  211. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +331 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +445 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +360 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +445 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +364 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  223. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +400 -398
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +249 -225
  226. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  227. data/lib/twilio-ruby/rest/flex_api/v1.rb +195 -92
  228. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  229. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  230. data/lib/twilio-ruby/rest/flex_api.rb +24 -31
  231. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  232. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  233. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  234. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  235. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  236. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  237. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  238. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  239. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  240. data/lib/twilio-ruby/rest/insights/v1/call.rb +260 -236
  241. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +496 -426
  242. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  243. data/lib/twilio-ruby/rest/insights/v1/conference.rb +506 -502
  244. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  245. data/lib/twilio-ruby/rest/insights/v1/room.rb +494 -489
  246. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  247. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  248. data/lib/twilio-ruby/rest/insights.rb +6 -34
  249. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  250. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +511 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +383 -0
  253. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +250 -0
  254. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +540 -0
  255. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  256. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  257. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +535 -488
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +466 -418
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +862 -779
  267. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +607 -555
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +510 -467
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +765 -689
  280. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  281. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  282. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  283. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  284. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  285. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +342 -253
  286. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  287. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  288. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  289. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  290. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  291. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  292. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  293. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  294. data/lib/twilio-ruby/rest/media.rb +4 -34
  295. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  298. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +488 -443
  299. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  300. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  301. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  302. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  304. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  305. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  306. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  307. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  308. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  309. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +507 -426
  310. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  311. data/lib/twilio-ruby/rest/messaging/v1/service.rb +741 -763
  312. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -90
  314. data/lib/twilio-ruby/rest/messaging.rb +28 -35
  315. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +359 -0
  317. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +352 -0
  318. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  319. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -295
  320. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +375 -0
  321. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +368 -0
  322. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +412 -322
  323. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -53
  324. data/lib/twilio-ruby/rest/microvisor.rb +4 -34
  325. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  327. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  328. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  329. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  330. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  331. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  332. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  333. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  334. data/lib/twilio-ruby/rest/notify/v1/service.rb +628 -622
  335. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  336. data/lib/twilio-ruby/rest/notify.rb +3 -34
  337. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  339. data/lib/twilio-ruby/rest/numbers/v1.rb +49 -0
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  341. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  342. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  343. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  344. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  345. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  346. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  347. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  348. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  349. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  350. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  351. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  352. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  353. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  354. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +171 -0
  355. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +185 -0
  356. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +262 -0
  357. data/lib/twilio-ruby/rest/oauth/v1/token.rb +179 -0
  358. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +213 -0
  359. data/lib/twilio-ruby/rest/oauth/v1.rb +64 -0
  360. data/lib/twilio-ruby/rest/oauth.rb +33 -0
  361. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  362. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  363. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  364. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  365. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  366. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +495 -459
  367. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  368. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  369. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +449 -446
  370. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  371. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  372. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  373. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  374. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  375. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +430 -398
  376. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  377. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  378. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +443 -399
  379. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  380. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  381. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +420 -398
  382. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  383. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  384. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +420 -398
  385. data/lib/twilio-ruby/rest/preview/sync/service.rb +496 -452
  386. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  387. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  388. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  389. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  390. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  391. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +429 -400
  392. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  393. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  394. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  395. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  396. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  397. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  398. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  399. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +519 -488
  400. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +654 -619
  401. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  402. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  403. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  404. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  405. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  406. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  407. data/lib/twilio-ruby/rest/preview.rb +11 -102
  408. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  409. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  410. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  411. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  412. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  413. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  414. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  415. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  416. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  417. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  418. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  419. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  420. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  421. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  422. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  423. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  424. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  425. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  426. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  427. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  428. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +422 -455
  429. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +523 -547
  430. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  431. data/lib/twilio-ruby/rest/proxy/v1/service.rb +560 -596
  432. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  433. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  434. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  435. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  436. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  437. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  438. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  439. data/lib/twilio-ruby/rest/routes.rb +4 -34
  440. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  441. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  442. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +413 -380
  443. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  444. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  445. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  446. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  447. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  448. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +457 -447
  449. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  450. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  451. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +413 -380
  452. data/lib/twilio-ruby/rest/serverless/v1/service.rb +524 -493
  453. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  454. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  455. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  457. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  458. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  459. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +423 -394
  460. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  461. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  462. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  463. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +471 -449
  464. data/lib/twilio-ruby/rest/studio/v1/flow.rb +381 -355
  465. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  466. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  467. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  468. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  469. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +464 -442
  470. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  471. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  472. data/lib/twilio-ruby/rest/studio/v2/flow.rb +520 -472
  473. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  474. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  475. data/lib/twilio-ruby/rest/studio.rb +3 -41
  476. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  477. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -362
  478. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  479. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -406
  480. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  481. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  482. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +381 -351
  483. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +259 -0
  484. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  485. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  486. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +464 -453
  487. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  488. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  489. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -140
  490. data/lib/twilio-ruby/rest/supersim.rb +16 -34
  491. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  492. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  493. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +457 -423
  494. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  495. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  496. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +471 -445
  497. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  498. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  499. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +471 -444
  500. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  501. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +420 -400
  502. data/lib/twilio-ruby/rest/sync/v1/service.rb +576 -567
  503. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  504. data/lib/twilio-ruby/rest/sync.rb +2 -34
  505. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -736
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +616 -661
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  514. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  515. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -566
  516. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  517. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  518. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  519. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  520. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  521. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  522. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +632 -631
  523. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +722 -730
  531. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  532. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  533. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  535. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  536. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  537. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  538. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  539. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +624 -630
  540. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  541. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  542. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  543. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  544. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  545. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  546. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +529 -513
  547. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  548. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  549. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  550. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  551. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  552. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  553. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  554. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  555. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +529 -513
  556. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  557. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  558. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  559. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  560. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  561. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -262
  562. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -198
  563. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +500 -539
  564. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -461
  565. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -289
  566. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +423 -422
  567. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  568. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  569. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +421 -384
  570. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -366
  571. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  572. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -420
  573. data/lib/twilio-ruby/rest/verify/v2/service.rb +767 -780
  574. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -198
  575. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  576. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  577. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  578. data/lib/twilio-ruby/rest/verify.rb +7 -34
  579. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  581. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  582. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  583. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  584. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  585. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  586. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  587. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  588. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  589. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  590. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  591. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  592. data/lib/twilio-ruby/rest/video/v1/room.rb +611 -602
  593. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  594. data/lib/twilio-ruby/rest/video.rb +7 -34
  595. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  596. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  597. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  598. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  599. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +392 -352
  600. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  601. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  602. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +382 -397
  603. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  604. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  605. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  606. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  607. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  608. data/lib/twilio-ruby/rest/voice.rb +7 -34
  609. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  610. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  611. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  612. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  613. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  614. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +640 -647
  615. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  616. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  617. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  618. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  619. data/lib/twilio-ruby/rest.rb +1 -0
  620. data/lib/twilio-ruby/twiml/voice_response.rb +132 -33
  621. data/lib/twilio-ruby/version.rb +1 -1
  622. data/sonar-project.properties +1 -1
  623. data/twilio-ruby.gemspec +1 -1
  624. metadata +118 -38
  625. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  626. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  627. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  628. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  629. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  630. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  631. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  632. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  633. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  634. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  635. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  636. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  637. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  638. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -314
  639. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  640. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +0 -559
  641. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  642. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  643. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  644. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  645. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  646. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
  647. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  648. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  649. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  650. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  651. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  652. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  653. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  654. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,606 +1,570 @@
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 - Proxy
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 Proxy < Domain
12
- class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
- class ServiceList < ListResource
16
- ##
17
- # Initialize the ServiceList
18
- # @param [Version] version Version that contains the resource
19
- # @return [ServiceList] ServiceList
20
- def initialize(version)
21
- super(version)
22
-
23
- # Path Solution
24
- @solution = {}
25
- @uri = "/Services"
26
- end
27
-
28
- ##
29
- # Lists ServiceInstance records from the API as a list.
30
- # Unlike stream(), this operation is eager and will load `limit` records into
31
- # memory before returning.
32
- # @param [Integer] limit Upper limit for the number of records to return. stream()
33
- # guarantees to never return more than limit. Default is no limit
34
- # @param [Integer] page_size Number of records to fetch per request, when
35
- # not set will use the default value of 50 records. If no page_size is defined
36
- # but a limit is defined, stream() will attempt to read the limit with the most
37
- # efficient page size, i.e. min(limit, 1000)
38
- # @return [Array] Array of up to limit results
39
- def list(limit: nil, page_size: nil)
40
- self.stream(limit: limit, page_size: page_size).entries
41
- end
42
-
43
- ##
44
- # Streams ServiceInstance records from the API as an Enumerable.
45
- # This operation lazily loads records as efficiently as possible until the limit
46
- # is reached.
47
- # @param [Integer] limit Upper limit for the number of records to return. stream()
48
- # guarantees to never return more than limit. Default is no limit.
49
- # @param [Integer] page_size Number of records to fetch per request, when
50
- # not set will use the default value of 50 records. If no page_size is defined
51
- # but a limit is defined, stream() will attempt to read the limit with the most
52
- # efficient page size, i.e. min(limit, 1000)
53
- # @return [Enumerable] Enumerable that will yield up to limit results
54
- def stream(limit: nil, page_size: nil)
55
- limits = @version.read_limits(limit, page_size)
56
-
57
- page = self.page(page_size: limits[:page_size], )
58
-
59
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
60
- end
61
-
62
- ##
63
- # When passed a block, yields ServiceInstance records from the API.
64
- # This operation lazily loads records as efficiently as possible until the limit
65
- # is reached.
66
- def each
67
- limits = @version.read_limits
68
-
69
- page = self.page(page_size: limits[:page_size], )
70
-
71
- @version.stream(page,
17
+ module REST
18
+ class Proxy < ProxyBase
19
+ class V1 < 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] unique_name An application-defined string that uniquely identifies the resource. This value must be 191 characters or fewer in length and be unique. **This value should not have PII.**
35
+ # @param [String] default_ttl The default `ttl` value to set for Sessions created in the Service. The TTL (time to live) is measured in seconds after the Session's last create or last Interaction. The default value of `0` indicates an unlimited Session length. You can override a Session's default TTL value by setting its `ttl` value.
36
+ # @param [String] callback_url The URL we should call when the interaction status changes.
37
+ # @param [GeoMatchLevel] geo_match_level
38
+ # @param [NumberSelectionBehavior] number_selection_behavior
39
+ # @param [String] intercept_callback_url The URL we call on each interaction. If we receive a 403 status, we block the interaction; otherwise the interaction continues.
40
+ # @param [String] out_of_session_callback_url The URL we should call when an inbound call or SMS action occurs on a closed or non-existent Session. If your server (or a Twilio [function](https://www.twilio.com/functions)) responds with valid [TwiML](https://www.twilio.com/docs/voice/twiml), we will process it. This means it is possible, for example, to play a message for a call, send an automated text message response, or redirect a call to another Phone Number. See [Out-of-Session Callback Response Guide](https://www.twilio.com/docs/proxy/out-session-callback-response-guide) for more information.
41
+ # @param [String] chat_instance_sid The SID of the Chat Service Instance managed by Proxy Service. The Chat Service enables Proxy to forward SMS and channel messages to this chat instance. This is a one-to-one relationship.
42
+ # @return [ServiceInstance] Created ServiceInstance
43
+ def create(
44
+ unique_name: nil,
45
+ default_ttl: :unset,
46
+ callback_url: :unset,
47
+ geo_match_level: :unset,
48
+ number_selection_behavior: :unset,
49
+ intercept_callback_url: :unset,
50
+ out_of_session_callback_url: :unset,
51
+ chat_instance_sid: :unset
52
+ )
53
+
54
+ data = Twilio::Values.of({
55
+ 'UniqueName' => unique_name,
56
+ 'DefaultTtl' => default_ttl,
57
+ 'CallbackUrl' => callback_url,
58
+ 'GeoMatchLevel' => geo_match_level,
59
+ 'NumberSelectionBehavior' => number_selection_behavior,
60
+ 'InterceptCallbackUrl' => intercept_callback_url,
61
+ 'OutOfSessionCallbackUrl' => out_of_session_callback_url,
62
+ 'ChatInstanceSid' => chat_instance_sid,
63
+ })
64
+
65
+ payload = @version.create('POST', @uri, data: data)
66
+ ServiceInstance.new(
67
+ @version,
68
+ payload,
69
+ )
70
+ end
71
+
72
+
73
+ ##
74
+ # Lists ServiceInstance records from the API as a list.
75
+ # Unlike stream(), this operation is eager and will load `limit` records into
76
+ # memory before returning.
77
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
78
+ # guarantees to never return more than limit. Default is no limit
79
+ # @param [Integer] page_size Number of records to fetch per request, when
80
+ # not set will use the default value of 50 records. If no page_size is defined
81
+ # but a limit is defined, stream() will attempt to read the limit with the most
82
+ # efficient page size, i.e. min(limit, 1000)
83
+ # @return [Array] Array of up to limit results
84
+ def list(limit: nil, page_size: nil)
85
+ self.stream(
86
+ limit: limit,
87
+ page_size: page_size
88
+ ).entries
89
+ end
90
+
91
+ ##
92
+ # Streams Instance records from the API as an Enumerable.
93
+ # This operation lazily loads records as efficiently as possible until the limit
94
+ # is reached.
95
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
96
+ # guarantees to never return more than limit. Default is no limit
97
+ # @param [Integer] page_size Number of records to fetch per request, when
98
+ # not set will use the default value of 50 records. If no page_size is defined
99
+ # but a limit is defined, stream() will attempt to read the limit with the most
100
+ # efficient page size, i.e. min(limit, 1000)
101
+ # @return [Enumerable] Enumerable that will yield up to limit results
102
+ def stream(limit: nil, page_size: nil)
103
+ limits = @version.read_limits(limit, page_size)
104
+
105
+ page = self.page(
106
+ page_size: limits[:page_size], )
107
+
108
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
109
+ end
110
+
111
+ ##
112
+ # When passed a block, yields ServiceInstance records from the API.
113
+ # This operation lazily loads records as efficiently as possible until the limit
114
+ # is reached.
115
+ def each
116
+ limits = @version.read_limits
117
+
118
+ page = self.page(page_size: limits[:page_size], )
119
+
120
+ @version.stream(page,
72
121
  limit: limits[:limit],
73
122
  page_limit: limits[:page_limit]).each {|x| yield x}
74
- end
75
-
76
- ##
77
- # Retrieve a single page of ServiceInstance records from the API.
78
- # Request is executed immediately.
79
- # @param [String] page_token PageToken provided by the API
80
- # @param [Integer] page_number Page Number, this value is simply for client state
81
- # @param [Integer] page_size Number of records to return, defaults to 50
82
- # @return [Page] Page of ServiceInstance
83
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
84
- params = Twilio::Values.of({
85
- 'PageToken' => page_token,
86
- 'Page' => page_number,
87
- 'PageSize' => page_size,
88
- })
89
-
90
- response = @version.page('GET', @uri, params: params)
91
-
92
- ServicePage.new(@version, response, @solution)
93
- end
94
-
95
- ##
96
- # Retrieve a single page of ServiceInstance records from the API.
97
- # Request is executed immediately.
98
- # @param [String] target_url API-generated URL for the requested results page
99
- # @return [Page] Page of ServiceInstance
100
- def get_page(target_url)
101
- response = @version.domain.request(
102
- 'GET',
103
- target_url
104
- )
105
- ServicePage.new(@version, response, @solution)
106
- end
107
-
108
- ##
109
- # Create the ServiceInstance
110
- # @param [String] unique_name An application-defined string that uniquely
111
- # identifies the resource. This value must be 191 characters or fewer in length
112
- # and be unique. **This value should not have PII.**
113
- # @param [String] default_ttl The default `ttl` value to set for Sessions created
114
- # in the Service. The TTL (time to live) is measured in seconds after the
115
- # Session's last create or last Interaction. The default value of `0` indicates an
116
- # unlimited Session length. You can override a Session's default TTL value by
117
- # setting its `ttl` value.
118
- # @param [String] callback_url The URL we should call when the interaction status
119
- # changes.
120
- # @param [service.GeoMatchLevel] geo_match_level Where a proxy number must be
121
- # located relative to the participant identifier. Can be: `country`, `area-code`,
122
- # or `extended-area-code`. The default value is `country` and more specific areas
123
- # than `country` are only available in North America.
124
- # @param [service.NumberSelectionBehavior] number_selection_behavior The
125
- # preference for Proxy Number selection in the Service instance. Can be:
126
- # `prefer-sticky` or `avoid-sticky` and the default is `prefer-sticky`.
127
- # `prefer-sticky` means that we will try and select the same Proxy Number for a
128
- # given participant if they have previous
129
- # {Sessions}[https://www.twilio.com/docs/proxy/api/session], but we will not fail
130
- # if that Proxy Number cannot be used. `avoid-sticky` means that we will try to
131
- # use different Proxy Numbers as long as that is possible within a given pool
132
- # rather than try and use a previously assigned number.
133
- # @param [String] intercept_callback_url The URL we call on each interaction. If
134
- # we receive a 403 status, we block the interaction; otherwise the interaction
135
- # continues.
136
- # @param [String] out_of_session_callback_url The URL we should call when an
137
- # inbound call or SMS action occurs on a closed or non-existent Session. If your
138
- # server (or a Twilio {function}[https://www.twilio.com/functions]) responds with
139
- # valid {TwiML}[https://www.twilio.com/docs/voice/twiml], we will process it. This
140
- # means it is possible, for example, to play a message for a call, send an
141
- # automated text message response, or redirect a call to another Phone Number. See
142
- # {Out-of-Session Callback Response
143
- # Guide}[https://www.twilio.com/docs/proxy/out-session-callback-response-guide]
144
- # for more information.
145
- # @param [String] chat_instance_sid The SID of the Chat Service Instance managed
146
- # by Proxy Service. The Chat Service enables Proxy to forward SMS and channel
147
- # messages to this chat instance. This is a one-to-one relationship.
148
- # @return [ServiceInstance] Created ServiceInstance
149
- def create(unique_name: nil, default_ttl: :unset, callback_url: :unset, geo_match_level: :unset, number_selection_behavior: :unset, intercept_callback_url: :unset, out_of_session_callback_url: :unset, chat_instance_sid: :unset)
150
- data = Twilio::Values.of({
151
- 'UniqueName' => unique_name,
152
- 'DefaultTtl' => default_ttl,
153
- 'CallbackUrl' => callback_url,
154
- 'GeoMatchLevel' => geo_match_level,
155
- 'NumberSelectionBehavior' => number_selection_behavior,
156
- 'InterceptCallbackUrl' => intercept_callback_url,
157
- 'OutOfSessionCallbackUrl' => out_of_session_callback_url,
158
- 'ChatInstanceSid' => chat_instance_sid,
159
- })
160
-
161
- payload = @version.create('POST', @uri, data: data)
162
-
163
- ServiceInstance.new(@version, payload, )
164
- end
165
-
166
- ##
167
- # Provide a user friendly representation
168
- def to_s
169
- '#<Twilio.Proxy.V1.ServiceList>'
170
- end
171
- end
172
-
173
- ##
174
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
175
- class ServicePage < Page
176
- ##
177
- # Initialize the ServicePage
178
- # @param [Version] version Version that contains the resource
179
- # @param [Response] response Response from the API
180
- # @param [Hash] solution Path solution for the resource
181
- # @return [ServicePage] ServicePage
182
- def initialize(version, response, solution)
183
- super(version, response)
184
-
185
- # Path Solution
186
- @solution = solution
187
- end
188
-
189
- ##
190
- # Build an instance of ServiceInstance
191
- # @param [Hash] payload Payload response from the API
192
- # @return [ServiceInstance] ServiceInstance
193
- def get_instance(payload)
194
- ServiceInstance.new(@version, payload, )
195
- end
196
-
197
- ##
198
- # Provide a user friendly representation
199
- def to_s
200
- '<Twilio.Proxy.V1.ServicePage>'
201
- end
202
- end
203
-
204
- ##
205
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
206
- class ServiceContext < InstanceContext
207
- ##
208
- # Initialize the ServiceContext
209
- # @param [Version] version Version that contains the resource
210
- # @param [String] sid The Twilio-provided string that uniquely identifies the
211
- # Service resource to fetch.
212
- # @return [ServiceContext] ServiceContext
213
- def initialize(version, sid)
214
- super(version)
215
-
216
- # Path Solution
217
- @solution = {sid: sid, }
218
- @uri = "/Services/#{@solution[:sid]}"
219
-
220
- # Dependents
221
- @sessions = nil
222
- @phone_numbers = nil
223
- @short_codes = nil
224
- end
225
-
226
- ##
227
- # Fetch the ServiceInstance
228
- # @return [ServiceInstance] Fetched ServiceInstance
229
- def fetch
230
- payload = @version.fetch('GET', @uri)
231
-
232
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
233
- end
234
-
235
- ##
236
- # Delete the ServiceInstance
237
- # @return [Boolean] true if delete succeeds, false otherwise
238
- def delete
239
- @version.delete('DELETE', @uri)
240
- end
241
-
242
- ##
243
- # Update the ServiceInstance
244
- # @param [String] unique_name An application-defined string that uniquely
245
- # identifies the resource. This value must be 191 characters or fewer in length
246
- # and be unique. **This value should not have PII.**
247
- # @param [String] default_ttl The default `ttl` value to set for Sessions created
248
- # in the Service. The TTL (time to live) is measured in seconds after the
249
- # Session's last create or last Interaction. The default value of `0` indicates an
250
- # unlimited Session length. You can override a Session's default TTL value by
251
- # setting its `ttl` value.
252
- # @param [String] callback_url The URL we should call when the interaction status
253
- # changes.
254
- # @param [service.GeoMatchLevel] geo_match_level Where a proxy number must be
255
- # located relative to the participant identifier. Can be: `country`, `area-code`,
256
- # or `extended-area-code`. The default value is `country` and more specific areas
257
- # than `country` are only available in North America.
258
- # @param [service.NumberSelectionBehavior] number_selection_behavior The
259
- # preference for Proxy Number selection in the Service instance. Can be:
260
- # `prefer-sticky` or `avoid-sticky` and the default is `prefer-sticky`.
261
- # `prefer-sticky` means that we will try and select the same Proxy Number for a
262
- # given participant if they have previous
263
- # {Sessions}[https://www.twilio.com/docs/proxy/api/session], but we will not fail
264
- # if that Proxy Number cannot be used. `avoid-sticky` means that we will try to
265
- # use different Proxy Numbers as long as that is possible within a given pool
266
- # rather than try and use a previously assigned number.
267
- # @param [String] intercept_callback_url The URL we call on each interaction. If
268
- # we receive a 403 status, we block the interaction; otherwise the interaction
269
- # continues.
270
- # @param [String] out_of_session_callback_url The URL we should call when an
271
- # inbound call or SMS action occurs on a closed or non-existent Session. If your
272
- # server (or a Twilio {function}[https://www.twilio.com/functions]) responds with
273
- # valid {TwiML}[https://www.twilio.com/docs/voice/twiml], we will process it. This
274
- # means it is possible, for example, to play a message for a call, send an
275
- # automated text message response, or redirect a call to another Phone Number. See
276
- # {Out-of-Session Callback Response
277
- # Guide}[https://www.twilio.com/docs/proxy/out-session-callback-response-guide]
278
- # for more information.
279
- # @param [String] chat_instance_sid The SID of the Chat Service Instance managed
280
- # by Proxy Service. The Chat Service enables Proxy to forward SMS and channel
281
- # messages to this chat instance. This is a one-to-one relationship.
282
- # @return [ServiceInstance] Updated ServiceInstance
283
- def update(unique_name: :unset, default_ttl: :unset, callback_url: :unset, geo_match_level: :unset, number_selection_behavior: :unset, intercept_callback_url: :unset, out_of_session_callback_url: :unset, chat_instance_sid: :unset)
284
- data = Twilio::Values.of({
285
- 'UniqueName' => unique_name,
286
- 'DefaultTtl' => default_ttl,
287
- 'CallbackUrl' => callback_url,
288
- 'GeoMatchLevel' => geo_match_level,
289
- 'NumberSelectionBehavior' => number_selection_behavior,
290
- 'InterceptCallbackUrl' => intercept_callback_url,
291
- 'OutOfSessionCallbackUrl' => out_of_session_callback_url,
292
- 'ChatInstanceSid' => chat_instance_sid,
293
- })
294
-
295
- payload = @version.update('POST', @uri, data: data)
296
-
297
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
298
- end
299
-
300
- ##
301
- # Access the sessions
302
- # @return [SessionList]
303
- # @return [SessionContext] if sid was passed.
304
- def sessions(sid=:unset)
305
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
306
-
307
- if sid != :unset
308
- return SessionContext.new(@version, @solution[:sid], sid, )
309
- end
310
-
311
- unless @sessions
312
- @sessions = SessionList.new(@version, service_sid: @solution[:sid], )
313
- end
314
-
315
- @sessions
316
- end
317
-
318
- ##
319
- # Access the phone_numbers
320
- # @return [PhoneNumberList]
321
- # @return [PhoneNumberContext] if sid was passed.
322
- def phone_numbers(sid=:unset)
323
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
324
-
325
- if sid != :unset
326
- return PhoneNumberContext.new(@version, @solution[:sid], sid, )
327
- end
328
-
329
- unless @phone_numbers
330
- @phone_numbers = PhoneNumberList.new(@version, service_sid: @solution[:sid], )
331
- end
332
-
333
- @phone_numbers
334
- end
335
-
336
- ##
337
- # Access the short_codes
338
- # @return [ShortCodeList]
339
- # @return [ShortCodeContext] if sid was passed.
340
- def short_codes(sid=:unset)
341
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
342
-
343
- if sid != :unset
344
- return ShortCodeContext.new(@version, @solution[:sid], sid, )
345
- end
346
-
347
- unless @short_codes
348
- @short_codes = ShortCodeList.new(@version, service_sid: @solution[:sid], )
349
- end
350
-
351
- @short_codes
352
- end
353
-
354
- ##
355
- # Provide a user friendly representation
356
- def to_s
357
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
358
- "#<Twilio.Proxy.V1.ServiceContext #{context}>"
359
- end
360
-
361
- ##
362
- # Provide a detailed, user friendly representation
363
- def inspect
364
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
365
- "#<Twilio.Proxy.V1.ServiceContext #{context}>"
366
- end
367
- end
123
+ end
124
+
125
+ ##
126
+ # Retrieve a single page of ServiceInstance records from the API.
127
+ # Request is executed immediately.
128
+ # @param [String] page_token PageToken provided by the API
129
+ # @param [Integer] page_number Page Number, this value is simply for client state
130
+ # @param [Integer] page_size Number of records to return, defaults to 50
131
+ # @return [Page] Page of ServiceInstance
132
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
133
+ params = Twilio::Values.of({
134
+
135
+ 'PageToken' => page_token,
136
+ 'Page' => page_number,
137
+ 'PageSize' => page_size,
138
+ })
139
+
140
+ response = @version.page('GET', @uri, params: params)
141
+
142
+ ServicePage.new(@version, response, @solution)
143
+ end
144
+
145
+ ##
146
+ # Retrieve a single page of ServiceInstance records from the API.
147
+ # Request is executed immediately.
148
+ # @param [String] target_url API-generated URL for the requested results page
149
+ # @return [Page] Page of ServiceInstance
150
+ def get_page(target_url)
151
+ response = @version.domain.request(
152
+ 'GET',
153
+ target_url
154
+ )
155
+ ServicePage.new(@version, response, @solution)
156
+ end
157
+
158
+
159
+
160
+ # Provide a user friendly representation
161
+ def to_s
162
+ '#<Twilio.Proxy.V1.ServiceList>'
163
+ end
164
+ end
165
+
166
+
167
+ ##
168
+ #PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
169
+ class ServiceContext < InstanceContext
170
+ ##
171
+ # Initialize the ServiceContext
172
+ # @param [Version] version Version that contains the resource
173
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Service resource to update.
174
+ # @return [ServiceContext] ServiceContext
175
+ def initialize(version, sid)
176
+ super(version)
177
+
178
+ # Path Solution
179
+ @solution = { sid: sid, }
180
+ @uri = "/Services/#{@solution[:sid]}"
181
+
182
+ # Dependents
183
+ @sessions = nil
184
+ @short_codes = nil
185
+ @phone_numbers = nil
186
+ end
187
+ ##
188
+ # Delete the ServiceInstance
189
+ # @return [Boolean] True if delete succeeds, false otherwise
190
+ def delete
191
+
192
+ @version.delete('DELETE', @uri)
193
+ end
194
+
195
+ ##
196
+ # Fetch the ServiceInstance
197
+ # @return [ServiceInstance] Fetched ServiceInstance
198
+ def fetch
199
+
200
+ payload = @version.fetch('GET', @uri)
201
+ ServiceInstance.new(
202
+ @version,
203
+ payload,
204
+ sid: @solution[:sid],
205
+ )
206
+ end
207
+
208
+ ##
209
+ # Update the ServiceInstance
210
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. This value must be 191 characters or fewer in length and be unique. **This value should not have PII.**
211
+ # @param [String] default_ttl The default `ttl` value to set for Sessions created in the Service. The TTL (time to live) is measured in seconds after the Session's last create or last Interaction. The default value of `0` indicates an unlimited Session length. You can override a Session's default TTL value by setting its `ttl` value.
212
+ # @param [String] callback_url The URL we should call when the interaction status changes.
213
+ # @param [GeoMatchLevel] geo_match_level
214
+ # @param [NumberSelectionBehavior] number_selection_behavior
215
+ # @param [String] intercept_callback_url The URL we call on each interaction. If we receive a 403 status, we block the interaction; otherwise the interaction continues.
216
+ # @param [String] out_of_session_callback_url The URL we should call when an inbound call or SMS action occurs on a closed or non-existent Session. If your server (or a Twilio [function](https://www.twilio.com/functions)) responds with valid [TwiML](https://www.twilio.com/docs/voice/twiml), we will process it. This means it is possible, for example, to play a message for a call, send an automated text message response, or redirect a call to another Phone Number. See [Out-of-Session Callback Response Guide](https://www.twilio.com/docs/proxy/out-session-callback-response-guide) for more information.
217
+ # @param [String] chat_instance_sid The SID of the Chat Service Instance managed by Proxy Service. The Chat Service enables Proxy to forward SMS and channel messages to this chat instance. This is a one-to-one relationship.
218
+ # @return [ServiceInstance] Updated ServiceInstance
219
+ def update(
220
+ unique_name: :unset,
221
+ default_ttl: :unset,
222
+ callback_url: :unset,
223
+ geo_match_level: :unset,
224
+ number_selection_behavior: :unset,
225
+ intercept_callback_url: :unset,
226
+ out_of_session_callback_url: :unset,
227
+ chat_instance_sid: :unset
228
+ )
229
+
230
+ data = Twilio::Values.of({
231
+ 'UniqueName' => unique_name,
232
+ 'DefaultTtl' => default_ttl,
233
+ 'CallbackUrl' => callback_url,
234
+ 'GeoMatchLevel' => geo_match_level,
235
+ 'NumberSelectionBehavior' => number_selection_behavior,
236
+ 'InterceptCallbackUrl' => intercept_callback_url,
237
+ 'OutOfSessionCallbackUrl' => out_of_session_callback_url,
238
+ 'ChatInstanceSid' => chat_instance_sid,
239
+ })
240
+
241
+ payload = @version.update('POST', @uri, data: data)
242
+ ServiceInstance.new(
243
+ @version,
244
+ payload,
245
+ sid: @solution[:sid],
246
+ )
247
+ end
248
+
249
+ ##
250
+ # Access the sessions
251
+ # @return [SessionList]
252
+ # @return [SessionContext] if sid was passed.
253
+ def sessions(sid=:unset)
254
+
255
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
256
+
257
+ if sid != :unset
258
+ return SessionContext.new(@version, @solution[:sid],sid )
259
+ end
260
+
261
+ unless @sessions
262
+ @sessions = SessionList.new(
263
+ @version, service_sid: @solution[:sid], )
264
+ end
265
+
266
+ @sessions
267
+ end
268
+ ##
269
+ # Access the short_codes
270
+ # @return [ShortCodeList]
271
+ # @return [ShortCodeContext] if sid was passed.
272
+ def short_codes(sid=:unset)
273
+
274
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
275
+
276
+ if sid != :unset
277
+ return ShortCodeContext.new(@version, @solution[:sid],sid )
278
+ end
279
+
280
+ unless @short_codes
281
+ @short_codes = ShortCodeList.new(
282
+ @version, service_sid: @solution[:sid], )
283
+ end
284
+
285
+ @short_codes
286
+ end
287
+ ##
288
+ # Access the phone_numbers
289
+ # @return [PhoneNumberList]
290
+ # @return [PhoneNumberContext] if sid was passed.
291
+ def phone_numbers(sid=:unset)
292
+
293
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
294
+
295
+ if sid != :unset
296
+ return PhoneNumberContext.new(@version, @solution[:sid],sid )
297
+ end
298
+
299
+ unless @phone_numbers
300
+ @phone_numbers = PhoneNumberList.new(
301
+ @version, service_sid: @solution[:sid], )
302
+ end
303
+
304
+ @phone_numbers
305
+ end
306
+
307
+ ##
308
+ # Provide a user friendly representation
309
+ def to_s
310
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
311
+ "#<Twilio.Proxy.V1.ServiceContext #{context}>"
312
+ end
313
+
314
+ ##
315
+ # Provide a detailed, user friendly representation
316
+ def inspect
317
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
318
+ "#<Twilio.Proxy.V1.ServiceContext #{context}>"
319
+ end
320
+ end
321
+
322
+ class ServicePage < Page
323
+ ##
324
+ # Initialize the ServicePage
325
+ # @param [Version] version Version that contains the resource
326
+ # @param [Response] response Response from the API
327
+ # @param [Hash] solution Path solution for the resource
328
+ # @return [ServicePage] ServicePage
329
+ def initialize(version, response, solution)
330
+ super(version, response)
331
+
332
+ # Path Solution
333
+ @solution = solution
334
+ end
335
+
336
+ ##
337
+ # Build an instance of ServiceInstance
338
+ # @param [Hash] payload Payload response from the API
339
+ # @return [ServiceInstance] ServiceInstance
340
+ def get_instance(payload)
341
+ ServiceInstance.new(@version, payload)
342
+ end
343
+
344
+ ##
345
+ # Provide a user friendly representation
346
+ def to_s
347
+ '<Twilio.Proxy.V1.ServicePage>'
348
+ end
349
+ end
350
+ class ServiceInstance < InstanceResource
351
+ ##
352
+ # Initialize the ServiceInstance
353
+ # @param [Version] version Version that contains the resource
354
+ # @param [Hash] payload payload that contains response from Twilio
355
+ # @param [String] account_sid The SID of the
356
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Service
357
+ # resource.
358
+ # @param [String] sid The SID of the Call resource to fetch.
359
+ # @return [ServiceInstance] ServiceInstance
360
+ def initialize(version, payload , sid: nil)
361
+ super(version)
362
+
363
+ # Marshaled Properties
364
+ @properties = {
365
+ 'sid' => payload['sid'],
366
+ 'unique_name' => payload['unique_name'],
367
+ 'account_sid' => payload['account_sid'],
368
+ 'chat_instance_sid' => payload['chat_instance_sid'],
369
+ 'callback_url' => payload['callback_url'],
370
+ 'default_ttl' => payload['default_ttl'] == nil ? payload['default_ttl'] : payload['default_ttl'].to_i,
371
+ 'number_selection_behavior' => payload['number_selection_behavior'],
372
+ 'geo_match_level' => payload['geo_match_level'],
373
+ 'intercept_callback_url' => payload['intercept_callback_url'],
374
+ 'out_of_session_callback_url' => payload['out_of_session_callback_url'],
375
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
376
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
377
+ 'url' => payload['url'],
378
+ 'links' => payload['links'],
379
+ }
380
+
381
+ # Context
382
+ @instance_context = nil
383
+ @params = { 'sid' => sid || @properties['sid'] , }
384
+ end
385
+
386
+ ##
387
+ # Generate an instance context for the instance, the context is capable of
388
+ # performing various actions. All instance actions are proxied to the context
389
+ # @return [ServiceContext] CallContext for this CallInstance
390
+ def context
391
+ unless @instance_context
392
+ @instance_context = ServiceContext.new(@version , @params['sid'])
393
+ end
394
+ @instance_context
395
+ end
396
+
397
+ ##
398
+ # @return [String] The unique string that we created to identify the Service resource.
399
+ def sid
400
+ @properties['sid']
401
+ end
402
+
403
+ ##
404
+ # @return [String] An application-defined string that uniquely identifies the resource. This value must be 191 characters or fewer in length and be unique. Supports UTF-8 characters. **This value should not have PII.**
405
+ def unique_name
406
+ @properties['unique_name']
407
+ end
408
+
409
+ ##
410
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Service resource.
411
+ def account_sid
412
+ @properties['account_sid']
413
+ end
414
+
415
+ ##
416
+ # @return [String] The SID of the Chat Service Instance managed by Proxy Service. The Chat Service enables Proxy to forward SMS and channel messages to this chat instance. This is a one-to-one relationship.
417
+ def chat_instance_sid
418
+ @properties['chat_instance_sid']
419
+ end
420
+
421
+ ##
422
+ # @return [String] The URL we call when the interaction status changes.
423
+ def callback_url
424
+ @properties['callback_url']
425
+ end
426
+
427
+ ##
428
+ # @return [String] The default `ttl` value for Sessions created in the Service. The TTL (time to live) is measured in seconds after the Session's last create or last Interaction. The default value of `0` indicates an unlimited Session length. You can override a Session's default TTL value by setting its `ttl` value.
429
+ def default_ttl
430
+ @properties['default_ttl']
431
+ end
432
+
433
+ ##
434
+ # @return [NumberSelectionBehavior]
435
+ def number_selection_behavior
436
+ @properties['number_selection_behavior']
437
+ end
438
+
439
+ ##
440
+ # @return [GeoMatchLevel]
441
+ def geo_match_level
442
+ @properties['geo_match_level']
443
+ end
444
+
445
+ ##
446
+ # @return [String] The URL we call on each interaction. If we receive a 403 status, we block the interaction; otherwise the interaction continues.
447
+ def intercept_callback_url
448
+ @properties['intercept_callback_url']
449
+ end
450
+
451
+ ##
452
+ # @return [String] The URL we call when an inbound call or SMS action occurs on a closed or non-existent Session. If your server (or a Twilio [function](https://www.twilio.com/functions)) responds with valid [TwiML](https://www.twilio.com/docs/voice/twiml), we will process it. This means it is possible, for example, to play a message for a call, send an automated text message response, or redirect a call to another Phone Number. See [Out-of-Session Callback Response Guide](https://www.twilio.com/docs/proxy/out-session-callback-response-guide) for more information.
453
+ def out_of_session_callback_url
454
+ @properties['out_of_session_callback_url']
455
+ end
456
+
457
+ ##
458
+ # @return [Time] The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time in GMT when the resource was created.
459
+ def date_created
460
+ @properties['date_created']
461
+ end
462
+
463
+ ##
464
+ # @return [Time] The [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time in GMT when the resource was last updated.
465
+ def date_updated
466
+ @properties['date_updated']
467
+ end
468
+
469
+ ##
470
+ # @return [String] The absolute URL of the Service resource.
471
+ def url
472
+ @properties['url']
473
+ end
474
+
475
+ ##
476
+ # @return [Hash] The URLs of resources related to the Service.
477
+ def links
478
+ @properties['links']
479
+ end
480
+
481
+ ##
482
+ # Delete the ServiceInstance
483
+ # @return [Boolean] True if delete succeeds, false otherwise
484
+ def delete
485
+
486
+ context.delete
487
+ end
488
+
489
+ ##
490
+ # Fetch the ServiceInstance
491
+ # @return [ServiceInstance] Fetched ServiceInstance
492
+ def fetch
493
+
494
+ context.fetch
495
+ end
496
+
497
+ ##
498
+ # Update the ServiceInstance
499
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. This value must be 191 characters or fewer in length and be unique. **This value should not have PII.**
500
+ # @param [String] default_ttl The default `ttl` value to set for Sessions created in the Service. The TTL (time to live) is measured in seconds after the Session's last create or last Interaction. The default value of `0` indicates an unlimited Session length. You can override a Session's default TTL value by setting its `ttl` value.
501
+ # @param [String] callback_url The URL we should call when the interaction status changes.
502
+ # @param [GeoMatchLevel] geo_match_level
503
+ # @param [NumberSelectionBehavior] number_selection_behavior
504
+ # @param [String] intercept_callback_url The URL we call on each interaction. If we receive a 403 status, we block the interaction; otherwise the interaction continues.
505
+ # @param [String] out_of_session_callback_url The URL we should call when an inbound call or SMS action occurs on a closed or non-existent Session. If your server (or a Twilio [function](https://www.twilio.com/functions)) responds with valid [TwiML](https://www.twilio.com/docs/voice/twiml), we will process it. This means it is possible, for example, to play a message for a call, send an automated text message response, or redirect a call to another Phone Number. See [Out-of-Session Callback Response Guide](https://www.twilio.com/docs/proxy/out-session-callback-response-guide) for more information.
506
+ # @param [String] chat_instance_sid The SID of the Chat Service Instance managed by Proxy Service. The Chat Service enables Proxy to forward SMS and channel messages to this chat instance. This is a one-to-one relationship.
507
+ # @return [ServiceInstance] Updated ServiceInstance
508
+ def update(
509
+ unique_name: :unset,
510
+ default_ttl: :unset,
511
+ callback_url: :unset,
512
+ geo_match_level: :unset,
513
+ number_selection_behavior: :unset,
514
+ intercept_callback_url: :unset,
515
+ out_of_session_callback_url: :unset,
516
+ chat_instance_sid: :unset
517
+ )
518
+
519
+ context.update(
520
+ unique_name: unique_name,
521
+ default_ttl: default_ttl,
522
+ callback_url: callback_url,
523
+ geo_match_level: geo_match_level,
524
+ number_selection_behavior: number_selection_behavior,
525
+ intercept_callback_url: intercept_callback_url,
526
+ out_of_session_callback_url: out_of_session_callback_url,
527
+ chat_instance_sid: chat_instance_sid,
528
+ )
529
+ end
530
+
531
+ ##
532
+ # Access the sessions
533
+ # @return [sessions] sessions
534
+ def sessions
535
+ context.sessions
536
+ end
537
+
538
+ ##
539
+ # Access the short_codes
540
+ # @return [short_codes] short_codes
541
+ def short_codes
542
+ context.short_codes
543
+ end
544
+
545
+ ##
546
+ # Access the phone_numbers
547
+ # @return [phone_numbers] phone_numbers
548
+ def phone_numbers
549
+ context.phone_numbers
550
+ end
551
+
552
+ ##
553
+ # Provide a user friendly representation
554
+ def to_s
555
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
556
+ "<Twilio.Proxy.V1.ServiceInstance #{values}>"
557
+ end
558
+
559
+ ##
560
+ # Provide a detailed, user friendly representation
561
+ def inspect
562
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
563
+ "<Twilio.Proxy.V1.ServiceInstance #{values}>"
564
+ end
565
+ end
368
566
 
369
- ##
370
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
371
- class ServiceInstance < InstanceResource
372
- ##
373
- # Initialize the ServiceInstance
374
- # @param [Version] version Version that contains the resource
375
- # @param [Hash] payload payload that contains response from Twilio
376
- # @param [String] sid The Twilio-provided string that uniquely identifies the
377
- # Service resource to fetch.
378
- # @return [ServiceInstance] ServiceInstance
379
- def initialize(version, payload, sid: nil)
380
- super(version)
381
-
382
- # Marshaled Properties
383
- @properties = {
384
- 'sid' => payload['sid'],
385
- 'unique_name' => payload['unique_name'],
386
- 'account_sid' => payload['account_sid'],
387
- 'chat_instance_sid' => payload['chat_instance_sid'],
388
- 'callback_url' => payload['callback_url'],
389
- 'default_ttl' => payload['default_ttl'].to_i,
390
- 'number_selection_behavior' => payload['number_selection_behavior'],
391
- 'geo_match_level' => payload['geo_match_level'],
392
- 'intercept_callback_url' => payload['intercept_callback_url'],
393
- 'out_of_session_callback_url' => payload['out_of_session_callback_url'],
394
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
395
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
396
- 'url' => payload['url'],
397
- 'links' => payload['links'],
398
- }
399
-
400
- # Context
401
- @instance_context = nil
402
- @params = {'sid' => sid || @properties['sid'], }
403
- end
404
-
405
- ##
406
- # Generate an instance context for the instance, the context is capable of
407
- # performing various actions. All instance actions are proxied to the context
408
- # @return [ServiceContext] ServiceContext for this ServiceInstance
409
- def context
410
- unless @instance_context
411
- @instance_context = ServiceContext.new(@version, @params['sid'], )
412
567
  end
413
- @instance_context
414
- end
415
-
416
- ##
417
- # @return [String] The unique string that identifies the resource
418
- def sid
419
- @properties['sid']
420
- end
421
-
422
- ##
423
- # @return [String] An application-defined string that uniquely identifies the resource
424
- def unique_name
425
- @properties['unique_name']
426
- end
427
-
428
- ##
429
- # @return [String] The SID of the Account that created the resource
430
- def account_sid
431
- @properties['account_sid']
432
- end
433
-
434
- ##
435
- # @return [String] The SID of the Chat Service Instance
436
- def chat_instance_sid
437
- @properties['chat_instance_sid']
438
- end
439
-
440
- ##
441
- # @return [String] The URL we call when the interaction status changes
442
- def callback_url
443
- @properties['callback_url']
444
- end
445
-
446
- ##
447
- # @return [String] Default TTL for a Session, in seconds
448
- def default_ttl
449
- @properties['default_ttl']
450
- end
451
-
452
- ##
453
- # @return [service.NumberSelectionBehavior] The preference for Proxy Number selection for the Service instance
454
- def number_selection_behavior
455
- @properties['number_selection_behavior']
456
- end
457
-
458
- ##
459
- # @return [service.GeoMatchLevel] Where a proxy number must be located relative to the participant identifier
460
- def geo_match_level
461
- @properties['geo_match_level']
462
- end
463
-
464
- ##
465
- # @return [String] The URL we call on each interaction
466
- def intercept_callback_url
467
- @properties['intercept_callback_url']
468
- end
469
-
470
- ##
471
- # @return [String] The URL we call when an inbound call or SMS action occurs on a closed or non-existent Session
472
- def out_of_session_callback_url
473
- @properties['out_of_session_callback_url']
474
- end
475
-
476
- ##
477
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
478
- def date_created
479
- @properties['date_created']
480
- end
481
-
482
- ##
483
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
484
- def date_updated
485
- @properties['date_updated']
486
- end
487
-
488
- ##
489
- # @return [String] The absolute URL of the Service resource
490
- def url
491
- @properties['url']
492
- end
493
-
494
- ##
495
- # @return [String] The URLs of resources related to the Service
496
- def links
497
- @properties['links']
498
- end
499
-
500
- ##
501
- # Fetch the ServiceInstance
502
- # @return [ServiceInstance] Fetched ServiceInstance
503
- def fetch
504
- context.fetch
505
- end
506
-
507
- ##
508
- # Delete the ServiceInstance
509
- # @return [Boolean] true if delete succeeds, false otherwise
510
- def delete
511
- context.delete
512
- end
513
-
514
- ##
515
- # Update the ServiceInstance
516
- # @param [String] unique_name An application-defined string that uniquely
517
- # identifies the resource. This value must be 191 characters or fewer in length
518
- # and be unique. **This value should not have PII.**
519
- # @param [String] default_ttl The default `ttl` value to set for Sessions created
520
- # in the Service. The TTL (time to live) is measured in seconds after the
521
- # Session's last create or last Interaction. The default value of `0` indicates an
522
- # unlimited Session length. You can override a Session's default TTL value by
523
- # setting its `ttl` value.
524
- # @param [String] callback_url The URL we should call when the interaction status
525
- # changes.
526
- # @param [service.GeoMatchLevel] geo_match_level Where a proxy number must be
527
- # located relative to the participant identifier. Can be: `country`, `area-code`,
528
- # or `extended-area-code`. The default value is `country` and more specific areas
529
- # than `country` are only available in North America.
530
- # @param [service.NumberSelectionBehavior] number_selection_behavior The
531
- # preference for Proxy Number selection in the Service instance. Can be:
532
- # `prefer-sticky` or `avoid-sticky` and the default is `prefer-sticky`.
533
- # `prefer-sticky` means that we will try and select the same Proxy Number for a
534
- # given participant if they have previous
535
- # {Sessions}[https://www.twilio.com/docs/proxy/api/session], but we will not fail
536
- # if that Proxy Number cannot be used. `avoid-sticky` means that we will try to
537
- # use different Proxy Numbers as long as that is possible within a given pool
538
- # rather than try and use a previously assigned number.
539
- # @param [String] intercept_callback_url The URL we call on each interaction. If
540
- # we receive a 403 status, we block the interaction; otherwise the interaction
541
- # continues.
542
- # @param [String] out_of_session_callback_url The URL we should call when an
543
- # inbound call or SMS action occurs on a closed or non-existent Session. If your
544
- # server (or a Twilio {function}[https://www.twilio.com/functions]) responds with
545
- # valid {TwiML}[https://www.twilio.com/docs/voice/twiml], we will process it. This
546
- # means it is possible, for example, to play a message for a call, send an
547
- # automated text message response, or redirect a call to another Phone Number. See
548
- # {Out-of-Session Callback Response
549
- # Guide}[https://www.twilio.com/docs/proxy/out-session-callback-response-guide]
550
- # for more information.
551
- # @param [String] chat_instance_sid The SID of the Chat Service Instance managed
552
- # by Proxy Service. The Chat Service enables Proxy to forward SMS and channel
553
- # messages to this chat instance. This is a one-to-one relationship.
554
- # @return [ServiceInstance] Updated ServiceInstance
555
- def update(unique_name: :unset, default_ttl: :unset, callback_url: :unset, geo_match_level: :unset, number_selection_behavior: :unset, intercept_callback_url: :unset, out_of_session_callback_url: :unset, chat_instance_sid: :unset)
556
- context.update(
557
- unique_name: unique_name,
558
- default_ttl: default_ttl,
559
- callback_url: callback_url,
560
- geo_match_level: geo_match_level,
561
- number_selection_behavior: number_selection_behavior,
562
- intercept_callback_url: intercept_callback_url,
563
- out_of_session_callback_url: out_of_session_callback_url,
564
- chat_instance_sid: chat_instance_sid,
565
- )
566
- end
567
-
568
- ##
569
- # Access the sessions
570
- # @return [sessions] sessions
571
- def sessions
572
- context.sessions
573
- end
574
-
575
- ##
576
- # Access the phone_numbers
577
- # @return [phone_numbers] phone_numbers
578
- def phone_numbers
579
- context.phone_numbers
580
- end
581
-
582
- ##
583
- # Access the short_codes
584
- # @return [short_codes] short_codes
585
- def short_codes
586
- context.short_codes
587
- end
588
-
589
- ##
590
- # Provide a user friendly representation
591
- def to_s
592
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
593
- "<Twilio.Proxy.V1.ServiceInstance #{values}>"
594
- end
595
-
596
- ##
597
- # Provide a detailed, user friendly representation
598
- def inspect
599
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
600
- "<Twilio.Proxy.V1.ServiceInstance #{values}>"
601
- end
602
568
  end
603
- end
604
569
  end
605
- end
606
- end
570
+ end