twilio-ruby 5.74.0 → 7.10.1

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 (796) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/test-and-deploy.yml +20 -2
  5. data/.gitignore +4 -0
  6. data/.rubocop.yml +1 -0
  7. data/CHANGES.md +1367 -0
  8. data/CONTRIBUTING.md +11 -9
  9. data/Dockerfile +2 -1
  10. data/Gemfile +5 -0
  11. data/LICENSE +1 -1
  12. data/Makefile +6 -0
  13. data/README.md +138 -40
  14. data/UPGRADE.md +21 -0
  15. data/advanced-examples/custom-http-client.md +170 -0
  16. data/cluster/cluster_oauth_spec.rb +19 -0
  17. data/cluster/cluster_orgs_spec.rb +40 -0
  18. data/cluster/cluster_spec.rb +75 -0
  19. data/examples/public_oauth.rb +13 -0
  20. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  21. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  22. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  23. data/lib/twilio-ruby/base/client_base.rb +131 -0
  24. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  25. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  26. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  27. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  28. data/lib/twilio-ruby/framework/request.rb +8 -1
  29. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  30. data/lib/twilio-ruby/framework/rest/domain.rb +0 -1
  31. data/lib/twilio-ruby/framework/rest/error.rb +27 -12
  32. data/lib/twilio-ruby/framework/rest/page.rb +1 -0
  33. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  34. data/lib/twilio-ruby/framework/rest/resource.rb +16 -0
  35. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  36. data/lib/twilio-ruby/framework/rest/version.rb +91 -4
  37. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  38. data/lib/twilio-ruby/http/http_client.rb +22 -5
  39. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  40. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  41. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  42. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  43. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  44. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  45. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  46. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  47. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  48. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  50. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  51. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  52. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  54. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -530
  55. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  56. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  57. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  66. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  67. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  68. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  69. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  70. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1658 -663
  71. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1658 -663
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +260 -151
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +409 -240
  75. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -1050
  76. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -756
  77. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  78. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  79. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  80. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  81. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  82. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -554
  83. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -553
  84. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -553
  85. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -903
  86. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  87. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  88. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  89. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -641
  90. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  91. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  92. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  93. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  94. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  95. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  96. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  98. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  99. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  100. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -513
  101. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  102. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  103. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  104. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  105. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +579 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  108. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  112. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  117. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  118. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  119. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  120. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  121. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  122. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  123. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  124. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  130. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  131. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  132. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  133. data/lib/twilio-ruby/rest/api.rb +25 -34
  134. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  135. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  136. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  137. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  138. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  139. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  140. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  147. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  148. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  149. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  150. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -279
  151. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -279
  152. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -248
  153. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -235
  154. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -216
  155. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  156. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  157. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  158. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  159. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  160. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  161. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  162. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  163. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  164. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  165. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  166. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  167. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  168. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  169. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  170. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  171. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  172. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  173. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  174. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  175. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  176. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  177. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -419
  178. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  179. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  180. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  181. data/lib/twilio-ruby/rest/chat/v3/channel.rb +444 -267
  182. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  183. data/lib/twilio-ruby/rest/chat.rb +4 -48
  184. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  185. data/lib/twilio-ruby/rest/client.rb +338 -584
  186. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  187. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +327 -173
  188. data/lib/twilio-ruby/rest/content/v1/content.rb +1909 -334
  189. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  190. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  191. data/lib/twilio-ruby/rest/content/v1.rb +54 -38
  192. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  193. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  194. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  195. data/lib/twilio-ruby/rest/content.rb +2 -34
  196. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +798 -444
  198. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  199. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  200. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  201. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -495
  202. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  203. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  204. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -552
  205. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  206. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  207. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +397 -304
  208. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  209. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  210. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -312
  211. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +459 -258
  212. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -279
  213. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  214. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -533
  215. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  216. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  217. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -588
  218. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  219. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +403 -317
  220. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  221. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +686 -455
  222. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -474
  223. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -447
  224. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +683 -435
  225. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -441
  226. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -136
  227. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  228. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  229. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -288
  230. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +468 -0
  231. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  232. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  233. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  234. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -408
  235. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +638 -339
  236. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -387
  237. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  238. data/lib/twilio-ruby/rest/events.rb +5 -34
  239. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +687 -146
  241. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  242. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -496
  243. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  244. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -570
  245. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  248. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  249. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +370 -227
  256. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +560 -319
  257. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +637 -398
  259. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +529 -225
  260. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  270. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -113
  271. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  272. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +258 -125
  273. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  274. data/lib/twilio-ruby/rest/flex_api.rb +9 -47
  275. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  276. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +453 -248
  277. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  278. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  279. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  280. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  281. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  282. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  283. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  284. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  285. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  286. data/lib/twilio-ruby/rest/iam.rb +6 -0
  287. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  288. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +509 -315
  289. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  290. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  291. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  292. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -236
  293. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +718 -433
  294. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +665 -467
  295. data/lib/twilio-ruby/rest/insights/v1/conference.rb +683 -502
  296. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  297. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -489
  298. data/lib/twilio-ruby/rest/insights/v1/setting.rb +435 -205
  299. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  300. data/lib/twilio-ruby/rest/insights.rb +6 -34
  301. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  302. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  303. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  304. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  305. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  306. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  307. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  316. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  317. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  318. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  319. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  320. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  321. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  322. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  323. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  327. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  328. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  329. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  330. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  331. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  332. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  333. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  340. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  341. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  342. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  343. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  344. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  345. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  346. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  347. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  348. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  349. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  350. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  351. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  352. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  353. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +570 -328
  354. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  355. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  356. data/lib/twilio-ruby/rest/lookups/v2.rb +128 -38
  357. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  358. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  359. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  360. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  361. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  362. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  363. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  364. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  368. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  369. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  371. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +568 -346
  372. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +758 -443
  373. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  374. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  375. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +469 -259
  376. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +263 -142
  379. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  383. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  386. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  387. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +937 -521
  388. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +222 -115
  389. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -763
  390. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1517 -549
  391. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +209 -103
  392. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -124
  393. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  394. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  395. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  396. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  397. data/lib/twilio-ruby/rest/messaging.rb +10 -35
  398. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  400. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  401. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  402. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  403. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  405. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  406. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  407. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  408. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  409. data/lib/twilio-ruby/rest/notify.rb +3 -34
  410. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  411. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  412. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  413. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  414. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  415. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  416. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  421. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  422. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  423. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  424. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  425. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  426. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  427. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +405 -261
  429. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  430. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  431. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +294 -179
  432. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -607
  433. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -371
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  439. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  440. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  441. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  442. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  443. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  444. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  445. data/lib/twilio-ruby/rest/oauth/v1/token.rb +293 -149
  446. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  447. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  448. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  449. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  450. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  451. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  452. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  453. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  454. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  455. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  456. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  457. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  458. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  459. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  460. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  461. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  462. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  463. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  464. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  465. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  466. data/lib/twilio-ruby/rest/preview.rb +10 -87
  467. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  468. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  469. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  470. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  471. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  472. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  473. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  474. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  475. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  476. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  477. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  478. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  479. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  480. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  481. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  482. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  483. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  484. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  485. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  486. data/lib/twilio-ruby/rest/pricing/v2/country.rb +457 -270
  487. data/lib/twilio-ruby/rest/pricing/v2/number.rb +379 -215
  488. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  490. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  491. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  492. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  493. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  494. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  495. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  496. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  497. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -440
  498. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -506
  499. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  500. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  501. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  502. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  503. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +444 -227
  504. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +444 -223
  505. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +444 -227
  506. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  507. data/lib/twilio-ruby/rest/routes.rb +4 -34
  508. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  510. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  511. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  512. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -384
  513. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  514. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  515. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  516. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  517. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  518. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  519. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  520. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -493
  521. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  522. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  523. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  524. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  525. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  526. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  527. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  528. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  529. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  530. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  531. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  532. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  533. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  534. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -442
  538. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -320
  539. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  540. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -472
  541. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -109
  542. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  543. data/lib/twilio-ruby/rest/studio.rb +3 -41
  544. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  545. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +611 -362
  546. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -483
  547. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +624 -406
  548. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  549. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  550. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  551. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +339 -237
  552. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +311 -204
  553. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +275 -174
  554. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -453
  555. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +576 -361
  556. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +410 -344
  557. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  558. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  559. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  560. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -371
  561. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -423
  562. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -490
  563. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -370
  564. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -445
  565. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -495
  566. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -368
  567. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -444
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -132
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -400
  570. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -567
  571. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  572. data/lib/twilio-ruby/rest/sync.rb +2 -34
  573. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  574. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -395
  575. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  576. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -749
  577. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -661
  578. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  579. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -370
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -572
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -732
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -637
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -376
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -356
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -730
  600. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  601. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  602. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  603. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  604. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  605. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  606. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  607. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  608. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -630
  609. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  610. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  611. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  612. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  613. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  614. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  615. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +595 -352
  616. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +574 -323
  617. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +540 -321
  618. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +823 -513
  619. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +659 -346
  620. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +450 -261
  621. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +443 -252
  622. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +673 -359
  623. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +450 -261
  624. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +595 -352
  625. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +574 -323
  626. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +540 -321
  627. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +823 -513
  628. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  629. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  630. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  631. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  632. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +423 -205
  633. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +463 -254
  634. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  635. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +275 -172
  636. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +768 -530
  637. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  638. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +386 -271
  639. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -414
  640. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  641. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  643. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  644. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  645. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  646. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -366
  647. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +320 -187
  648. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -412
  649. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -780
  650. data/lib/twilio-ruby/rest/verify/v2/template.rb +310 -203
  651. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +556 -387
  652. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +400 -224
  653. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  654. data/lib/twilio-ruby/rest/verify.rb +7 -34
  655. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  656. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -507
  657. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -647
  658. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  659. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -426
  660. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  661. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  662. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  663. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  664. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  665. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  666. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  667. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  669. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -602
  670. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  671. data/lib/twilio-ruby/rest/video.rb +7 -34
  672. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  673. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +292 -174
  674. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  675. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  676. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  677. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  678. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  679. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  680. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  681. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  682. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  683. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  684. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  685. data/lib/twilio-ruby/rest/voice.rb +7 -34
  686. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  687. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  688. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  689. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  690. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  691. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -647
  692. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  693. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  694. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  695. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  696. data/lib/twilio-ruby/rest.rb +1 -0
  697. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  698. data/lib/twilio-ruby/twiml/voice_response.rb +481 -26
  699. data/lib/twilio-ruby/version.rb +1 -1
  700. data/sonar-project.properties +1 -1
  701. data/twilio-ruby.gemspec +3 -2
  702. metadata +238 -105
  703. data/conf/cacert.pem +0 -3376
  704. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  705. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  706. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  707. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  708. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  709. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  710. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  711. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  712. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  713. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  714. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  715. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  716. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +0 -348
  717. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  718. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  719. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  720. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  721. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  722. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  723. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  724. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  725. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  726. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  727. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  728. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  729. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  730. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  731. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  732. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  733. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  734. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  735. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  736. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  737. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  738. data/lib/twilio-ruby/rest/flex_api/v1/good_data.rb +0 -190
  739. data/lib/twilio-ruby/rest/flex_api/v1/user_roles.rb +0 -166
  740. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  741. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  742. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  743. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  744. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  745. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  746. data/lib/twilio-ruby/rest/media.rb +0 -65
  747. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  748. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  749. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +0 -305
  750. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +0 -339
  751. data/lib/twilio-ruby/rest/microvisor/v1.rb +0 -60
  752. data/lib/twilio-ruby/rest/microvisor.rb +0 -54
  753. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  754. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  755. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  756. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  757. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  758. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  759. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  760. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  761. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  762. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  763. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  764. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -406
  765. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  766. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  767. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  768. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  769. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  771. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  772. data/lib/twilio-ruby/rest/preview/sync.rb +0 -44
  773. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  774. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  775. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  776. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  777. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  778. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  779. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  780. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  781. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  782. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  783. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  784. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  786. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  787. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  788. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  789. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  790. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  791. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  792. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  793. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  794. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  795. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  796. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,577 +1,888 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Sync
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.
6
13
  #
7
- # frozen_string_literal: true
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Sync < Domain
12
- class V1 < Version
13
- class ServiceList < ListResource
14
- ##
15
- # Initialize the ServiceList
16
- # @param [Version] version Version that contains the resource
17
- # @return [ServiceList] ServiceList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Services"
24
- end
25
-
26
- ##
27
- # Create the ServiceInstance
28
- # @param [String] friendly_name A string that you assign to describe the resource.
29
- # @param [String] webhook_url The URL we should call when Sync objects are
30
- # manipulated.
31
- # @param [Boolean] reachability_webhooks_enabled Whether the service instance
32
- # should call `webhook_url` when client endpoints connect to Sync. The default is
33
- # `false`.
34
- # @param [Boolean] acl_enabled Whether token identities in the Service must be
35
- # granted access to Sync objects by using the
36
- # {Permissions}[https://www.twilio.com/docs/sync/api/sync-permissions] resource.
37
- # @param [Boolean] reachability_debouncing_enabled Whether every
38
- # `endpoint_disconnected` event should occur after a configurable delay. The
39
- # default is `false`, where the `endpoint_disconnected` event occurs immediately
40
- # after disconnection. When `true`, intervening reconnections can prevent the
41
- # `endpoint_disconnected` event.
42
- # @param [String] reachability_debouncing_window The reachability event delay in
43
- # milliseconds if `reachability_debouncing_enabled` = `true`. Must be between
44
- # 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after
45
- # the last running client disconnects, and a Sync identity is declared offline,
46
- # before the `webhook_url` is called if all endpoints remain offline. A
47
- # reconnection from the same identity by any endpoint during this interval
48
- # prevents the call to `webhook_url`.
49
- # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should
50
- # call `webhook_url` when the REST API is used to update Sync objects. The default
51
- # is `false`.
52
- # @return [ServiceInstance] Created ServiceInstance
53
- def create(friendly_name: :unset, webhook_url: :unset, reachability_webhooks_enabled: :unset, acl_enabled: :unset, reachability_debouncing_enabled: :unset, reachability_debouncing_window: :unset, webhooks_from_rest_enabled: :unset)
54
- data = Twilio::Values.of({
55
- 'FriendlyName' => friendly_name,
56
- 'WebhookUrl' => webhook_url,
57
- 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
58
- 'AclEnabled' => acl_enabled,
59
- 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
60
- 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
61
- 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
62
- })
63
-
64
- payload = @version.create('POST', @uri, data: data)
65
-
66
- ServiceInstance.new(@version, payload, )
67
- end
68
-
69
- ##
70
- # Lists ServiceInstance records from the API as a list.
71
- # Unlike stream(), this operation is eager and will load `limit` records into
72
- # memory before returning.
73
- # @param [Integer] limit Upper limit for the number of records to return. stream()
74
- # guarantees to never return more than limit. Default is no limit
75
- # @param [Integer] page_size Number of records to fetch per request, when
76
- # not set will use the default value of 50 records. If no page_size is defined
77
- # but a limit is defined, stream() will attempt to read the limit with the most
78
- # efficient page size, i.e. min(limit, 1000)
79
- # @return [Array] Array of up to limit results
80
- def list(limit: nil, page_size: nil)
81
- self.stream(limit: limit, page_size: page_size).entries
82
- end
83
-
84
- ##
85
- # Streams ServiceInstance records from the API as an Enumerable.
86
- # This operation lazily loads records as efficiently as possible until the limit
87
- # is reached.
88
- # @param [Integer] limit Upper limit for the number of records to return. stream()
89
- # guarantees to never return more than limit. Default is no limit.
90
- # @param [Integer] page_size Number of records to fetch per request, when
91
- # not set will use the default value of 50 records. If no page_size is defined
92
- # but a limit is defined, stream() will attempt to read the limit with the most
93
- # efficient page size, i.e. min(limit, 1000)
94
- # @return [Enumerable] Enumerable that will yield up to limit results
95
- def stream(limit: nil, page_size: nil)
96
- limits = @version.read_limits(limit, page_size)
97
-
98
- page = self.page(page_size: limits[:page_size], )
99
-
100
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
101
- end
102
-
103
- ##
104
- # When passed a block, yields ServiceInstance records from the API.
105
- # This operation lazily loads records as efficiently as possible until the limit
106
- # is reached.
107
- def each
108
- limits = @version.read_limits
109
-
110
- page = self.page(page_size: limits[:page_size], )
111
-
112
- @version.stream(page,
17
+ module REST
18
+ class Sync < SyncBase
19
+ class V1 < Version
20
+ class ServiceList < ListResource
21
+
22
+ ##
23
+ # Initialize the ServiceList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [ServiceList] ServiceList
26
+ def initialize(version)
27
+ super(version)
28
+
29
+ # Path Solution
30
+ @solution = { }
31
+ @uri = "/Services"
32
+
33
+ end
34
+ ##
35
+ # Create the ServiceInstance
36
+ # @param [String] friendly_name A string that you assign to describe the resource.
37
+ # @param [String] webhook_url The URL we should call when Sync objects are manipulated.
38
+ # @param [Boolean] reachability_webhooks_enabled Whether the service instance should call `webhook_url` when client endpoints connect to Sync. The default is `false`.
39
+ # @param [Boolean] acl_enabled Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource.
40
+ # @param [Boolean] reachability_debouncing_enabled Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
41
+ # @param [String] reachability_debouncing_window The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before the `webhook_url` is called if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the call to `webhook_url`.
42
+ # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
43
+ # @return [ServiceInstance] Created ServiceInstance
44
+ def create(
45
+ friendly_name: :unset,
46
+ webhook_url: :unset,
47
+ reachability_webhooks_enabled: :unset,
48
+ acl_enabled: :unset,
49
+ reachability_debouncing_enabled: :unset,
50
+ reachability_debouncing_window: :unset,
51
+ webhooks_from_rest_enabled: :unset
52
+ )
53
+
54
+ data = Twilio::Values.of({
55
+ 'FriendlyName' => friendly_name,
56
+ 'WebhookUrl' => webhook_url,
57
+ 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
58
+ 'AclEnabled' => acl_enabled,
59
+ 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
60
+ 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
61
+ 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
62
+ })
63
+
64
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
65
+
66
+
67
+
68
+
69
+
70
+ payload = @version.create('POST', @uri, data: data, headers: headers)
71
+ ServiceInstance.new(
72
+ @version,
73
+ payload,
74
+ )
75
+ end
76
+
77
+ ##
78
+ # Create the ServiceInstanceMetadata
79
+ # @param [String] friendly_name A string that you assign to describe the resource.
80
+ # @param [String] webhook_url The URL we should call when Sync objects are manipulated.
81
+ # @param [Boolean] reachability_webhooks_enabled Whether the service instance should call `webhook_url` when client endpoints connect to Sync. The default is `false`.
82
+ # @param [Boolean] acl_enabled Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource.
83
+ # @param [Boolean] reachability_debouncing_enabled Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
84
+ # @param [String] reachability_debouncing_window The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before the `webhook_url` is called if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the call to `webhook_url`.
85
+ # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
86
+ # @return [ServiceInstance] Created ServiceInstance
87
+ def create_with_metadata(
88
+ friendly_name: :unset,
89
+ webhook_url: :unset,
90
+ reachability_webhooks_enabled: :unset,
91
+ acl_enabled: :unset,
92
+ reachability_debouncing_enabled: :unset,
93
+ reachability_debouncing_window: :unset,
94
+ webhooks_from_rest_enabled: :unset
95
+ )
96
+
97
+ data = Twilio::Values.of({
98
+ 'FriendlyName' => friendly_name,
99
+ 'WebhookUrl' => webhook_url,
100
+ 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
101
+ 'AclEnabled' => acl_enabled,
102
+ 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
103
+ 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
104
+ 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
105
+ })
106
+
107
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
108
+
109
+
110
+
111
+
112
+
113
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
114
+ service_instance = ServiceInstance.new(
115
+ @version,
116
+ response.body,
117
+ )
118
+ ServiceInstanceMetadata.new(
119
+ @version,
120
+ service_instance,
121
+ response.headers,
122
+ response.status_code
123
+ )
124
+ end
125
+
126
+
127
+ ##
128
+ # Lists ServiceInstance records from the API as a list.
129
+ # Unlike stream(), this operation is eager and will load `limit` records into
130
+ # memory before returning.
131
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
132
+ # guarantees to never return more than limit. Default is no limit
133
+ # @param [Integer] page_size Number of records to fetch per request, when
134
+ # not set will use the default value of 50 records. If no page_size is defined
135
+ # but a limit is defined, stream() will attempt to read the limit with the most
136
+ # efficient page size, i.e. min(limit, 1000)
137
+ # @return [Array] Array of up to limit results
138
+ def list(limit: nil, page_size: nil)
139
+ self.stream(
140
+ limit: limit,
141
+ page_size: page_size
142
+ ).entries
143
+ end
144
+
145
+ ##
146
+ # Streams Instance records from the API as an Enumerable.
147
+ # This operation lazily loads records as efficiently as possible until the limit
148
+ # is reached.
149
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
150
+ # guarantees to never return more than limit. Default is no limit
151
+ # @param [Integer] page_size Number of records to fetch per request, when
152
+ # not set will use the default value of 50 records. If no page_size is defined
153
+ # but a limit is defined, stream() will attempt to read the limit with the most
154
+ # efficient page size, i.e. min(limit, 1000)
155
+ # @return [Enumerable] Enumerable that will yield up to limit results
156
+ def stream(limit: nil, page_size: nil)
157
+ limits = @version.read_limits(limit, page_size)
158
+
159
+ page = self.page(
160
+ page_size: limits[:page_size], )
161
+
162
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
163
+ end
164
+
165
+ ##
166
+ # Lists ServicePageMetadata records from the API as a list.
167
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
168
+ # guarantees to never return more than limit. Default is no limit
169
+ # @param [Integer] page_size Number of records to fetch per request, when
170
+ # not set will use the default value of 50 records. If no page_size is defined
171
+ # but a limit is defined, stream() will attempt to read the limit with the most
172
+ # efficient page size, i.e. min(limit, 1000)
173
+ # @return [Array] Array of up to limit results
174
+ def list_with_metadata(limit: nil, page_size: nil)
175
+ limits = @version.read_limits(limit, page_size)
176
+ params = Twilio::Values.of({
177
+
178
+ 'PageSize' => limits[:page_size],
179
+ });
180
+ headers = Twilio::Values.of({})
181
+
182
+ response = @version.page('GET', @uri, params: params, headers: headers)
183
+
184
+ ServicePageMetadata.new(@version, response, @solution, limits[:limit])
185
+ end
186
+
187
+ ##
188
+ # When passed a block, yields ServiceInstance records from the API.
189
+ # This operation lazily loads records as efficiently as possible until the limit
190
+ # is reached.
191
+ def each
192
+ limits = @version.read_limits
193
+
194
+ page = self.page(page_size: limits[:page_size], )
195
+
196
+ @version.stream(page,
113
197
  limit: limits[:limit],
114
198
  page_limit: limits[:page_limit]).each {|x| yield x}
115
- end
116
-
117
- ##
118
- # Retrieve a single page of ServiceInstance records from the API.
119
- # Request is executed immediately.
120
- # @param [String] page_token PageToken provided by the API
121
- # @param [Integer] page_number Page Number, this value is simply for client state
122
- # @param [Integer] page_size Number of records to return, defaults to 50
123
- # @return [Page] Page of ServiceInstance
124
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
125
- params = Twilio::Values.of({
126
- 'PageToken' => page_token,
127
- 'Page' => page_number,
128
- 'PageSize' => page_size,
129
- })
130
-
131
- response = @version.page('GET', @uri, params: params)
132
-
133
- ServicePage.new(@version, response, @solution)
134
- end
135
-
136
- ##
137
- # Retrieve a single page of ServiceInstance records from the API.
138
- # Request is executed immediately.
139
- # @param [String] target_url API-generated URL for the requested results page
140
- # @return [Page] Page of ServiceInstance
141
- def get_page(target_url)
142
- response = @version.domain.request(
143
- 'GET',
144
- target_url
145
- )
146
- ServicePage.new(@version, response, @solution)
147
- end
148
-
149
- ##
150
- # Provide a user friendly representation
151
- def to_s
152
- '#<Twilio.Sync.V1.ServiceList>'
153
- end
154
- end
155
-
156
- class ServicePage < Page
157
- ##
158
- # Initialize the ServicePage
159
- # @param [Version] version Version that contains the resource
160
- # @param [Response] response Response from the API
161
- # @param [Hash] solution Path solution for the resource
162
- # @return [ServicePage] ServicePage
163
- def initialize(version, response, solution)
164
- super(version, response)
165
-
166
- # Path Solution
167
- @solution = solution
168
- end
169
-
170
- ##
171
- # Build an instance of ServiceInstance
172
- # @param [Hash] payload Payload response from the API
173
- # @return [ServiceInstance] ServiceInstance
174
- def get_instance(payload)
175
- ServiceInstance.new(@version, payload, )
176
- end
177
-
178
- ##
179
- # Provide a user friendly representation
180
- def to_s
181
- '<Twilio.Sync.V1.ServicePage>'
182
- end
183
- end
184
-
185
- class ServiceContext < InstanceContext
186
- ##
187
- # Initialize the ServiceContext
188
- # @param [Version] version Version that contains the resource
189
- # @param [String] sid The SID of the Service resource to fetch.
190
- # @return [ServiceContext] ServiceContext
191
- def initialize(version, sid)
192
- super(version)
193
-
194
- # Path Solution
195
- @solution = {sid: sid, }
196
- @uri = "/Services/#{@solution[:sid]}"
197
-
198
- # Dependents
199
- @documents = nil
200
- @sync_lists = nil
201
- @sync_maps = nil
202
- @sync_streams = nil
203
- end
204
-
205
- ##
206
- # Fetch the ServiceInstance
207
- # @return [ServiceInstance] Fetched ServiceInstance
208
- def fetch
209
- payload = @version.fetch('GET', @uri)
210
-
211
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
212
- end
213
-
214
- ##
215
- # Delete the ServiceInstance
216
- # @return [Boolean] true if delete succeeds, false otherwise
217
- def delete
218
- @version.delete('DELETE', @uri)
219
- end
220
-
221
- ##
222
- # Update the ServiceInstance
223
- # @param [String] webhook_url The URL we should call when Sync objects are
224
- # manipulated.
225
- # @param [String] friendly_name A string that you assign to describe the resource.
226
- # @param [Boolean] reachability_webhooks_enabled Whether the service instance
227
- # should call `webhook_url` when client endpoints connect to Sync. The default is
228
- # `false`.
229
- # @param [Boolean] acl_enabled Whether token identities in the Service must be
230
- # granted access to Sync objects by using the
231
- # {Permissions}[https://www.twilio.com/docs/sync/api/sync-permissions] resource.
232
- # @param [Boolean] reachability_debouncing_enabled Whether every
233
- # `endpoint_disconnected` event should occur after a configurable delay. The
234
- # default is `false`, where the `endpoint_disconnected` event occurs immediately
235
- # after disconnection. When `true`, intervening reconnections can prevent the
236
- # `endpoint_disconnected` event.
237
- # @param [String] reachability_debouncing_window The reachability event delay in
238
- # milliseconds if `reachability_debouncing_enabled` = `true`. Must be between
239
- # 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after
240
- # the last running client disconnects, and a Sync identity is declared offline,
241
- # before the webhook is called if all endpoints remain offline. A reconnection
242
- # from the same identity by any endpoint during this interval prevents the webhook
243
- # from being called.
244
- # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should
245
- # call `webhook_url` when the REST API is used to update Sync objects. The default
246
- # is `false`.
247
- # @return [ServiceInstance] Updated ServiceInstance
248
- def update(webhook_url: :unset, friendly_name: :unset, reachability_webhooks_enabled: :unset, acl_enabled: :unset, reachability_debouncing_enabled: :unset, reachability_debouncing_window: :unset, webhooks_from_rest_enabled: :unset)
249
- data = Twilio::Values.of({
250
- 'WebhookUrl' => webhook_url,
251
- 'FriendlyName' => friendly_name,
252
- 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
253
- 'AclEnabled' => acl_enabled,
254
- 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
255
- 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
256
- 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
257
- })
258
-
259
- payload = @version.update('POST', @uri, data: data)
260
-
261
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
262
- end
263
-
264
- ##
265
- # Access the documents
266
- # @return [DocumentList]
267
- # @return [DocumentContext] if sid was passed.
268
- def documents(sid=:unset)
269
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
270
-
271
- if sid != :unset
272
- return DocumentContext.new(@version, @solution[:sid], sid, )
273
- end
274
-
275
- unless @documents
276
- @documents = DocumentList.new(@version, service_sid: @solution[:sid], )
277
- end
278
-
279
- @documents
280
- end
281
-
282
- ##
283
- # Access the sync_lists
284
- # @return [SyncListList]
285
- # @return [SyncListContext] if sid was passed.
286
- def sync_lists(sid=:unset)
287
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
288
-
289
- if sid != :unset
290
- return SyncListContext.new(@version, @solution[:sid], sid, )
291
- end
292
-
293
- unless @sync_lists
294
- @sync_lists = SyncListList.new(@version, service_sid: @solution[:sid], )
295
- end
296
-
297
- @sync_lists
298
- end
299
-
300
- ##
301
- # Access the sync_maps
302
- # @return [SyncMapList]
303
- # @return [SyncMapContext] if sid was passed.
304
- def sync_maps(sid=:unset)
305
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
306
-
307
- if sid != :unset
308
- return SyncMapContext.new(@version, @solution[:sid], sid, )
309
- end
310
-
311
- unless @sync_maps
312
- @sync_maps = SyncMapList.new(@version, service_sid: @solution[:sid], )
313
- end
314
-
315
- @sync_maps
316
- end
317
-
318
- ##
319
- # Access the sync_streams
320
- # @return [SyncStreamList]
321
- # @return [SyncStreamContext] if sid was passed.
322
- def sync_streams(sid=:unset)
323
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
324
-
325
- if sid != :unset
326
- return SyncStreamContext.new(@version, @solution[:sid], sid, )
327
- end
328
-
329
- unless @sync_streams
330
- @sync_streams = SyncStreamList.new(@version, service_sid: @solution[:sid], )
331
- end
332
-
333
- @sync_streams
334
- end
335
-
336
- ##
337
- # Provide a user friendly representation
338
- def to_s
339
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
340
- "#<Twilio.Sync.V1.ServiceContext #{context}>"
341
- end
342
-
343
- ##
344
- # Provide a detailed, user friendly representation
345
- def inspect
346
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
347
- "#<Twilio.Sync.V1.ServiceContext #{context}>"
348
- end
349
- end
199
+ end
200
+
201
+ ##
202
+ # Retrieve a single page of ServiceInstance records from the API.
203
+ # Request is executed immediately.
204
+ # @param [String] page_token PageToken provided by the API
205
+ # @param [Integer] page_number Page Number, this value is simply for client state
206
+ # @param [Integer] page_size Number of records to return, defaults to 50
207
+ # @return [Page] Page of ServiceInstance
208
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
209
+ params = Twilio::Values.of({
210
+ 'PageToken' => page_token,
211
+ 'Page' => page_number,
212
+ 'PageSize' => page_size,
213
+ })
214
+ headers = Twilio::Values.of({})
215
+
216
+
217
+
218
+ response = @version.page('GET', @uri, params: params, headers: headers)
219
+
220
+ ServicePage.new(@version, response, @solution)
221
+ end
222
+
223
+ ##
224
+ # Retrieve a single page of ServiceInstance records from the API.
225
+ # Request is executed immediately.
226
+ # @param [String] target_url API-generated URL for the requested results page
227
+ # @return [Page] Page of ServiceInstance
228
+ def get_page(target_url)
229
+ response = @version.domain.request(
230
+ 'GET',
231
+ target_url
232
+ )
233
+ ServicePage.new(@version, response, @solution)
234
+ end
235
+
236
+
237
+
238
+ # Provide a user friendly representation
239
+ def to_s
240
+ '#<Twilio.Sync.V1.ServiceList>'
241
+ end
242
+ end
243
+
244
+
245
+ class ServiceContext < InstanceContext
246
+ ##
247
+ # Initialize the ServiceContext
248
+ # @param [Version] version Version that contains the resource
249
+ # @param [String] sid The SID of the Service resource to update.
250
+ # @return [ServiceContext] ServiceContext
251
+ def initialize(version, sid)
252
+ super(version)
253
+
254
+
255
+ # Path Solution
256
+ @solution = { sid: sid, }
257
+ @uri = "/Services/#{@solution[:sid]}"
258
+
259
+ # Dependents
260
+ @sync_streams = nil
261
+ @sync_lists = nil
262
+ @sync_maps = nil
263
+ @documents = nil
264
+ end
265
+ ##
266
+ # Delete the ServiceInstance
267
+ # @return [Boolean] True if delete succeeds, false otherwise
268
+ def delete
269
+
270
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
271
+
272
+
273
+
274
+
275
+ @version.delete('DELETE', @uri, headers: headers)
276
+ end
277
+
278
+ ##
279
+ # Delete the ServiceInstanceMetadata
280
+ # @return [Boolean] True if delete succeeds, false otherwise
281
+ def delete_with_metadata
282
+
283
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
284
+
285
+
286
+
287
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
288
+ service_instance = ServiceInstance.new(
289
+ @version,
290
+ response.body,
291
+ account_sid: @solution[:account_sid],
292
+ sid: @solution[:sid],
293
+ )
294
+ ServiceInstanceMetadata.new(@version, service_instance, response.headers, response.status_code)
295
+ end
296
+
297
+ ##
298
+ # Fetch the ServiceInstance
299
+ # @return [ServiceInstance] Fetched ServiceInstance
300
+ def fetch
301
+
302
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
303
+
304
+
305
+
306
+
307
+
308
+ payload = @version.fetch('GET', @uri, headers: headers)
309
+ ServiceInstance.new(
310
+ @version,
311
+ payload,
312
+ sid: @solution[:sid],
313
+ )
314
+ end
315
+
316
+ ##
317
+ # Fetch the ServiceInstanceMetadata
318
+ # @return [ServiceInstance] Fetched ServiceInstance
319
+ def fetch_with_metadata
320
+
321
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
322
+
323
+
324
+
325
+
326
+
327
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
328
+ service_instance = ServiceInstance.new(
329
+ @version,
330
+ response.body,
331
+ sid: @solution[:sid],
332
+ )
333
+ ServiceInstanceMetadata.new(
334
+ @version,
335
+ service_instance,
336
+ response.headers,
337
+ response.status_code
338
+ )
339
+ end
340
+
341
+ ##
342
+ # Update the ServiceInstance
343
+ # @param [String] webhook_url The URL we should call when Sync objects are manipulated.
344
+ # @param [String] friendly_name A string that you assign to describe the resource.
345
+ # @param [Boolean] reachability_webhooks_enabled Whether the service instance should call `webhook_url` when client endpoints connect to Sync. The default is `false`.
346
+ # @param [Boolean] acl_enabled Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource.
347
+ # @param [Boolean] reachability_debouncing_enabled Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
348
+ # @param [String] reachability_debouncing_window The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before the webhook is called if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the webhook from being called.
349
+ # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
350
+ # @return [ServiceInstance] Updated ServiceInstance
351
+ def update(
352
+ webhook_url: :unset,
353
+ friendly_name: :unset,
354
+ reachability_webhooks_enabled: :unset,
355
+ acl_enabled: :unset,
356
+ reachability_debouncing_enabled: :unset,
357
+ reachability_debouncing_window: :unset,
358
+ webhooks_from_rest_enabled: :unset
359
+ )
360
+
361
+ data = Twilio::Values.of({
362
+ 'WebhookUrl' => webhook_url,
363
+ 'FriendlyName' => friendly_name,
364
+ 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
365
+ 'AclEnabled' => acl_enabled,
366
+ 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
367
+ 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
368
+ 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
369
+ })
370
+
371
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
372
+
373
+
374
+
375
+
376
+
377
+ payload = @version.update('POST', @uri, data: data, headers: headers)
378
+ ServiceInstance.new(
379
+ @version,
380
+ payload,
381
+ sid: @solution[:sid],
382
+ )
383
+ end
384
+
385
+ ##
386
+ # Update the ServiceInstanceMetadata
387
+ # @param [String] webhook_url The URL we should call when Sync objects are manipulated.
388
+ # @param [String] friendly_name A string that you assign to describe the resource.
389
+ # @param [Boolean] reachability_webhooks_enabled Whether the service instance should call `webhook_url` when client endpoints connect to Sync. The default is `false`.
390
+ # @param [Boolean] acl_enabled Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource.
391
+ # @param [Boolean] reachability_debouncing_enabled Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
392
+ # @param [String] reachability_debouncing_window The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before the webhook is called if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the webhook from being called.
393
+ # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
394
+ # @return [ServiceInstance] Updated ServiceInstance
395
+ def update_with_metadata(
396
+ webhook_url: :unset,
397
+ friendly_name: :unset,
398
+ reachability_webhooks_enabled: :unset,
399
+ acl_enabled: :unset,
400
+ reachability_debouncing_enabled: :unset,
401
+ reachability_debouncing_window: :unset,
402
+ webhooks_from_rest_enabled: :unset
403
+ )
404
+
405
+ data = Twilio::Values.of({
406
+ 'WebhookUrl' => webhook_url,
407
+ 'FriendlyName' => friendly_name,
408
+ 'ReachabilityWebhooksEnabled' => reachability_webhooks_enabled,
409
+ 'AclEnabled' => acl_enabled,
410
+ 'ReachabilityDebouncingEnabled' => reachability_debouncing_enabled,
411
+ 'ReachabilityDebouncingWindow' => reachability_debouncing_window,
412
+ 'WebhooksFromRestEnabled' => webhooks_from_rest_enabled,
413
+ })
414
+
415
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
416
+
417
+
418
+
419
+
420
+
421
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
422
+ service_instance = ServiceInstance.new(
423
+ @version,
424
+ response.body,
425
+ sid: @solution[:sid],
426
+ )
427
+ ServiceInstanceMetadata.new(
428
+ @version,
429
+ service_instance,
430
+ response.headers,
431
+ response.status_code
432
+ )
433
+ end
434
+
435
+ ##
436
+ # Access the sync_streams
437
+ # @return [SyncStreamList]
438
+ # @return [SyncStreamContext] if sid was passed.
439
+ def sync_streams(sid=:unset)
440
+
441
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
442
+
443
+ if sid != :unset
444
+ return SyncStreamContext.new(@version, @solution[:sid],sid )
445
+ end
446
+
447
+ unless @sync_streams
448
+ @sync_streams = SyncStreamList.new(
449
+ @version, service_sid: @solution[:sid], )
450
+ end
451
+
452
+ @sync_streams
453
+ end
454
+ ##
455
+ # Access the sync_lists
456
+ # @return [SyncListList]
457
+ # @return [SyncListContext] if sid was passed.
458
+ def sync_lists(sid=:unset)
459
+
460
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
461
+
462
+ if sid != :unset
463
+ return SyncListContext.new(@version, @solution[:sid],sid )
464
+ end
465
+
466
+ unless @sync_lists
467
+ @sync_lists = SyncListList.new(
468
+ @version, service_sid: @solution[:sid], )
469
+ end
470
+
471
+ @sync_lists
472
+ end
473
+ ##
474
+ # Access the sync_maps
475
+ # @return [SyncMapList]
476
+ # @return [SyncMapContext] if sid was passed.
477
+ def sync_maps(sid=:unset)
478
+
479
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
480
+
481
+ if sid != :unset
482
+ return SyncMapContext.new(@version, @solution[:sid],sid )
483
+ end
484
+
485
+ unless @sync_maps
486
+ @sync_maps = SyncMapList.new(
487
+ @version, service_sid: @solution[:sid], )
488
+ end
489
+
490
+ @sync_maps
491
+ end
492
+ ##
493
+ # Access the documents
494
+ # @return [DocumentList]
495
+ # @return [DocumentContext] if sid was passed.
496
+ def documents(sid=:unset)
497
+
498
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
499
+
500
+ if sid != :unset
501
+ return DocumentContext.new(@version, @solution[:sid],sid )
502
+ end
503
+
504
+ unless @documents
505
+ @documents = DocumentList.new(
506
+ @version, service_sid: @solution[:sid], )
507
+ end
508
+
509
+ @documents
510
+ end
511
+
512
+ ##
513
+ # Provide a user friendly representation
514
+ def to_s
515
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
516
+ "#<Twilio.Sync.V1.ServiceContext #{context}>"
517
+ end
518
+
519
+ ##
520
+ # Provide a detailed, user friendly representation
521
+ def inspect
522
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
523
+ "#<Twilio.Sync.V1.ServiceContext #{context}>"
524
+ end
525
+ end
526
+
527
+ class ServiceInstanceMetadata < InstanceResourceMetadata
528
+ ##
529
+ # Initializes a new ServiceInstanceMetadata.
530
+ # @param [Version] version Version that contains the resource
531
+ # @param [}ServiceInstance] service_instance The instance associated with the metadata.
532
+ # @param [Hash] headers Header object with response headers.
533
+ # @param [Integer] status_code The HTTP status code of the response.
534
+ # @return [ServiceInstanceMetadata] The initialized instance with metadata.
535
+ def initialize(version, service_instance, headers, status_code)
536
+ super(version, headers, status_code)
537
+ @service_instance = service_instance
538
+ end
539
+
540
+ def service
541
+ @service_instance
542
+ end
543
+
544
+ def headers
545
+ @headers
546
+ end
547
+
548
+ def status_code
549
+ @status_code
550
+ end
551
+
552
+ def to_s
553
+ "<Twilio.Api.V2010.ServiceInstanceMetadata status=#{@status_code}>"
554
+ end
555
+ end
556
+
557
+ class ServiceListResponse < InstanceListResource
558
+ # @param [Array<ServiceInstance>] instance
559
+ # @param [Hash{String => Object}] headers
560
+ # @param [Integer] status_code
561
+ def initialize(version, payload, key)
562
+ @service_instance = payload.body[key].map do |data|
563
+ ServiceInstance.new(version, data)
564
+ end
565
+ @headers = payload.headers
566
+ @status_code = payload.status_code
567
+ end
568
+
569
+ def service_instance
570
+ @instance
571
+ end
572
+ end
573
+
574
+ class ServicePage < Page
575
+ ##
576
+ # Initialize the ServicePage
577
+ # @param [Version] version Version that contains the resource
578
+ # @param [Response] response Response from the API
579
+ # @param [Hash] solution Path solution for the resource
580
+ # @return [ServicePage] ServicePage
581
+ def initialize(version, response, solution)
582
+ super(version, response)
583
+
584
+
585
+ # Path Solution
586
+ @solution = solution
587
+ end
588
+
589
+ ##
590
+ # Build an instance of ServiceInstance
591
+ # @param [Hash] payload Payload response from the API
592
+ # @return [ServiceInstance] ServiceInstance
593
+ def get_instance(payload)
594
+ ServiceInstance.new(@version, payload)
595
+ end
596
+
597
+ ##
598
+ # Provide a user friendly representation
599
+ def to_s
600
+ '<Twilio.Sync.V1.ServicePage>'
601
+ end
602
+ end
603
+
604
+ class ServicePageMetadata < PageMetadata
605
+ attr_reader :service_page
606
+
607
+ def initialize(version, response, solution, limit)
608
+ super(version, response)
609
+ @service_page = []
610
+ @limit = limit
611
+ key = get_key(response.body)
612
+ records = 0
613
+ while( limit != :unset && records < limit )
614
+ @service_page << ServiceListResponse.new(version, @payload, key, limit - records)
615
+ @payload = self.next_page
616
+ break unless @payload
617
+ records += @payload.body[key].size
618
+ end
619
+ # Path Solution
620
+ @solution = solution
621
+ end
622
+
623
+ def each
624
+ @service_page.each do |record|
625
+ yield record
626
+ end
627
+ end
628
+
629
+ def to_s
630
+ '<Twilio::REST::Sync::V1PageMetadata>';
631
+ end
632
+ end
633
+ class ServiceListResponse < InstanceListResource
634
+
635
+ # @param [Array<ServiceInstance>] instance
636
+ # @param [Hash{String => Object}] headers
637
+ # @param [Integer] status_code
638
+ def initialize(version, payload, key, limit = :unset)
639
+ data_list = payload.body[key]
640
+ if limit != :unset
641
+ data_list = data_list[0, limit]
642
+ end
643
+ @service = data_list.map do |data|
644
+ ServiceInstance.new(version, data)
645
+ end
646
+ @headers = payload.headers
647
+ @status_code = payload.status_code
648
+ end
649
+
650
+ def service
651
+ @service
652
+ end
653
+
654
+ def headers
655
+ @headers
656
+ end
657
+
658
+ def status_code
659
+ @status_code
660
+ end
661
+ end
662
+
663
+ class ServiceInstance < InstanceResource
664
+ ##
665
+ # Initialize the ServiceInstance
666
+ # @param [Version] version Version that contains the resource
667
+ # @param [Hash] payload payload that contains response from Twilio
668
+ # @param [String] account_sid The SID of the
669
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Service
670
+ # resource.
671
+ # @param [String] sid The SID of the Call resource to fetch.
672
+ # @return [ServiceInstance] ServiceInstance
673
+ def initialize(version, payload , sid: nil)
674
+ super(version)
675
+
676
+
677
+ # Marshaled Properties
678
+ @properties = {
679
+ 'sid' => payload['sid'],
680
+ 'unique_name' => payload['unique_name'],
681
+ 'account_sid' => payload['account_sid'],
682
+ 'friendly_name' => payload['friendly_name'],
683
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
684
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
685
+ 'url' => payload['url'],
686
+ 'webhook_url' => payload['webhook_url'],
687
+ 'webhooks_from_rest_enabled' => payload['webhooks_from_rest_enabled'],
688
+ 'reachability_webhooks_enabled' => payload['reachability_webhooks_enabled'],
689
+ 'acl_enabled' => payload['acl_enabled'],
690
+ 'reachability_debouncing_enabled' => payload['reachability_debouncing_enabled'],
691
+ 'reachability_debouncing_window' => payload['reachability_debouncing_window'] == nil ? payload['reachability_debouncing_window'] : payload['reachability_debouncing_window'].to_i,
692
+ 'links' => payload['links'],
693
+ }
694
+
695
+ # Context
696
+ @instance_context = nil
697
+ @params = { 'sid' => sid || @properties['sid'] , }
698
+ end
699
+
700
+ ##
701
+ # Generate an instance context for the instance, the context is capable of
702
+ # performing various actions. All instance actions are proxied to the context
703
+ # @return [ServiceContext] CallContext for this CallInstance
704
+ def context
705
+ unless @instance_context
706
+ @instance_context = ServiceContext.new(@version , @params['sid'])
707
+ end
708
+ @instance_context
709
+ end
710
+
711
+ ##
712
+ # @return [String] The unique string that we created to identify the Service resource.
713
+ def sid
714
+ @properties['sid']
715
+ end
716
+
717
+ ##
718
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used in place of the resource's `sid` in the URL to address the resource. It is a read-only property, it cannot be assigned using REST API.
719
+ def unique_name
720
+ @properties['unique_name']
721
+ end
722
+
723
+ ##
724
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Service resource.
725
+ def account_sid
726
+ @properties['account_sid']
727
+ end
728
+
729
+ ##
730
+ # @return [String] The string that you assigned to describe the resource.
731
+ def friendly_name
732
+ @properties['friendly_name']
733
+ end
734
+
735
+ ##
736
+ # @return [Time] The date and time in GMT when the resource was created specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
737
+ def date_created
738
+ @properties['date_created']
739
+ end
740
+
741
+ ##
742
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
743
+ def date_updated
744
+ @properties['date_updated']
745
+ end
746
+
747
+ ##
748
+ # @return [String] The absolute URL of the Service resource.
749
+ def url
750
+ @properties['url']
751
+ end
752
+
753
+ ##
754
+ # @return [String] The URL we call when Sync objects are manipulated.
755
+ def webhook_url
756
+ @properties['webhook_url']
757
+ end
758
+
759
+ ##
760
+ # @return [Boolean] Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
761
+ def webhooks_from_rest_enabled
762
+ @properties['webhooks_from_rest_enabled']
763
+ end
764
+
765
+ ##
766
+ # @return [Boolean] Whether the service instance calls `webhook_url` when client endpoints connect to Sync. The default is `false`.
767
+ def reachability_webhooks_enabled
768
+ @properties['reachability_webhooks_enabled']
769
+ end
770
+
771
+ ##
772
+ # @return [Boolean] Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource. It is disabled (false) by default.
773
+ def acl_enabled
774
+ @properties['acl_enabled']
775
+ end
776
+
777
+ ##
778
+ # @return [Boolean] Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
779
+ def reachability_debouncing_enabled
780
+ @properties['reachability_debouncing_enabled']
781
+ end
782
+
783
+ ##
784
+ # @return [String] The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before `webhook_url` is called, if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the reachability event from occurring.
785
+ def reachability_debouncing_window
786
+ @properties['reachability_debouncing_window']
787
+ end
788
+
789
+ ##
790
+ # @return [Hash] The URLs of related resources.
791
+ def links
792
+ @properties['links']
793
+ end
794
+
795
+ ##
796
+ # Delete the ServiceInstance
797
+ # @return [Boolean] True if delete succeeds, false otherwise
798
+ def delete
799
+
800
+ context.delete
801
+ end
802
+
803
+ ##
804
+ # Fetch the ServiceInstance
805
+ # @return [ServiceInstance] Fetched ServiceInstance
806
+ def fetch
807
+
808
+ context.fetch
809
+ end
810
+
811
+ ##
812
+ # Update the ServiceInstance
813
+ # @param [String] webhook_url The URL we should call when Sync objects are manipulated.
814
+ # @param [String] friendly_name A string that you assign to describe the resource.
815
+ # @param [Boolean] reachability_webhooks_enabled Whether the service instance should call `webhook_url` when client endpoints connect to Sync. The default is `false`.
816
+ # @param [Boolean] acl_enabled Whether token identities in the Service must be granted access to Sync objects by using the [Permissions](https://www.twilio.com/docs/sync/api/sync-permissions) resource.
817
+ # @param [Boolean] reachability_debouncing_enabled Whether every `endpoint_disconnected` event should occur after a configurable delay. The default is `false`, where the `endpoint_disconnected` event occurs immediately after disconnection. When `true`, intervening reconnections can prevent the `endpoint_disconnected` event.
818
+ # @param [String] reachability_debouncing_window The reachability event delay in milliseconds if `reachability_debouncing_enabled` = `true`. Must be between 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after the last running client disconnects, and a Sync identity is declared offline, before the webhook is called if all endpoints remain offline. A reconnection from the same identity by any endpoint during this interval prevents the webhook from being called.
819
+ # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should call `webhook_url` when the REST API is used to update Sync objects. The default is `false`.
820
+ # @return [ServiceInstance] Updated ServiceInstance
821
+ def update(
822
+ webhook_url: :unset,
823
+ friendly_name: :unset,
824
+ reachability_webhooks_enabled: :unset,
825
+ acl_enabled: :unset,
826
+ reachability_debouncing_enabled: :unset,
827
+ reachability_debouncing_window: :unset,
828
+ webhooks_from_rest_enabled: :unset
829
+ )
830
+
831
+ context.update(
832
+ webhook_url: webhook_url,
833
+ friendly_name: friendly_name,
834
+ reachability_webhooks_enabled: reachability_webhooks_enabled,
835
+ acl_enabled: acl_enabled,
836
+ reachability_debouncing_enabled: reachability_debouncing_enabled,
837
+ reachability_debouncing_window: reachability_debouncing_window,
838
+ webhooks_from_rest_enabled: webhooks_from_rest_enabled,
839
+ )
840
+ end
841
+
842
+ ##
843
+ # Access the sync_streams
844
+ # @return [sync_streams] sync_streams
845
+ def sync_streams
846
+ context.sync_streams
847
+ end
848
+
849
+ ##
850
+ # Access the sync_lists
851
+ # @return [sync_lists] sync_lists
852
+ def sync_lists
853
+ context.sync_lists
854
+ end
855
+
856
+ ##
857
+ # Access the sync_maps
858
+ # @return [sync_maps] sync_maps
859
+ def sync_maps
860
+ context.sync_maps
861
+ end
862
+
863
+ ##
864
+ # Access the documents
865
+ # @return [documents] documents
866
+ def documents
867
+ context.documents
868
+ end
869
+
870
+ ##
871
+ # Provide a user friendly representation
872
+ def to_s
873
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
874
+ "<Twilio.Sync.V1.ServiceInstance #{values}>"
875
+ end
876
+
877
+ ##
878
+ # Provide a detailed, user friendly representation
879
+ def inspect
880
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
881
+ "<Twilio.Sync.V1.ServiceInstance #{values}>"
882
+ end
883
+ end
350
884
 
351
- class ServiceInstance < InstanceResource
352
- ##
353
- # Initialize the ServiceInstance
354
- # @param [Version] version Version that contains the resource
355
- # @param [Hash] payload payload that contains response from Twilio
356
- # @param [String] sid The SID of the Service resource to fetch.
357
- # @return [ServiceInstance] ServiceInstance
358
- def initialize(version, payload, sid: nil)
359
- super(version)
360
-
361
- # Marshaled Properties
362
- @properties = {
363
- 'sid' => payload['sid'],
364
- 'unique_name' => payload['unique_name'],
365
- 'account_sid' => payload['account_sid'],
366
- 'friendly_name' => payload['friendly_name'],
367
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
368
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
369
- 'url' => payload['url'],
370
- 'webhook_url' => payload['webhook_url'],
371
- 'webhooks_from_rest_enabled' => payload['webhooks_from_rest_enabled'],
372
- 'reachability_webhooks_enabled' => payload['reachability_webhooks_enabled'],
373
- 'acl_enabled' => payload['acl_enabled'],
374
- 'reachability_debouncing_enabled' => payload['reachability_debouncing_enabled'],
375
- 'reachability_debouncing_window' => payload['reachability_debouncing_window'] == nil ? payload['reachability_debouncing_window'] : payload['reachability_debouncing_window'].to_i,
376
- 'links' => payload['links'],
377
- }
378
-
379
- # Context
380
- @instance_context = nil
381
- @params = {'sid' => sid || @properties['sid'], }
382
- end
383
-
384
- ##
385
- # Generate an instance context for the instance, the context is capable of
386
- # performing various actions. All instance actions are proxied to the context
387
- # @return [ServiceContext] ServiceContext for this ServiceInstance
388
- def context
389
- unless @instance_context
390
- @instance_context = ServiceContext.new(@version, @params['sid'], )
391
885
  end
392
- @instance_context
393
- end
394
-
395
- ##
396
- # @return [String] The unique string that identifies the resource
397
- def sid
398
- @properties['sid']
399
- end
400
-
401
- ##
402
- # @return [String] An application-defined string that uniquely identifies the resource
403
- def unique_name
404
- @properties['unique_name']
405
- end
406
-
407
- ##
408
- # @return [String] The SID of the Account that created the resource
409
- def account_sid
410
- @properties['account_sid']
411
- end
412
-
413
- ##
414
- # @return [String] The string that you assigned to describe the resource
415
- def friendly_name
416
- @properties['friendly_name']
417
- end
418
-
419
- ##
420
- # @return [Time] The ISO 8601 date and time in GMT when the resource was created
421
- def date_created
422
- @properties['date_created']
423
- end
424
-
425
- ##
426
- # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
427
- def date_updated
428
- @properties['date_updated']
429
- end
430
-
431
- ##
432
- # @return [String] The absolute URL of the Service resource
433
- def url
434
- @properties['url']
435
- end
436
-
437
- ##
438
- # @return [String] The URL we call when Sync objects are manipulated
439
- def webhook_url
440
- @properties['webhook_url']
441
- end
442
-
443
- ##
444
- # @return [Boolean] Whether the Service instance should call webhook_url when the REST API is used to update Sync objects
445
- def webhooks_from_rest_enabled
446
- @properties['webhooks_from_rest_enabled']
447
- end
448
-
449
- ##
450
- # @return [Boolean] Whether the service instance calls webhook_url when client endpoints connect to Sync
451
- def reachability_webhooks_enabled
452
- @properties['reachability_webhooks_enabled']
453
- end
454
-
455
- ##
456
- # @return [Boolean] Whether token identities in the Service must be granted access to Sync objects by using the Permissions resource
457
- def acl_enabled
458
- @properties['acl_enabled']
459
- end
460
-
461
- ##
462
- # @return [Boolean] Whether every endpoint_disconnected event occurs after a configurable delay
463
- def reachability_debouncing_enabled
464
- @properties['reachability_debouncing_enabled']
465
- end
466
-
467
- ##
468
- # @return [String] The reachability event delay in milliseconds
469
- def reachability_debouncing_window
470
- @properties['reachability_debouncing_window']
471
- end
472
-
473
- ##
474
- # @return [String] The URLs of related resources
475
- def links
476
- @properties['links']
477
- end
478
-
479
- ##
480
- # Fetch the ServiceInstance
481
- # @return [ServiceInstance] Fetched ServiceInstance
482
- def fetch
483
- context.fetch
484
- end
485
-
486
- ##
487
- # Delete the ServiceInstance
488
- # @return [Boolean] true if delete succeeds, false otherwise
489
- def delete
490
- context.delete
491
- end
492
-
493
- ##
494
- # Update the ServiceInstance
495
- # @param [String] webhook_url The URL we should call when Sync objects are
496
- # manipulated.
497
- # @param [String] friendly_name A string that you assign to describe the resource.
498
- # @param [Boolean] reachability_webhooks_enabled Whether the service instance
499
- # should call `webhook_url` when client endpoints connect to Sync. The default is
500
- # `false`.
501
- # @param [Boolean] acl_enabled Whether token identities in the Service must be
502
- # granted access to Sync objects by using the
503
- # {Permissions}[https://www.twilio.com/docs/sync/api/sync-permissions] resource.
504
- # @param [Boolean] reachability_debouncing_enabled Whether every
505
- # `endpoint_disconnected` event should occur after a configurable delay. The
506
- # default is `false`, where the `endpoint_disconnected` event occurs immediately
507
- # after disconnection. When `true`, intervening reconnections can prevent the
508
- # `endpoint_disconnected` event.
509
- # @param [String] reachability_debouncing_window The reachability event delay in
510
- # milliseconds if `reachability_debouncing_enabled` = `true`. Must be between
511
- # 1,000 and 30,000 and defaults to 5,000. This is the number of milliseconds after
512
- # the last running client disconnects, and a Sync identity is declared offline,
513
- # before the webhook is called if all endpoints remain offline. A reconnection
514
- # from the same identity by any endpoint during this interval prevents the webhook
515
- # from being called.
516
- # @param [Boolean] webhooks_from_rest_enabled Whether the Service instance should
517
- # call `webhook_url` when the REST API is used to update Sync objects. The default
518
- # is `false`.
519
- # @return [ServiceInstance] Updated ServiceInstance
520
- def update(webhook_url: :unset, friendly_name: :unset, reachability_webhooks_enabled: :unset, acl_enabled: :unset, reachability_debouncing_enabled: :unset, reachability_debouncing_window: :unset, webhooks_from_rest_enabled: :unset)
521
- context.update(
522
- webhook_url: webhook_url,
523
- friendly_name: friendly_name,
524
- reachability_webhooks_enabled: reachability_webhooks_enabled,
525
- acl_enabled: acl_enabled,
526
- reachability_debouncing_enabled: reachability_debouncing_enabled,
527
- reachability_debouncing_window: reachability_debouncing_window,
528
- webhooks_from_rest_enabled: webhooks_from_rest_enabled,
529
- )
530
- end
531
-
532
- ##
533
- # Access the documents
534
- # @return [documents] documents
535
- def documents
536
- context.documents
537
- end
538
-
539
- ##
540
- # Access the sync_lists
541
- # @return [sync_lists] sync_lists
542
- def sync_lists
543
- context.sync_lists
544
- end
545
-
546
- ##
547
- # Access the sync_maps
548
- # @return [sync_maps] sync_maps
549
- def sync_maps
550
- context.sync_maps
551
- end
552
-
553
- ##
554
- # Access the sync_streams
555
- # @return [sync_streams] sync_streams
556
- def sync_streams
557
- context.sync_streams
558
- end
559
-
560
- ##
561
- # Provide a user friendly representation
562
- def to_s
563
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
564
- "<Twilio.Sync.V1.ServiceInstance #{values}>"
565
- end
566
-
567
- ##
568
- # Provide a detailed, user friendly representation
569
- def inspect
570
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
571
- "<Twilio.Sync.V1.ServiceInstance #{values}>"
572
- end
573
886
  end
574
- end
575
887
  end
576
- end
577
- end
888
+ end