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,640 +1,949 @@
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 - Trunking
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 Trunking < Domain
12
- class V1 < Version
13
- class TrunkList < ListResource
14
- ##
15
- # Initialize the TrunkList
16
- # @param [Version] version Version that contains the resource
17
- # @return [TrunkList] TrunkList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Trunks"
24
- end
25
-
26
- ##
27
- # Create the TrunkInstance
28
- # @param [String] friendly_name A descriptive string that you create to describe
29
- # the resource. It can be up to 64 characters long.
30
- # @param [String] domain_name The unique address you reserve on Twilio to which
31
- # you route your SIP traffic. Domain names can contain letters, digits, and `-`
32
- # and must end with `pstn.twilio.com`. See {Termination
33
- # Settings}[https://www.twilio.com/docs/sip-trunking#termination] for more
34
- # information.
35
- # @param [String] disaster_recovery_url The URL we should call using the
36
- # `disaster_recovery_method` if an error occurs while sending SIP traffic towards
37
- # the configured Origination URL. We retrieve TwiML from the URL and execute the
38
- # instructions like any other normal TwiML call. See {Disaster
39
- # Recovery}[https://www.twilio.com/docs/sip-trunking#disaster-recovery] for more
40
- # information.
41
- # @param [String] disaster_recovery_method The HTTP method we should use to call
42
- # the `disaster_recovery_url`. Can be: `GET` or `POST`.
43
- # @param [trunk.TransferSetting] transfer_mode The call transfer settings for the
44
- # trunk. Can be: `enable-all`, `sip-only` and `disable-all`. See
45
- # {Transfer}[https://www.twilio.com/docs/sip-trunking/call-transfer] for more
46
- # information.
47
- # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If
48
- # enabled, all calls going through the trunk will be secure using SRTP for media
49
- # and TLS for signaling. If disabled, then RTP will be used for media. See {Secure
50
- # Trunking}[https://www.twilio.com/docs/sip-trunking#securetrunking] for more
51
- # information.
52
- # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should
53
- # be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from
54
- # the United States and Canada automatically perform a CNAM Lookup and display
55
- # Caller ID data on your phone. See {CNAM
56
- # Lookups}[https://www.twilio.com/docs/sip-trunking#CNAM] for more information.
57
- # @param [trunk.TransferCallerId] transfer_caller_id Caller Id for transfer
58
- # target. Can be: `from-transferee` (default) or `from-transferor`.
59
- # @return [TrunkInstance] Created TrunkInstance
60
- def create(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, transfer_mode: :unset, secure: :unset, cnam_lookup_enabled: :unset, transfer_caller_id: :unset)
61
- data = Twilio::Values.of({
62
- 'FriendlyName' => friendly_name,
63
- 'DomainName' => domain_name,
64
- 'DisasterRecoveryUrl' => disaster_recovery_url,
65
- 'DisasterRecoveryMethod' => disaster_recovery_method,
66
- 'TransferMode' => transfer_mode,
67
- 'Secure' => secure,
68
- 'CnamLookupEnabled' => cnam_lookup_enabled,
69
- 'TransferCallerId' => transfer_caller_id,
70
- })
71
-
72
- payload = @version.create('POST', @uri, data: data)
73
-
74
- TrunkInstance.new(@version, payload, )
75
- end
76
-
77
- ##
78
- # Lists TrunkInstance records from the API as a list.
79
- # Unlike stream(), this operation is eager and will load `limit` records into
80
- # memory before returning.
81
- # @param [Integer] limit Upper limit for the number of records to return. stream()
82
- # guarantees to never return more than limit. Default is no limit
83
- # @param [Integer] page_size Number of records to fetch per request, when
84
- # not set will use the default value of 50 records. If no page_size is defined
85
- # but a limit is defined, stream() will attempt to read the limit with the most
86
- # efficient page size, i.e. min(limit, 1000)
87
- # @return [Array] Array of up to limit results
88
- def list(limit: nil, page_size: nil)
89
- self.stream(limit: limit, page_size: page_size).entries
90
- end
91
-
92
- ##
93
- # Streams TrunkInstance records from the API as an Enumerable.
94
- # This operation lazily loads records as efficiently as possible until the limit
95
- # is reached.
96
- # @param [Integer] limit Upper limit for the number of records to return. stream()
97
- # guarantees to never return more than limit. Default is no limit.
98
- # @param [Integer] page_size Number of records to fetch per request, when
99
- # not set will use the default value of 50 records. If no page_size is defined
100
- # but a limit is defined, stream() will attempt to read the limit with the most
101
- # efficient page size, i.e. min(limit, 1000)
102
- # @return [Enumerable] Enumerable that will yield up to limit results
103
- def stream(limit: nil, page_size: nil)
104
- limits = @version.read_limits(limit, page_size)
105
-
106
- page = self.page(page_size: limits[:page_size], )
107
-
108
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
109
- end
110
-
111
- ##
112
- # When passed a block, yields TrunkInstance records from the API.
113
- # This operation lazily loads records as efficiently as possible until the limit
114
- # is reached.
115
- def each
116
- limits = @version.read_limits
117
-
118
- page = self.page(page_size: limits[:page_size], )
119
-
120
- @version.stream(page,
17
+ module REST
18
+ class Trunking < TrunkingBase
19
+ class V1 < Version
20
+ class TrunkList < ListResource
21
+
22
+ ##
23
+ # Initialize the TrunkList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [TrunkList] TrunkList
26
+ def initialize(version)
27
+ super(version)
28
+
29
+ # Path Solution
30
+ @solution = { }
31
+ @uri = "/Trunks"
32
+
33
+ end
34
+ ##
35
+ # Create the TrunkInstance
36
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
37
+ # @param [String] domain_name The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
38
+ # @param [String] disaster_recovery_url The URL we should call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
39
+ # @param [String] disaster_recovery_method The HTTP method we should use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
40
+ # @param [TransferSetting] transfer_mode
41
+ # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
42
+ # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
43
+ # @param [TransferCallerId] transfer_caller_id
44
+ # @return [TrunkInstance] Created TrunkInstance
45
+ def create(
46
+ friendly_name: :unset,
47
+ domain_name: :unset,
48
+ disaster_recovery_url: :unset,
49
+ disaster_recovery_method: :unset,
50
+ transfer_mode: :unset,
51
+ secure: :unset,
52
+ cnam_lookup_enabled: :unset,
53
+ transfer_caller_id: :unset
54
+ )
55
+
56
+ data = Twilio::Values.of({
57
+ 'FriendlyName' => friendly_name,
58
+ 'DomainName' => domain_name,
59
+ 'DisasterRecoveryUrl' => disaster_recovery_url,
60
+ 'DisasterRecoveryMethod' => disaster_recovery_method,
61
+ 'TransferMode' => transfer_mode,
62
+ 'Secure' => secure,
63
+ 'CnamLookupEnabled' => cnam_lookup_enabled,
64
+ 'TransferCallerId' => transfer_caller_id,
65
+ })
66
+
67
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
68
+
69
+
70
+
71
+
72
+
73
+ payload = @version.create('POST', @uri, data: data, headers: headers)
74
+ TrunkInstance.new(
75
+ @version,
76
+ payload,
77
+ )
78
+ end
79
+
80
+ ##
81
+ # Create the TrunkInstanceMetadata
82
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
83
+ # @param [String] domain_name The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
84
+ # @param [String] disaster_recovery_url The URL we should call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
85
+ # @param [String] disaster_recovery_method The HTTP method we should use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
86
+ # @param [TransferSetting] transfer_mode
87
+ # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
88
+ # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
89
+ # @param [TransferCallerId] transfer_caller_id
90
+ # @return [TrunkInstance] Created TrunkInstance
91
+ def create_with_metadata(
92
+ friendly_name: :unset,
93
+ domain_name: :unset,
94
+ disaster_recovery_url: :unset,
95
+ disaster_recovery_method: :unset,
96
+ transfer_mode: :unset,
97
+ secure: :unset,
98
+ cnam_lookup_enabled: :unset,
99
+ transfer_caller_id: :unset
100
+ )
101
+
102
+ data = Twilio::Values.of({
103
+ 'FriendlyName' => friendly_name,
104
+ 'DomainName' => domain_name,
105
+ 'DisasterRecoveryUrl' => disaster_recovery_url,
106
+ 'DisasterRecoveryMethod' => disaster_recovery_method,
107
+ 'TransferMode' => transfer_mode,
108
+ 'Secure' => secure,
109
+ 'CnamLookupEnabled' => cnam_lookup_enabled,
110
+ 'TransferCallerId' => transfer_caller_id,
111
+ })
112
+
113
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
114
+
115
+
116
+
117
+
118
+
119
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
120
+ trunk_instance = TrunkInstance.new(
121
+ @version,
122
+ response.body,
123
+ )
124
+ TrunkInstanceMetadata.new(
125
+ @version,
126
+ trunk_instance,
127
+ response.headers,
128
+ response.status_code
129
+ )
130
+ end
131
+
132
+
133
+ ##
134
+ # Lists TrunkInstance records from the API as a list.
135
+ # Unlike stream(), this operation is eager and will load `limit` records into
136
+ # memory before returning.
137
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
138
+ # guarantees to never return more than limit. Default is no limit
139
+ # @param [Integer] page_size Number of records to fetch per request, when
140
+ # not set will use the default value of 50 records. If no page_size is defined
141
+ # but a limit is defined, stream() will attempt to read the limit with the most
142
+ # efficient page size, i.e. min(limit, 1000)
143
+ # @return [Array] Array of up to limit results
144
+ def list(limit: nil, page_size: nil)
145
+ self.stream(
146
+ limit: limit,
147
+ page_size: page_size
148
+ ).entries
149
+ end
150
+
151
+ ##
152
+ # Streams Instance records from the API as an Enumerable.
153
+ # This operation lazily loads records as efficiently as possible until the limit
154
+ # is reached.
155
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
156
+ # guarantees to never return more than limit. Default is no limit
157
+ # @param [Integer] page_size Number of records to fetch per request, when
158
+ # not set will use the default value of 50 records. If no page_size is defined
159
+ # but a limit is defined, stream() will attempt to read the limit with the most
160
+ # efficient page size, i.e. min(limit, 1000)
161
+ # @return [Enumerable] Enumerable that will yield up to limit results
162
+ def stream(limit: nil, page_size: nil)
163
+ limits = @version.read_limits(limit, page_size)
164
+
165
+ page = self.page(
166
+ page_size: limits[:page_size], )
167
+
168
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
169
+ end
170
+
171
+ ##
172
+ # Lists TrunkPageMetadata records from the API as a list.
173
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
174
+ # guarantees to never return more than limit. Default is no limit
175
+ # @param [Integer] page_size Number of records to fetch per request, when
176
+ # not set will use the default value of 50 records. If no page_size is defined
177
+ # but a limit is defined, stream() will attempt to read the limit with the most
178
+ # efficient page size, i.e. min(limit, 1000)
179
+ # @return [Array] Array of up to limit results
180
+ def list_with_metadata(limit: nil, page_size: nil)
181
+ limits = @version.read_limits(limit, page_size)
182
+ params = Twilio::Values.of({
183
+
184
+ 'PageSize' => limits[:page_size],
185
+ });
186
+ headers = Twilio::Values.of({})
187
+
188
+ response = @version.page('GET', @uri, params: params, headers: headers)
189
+
190
+ TrunkPageMetadata.new(@version, response, @solution, limits[:limit])
191
+ end
192
+
193
+ ##
194
+ # When passed a block, yields TrunkInstance records from the API.
195
+ # This operation lazily loads records as efficiently as possible until the limit
196
+ # is reached.
197
+ def each
198
+ limits = @version.read_limits
199
+
200
+ page = self.page(page_size: limits[:page_size], )
201
+
202
+ @version.stream(page,
121
203
  limit: limits[:limit],
122
204
  page_limit: limits[:page_limit]).each {|x| yield x}
123
- end
124
-
125
- ##
126
- # Retrieve a single page of TrunkInstance records from the API.
127
- # Request is executed immediately.
128
- # @param [String] page_token PageToken provided by the API
129
- # @param [Integer] page_number Page Number, this value is simply for client state
130
- # @param [Integer] page_size Number of records to return, defaults to 50
131
- # @return [Page] Page of TrunkInstance
132
- def page(page_token: :unset, page_number: :unset, page_size: :unset)
133
- params = Twilio::Values.of({
134
- 'PageToken' => page_token,
135
- 'Page' => page_number,
136
- 'PageSize' => page_size,
137
- })
138
-
139
- response = @version.page('GET', @uri, params: params)
140
-
141
- TrunkPage.new(@version, response, @solution)
142
- end
143
-
144
- ##
145
- # Retrieve a single page of TrunkInstance records from the API.
146
- # Request is executed immediately.
147
- # @param [String] target_url API-generated URL for the requested results page
148
- # @return [Page] Page of TrunkInstance
149
- def get_page(target_url)
150
- response = @version.domain.request(
151
- 'GET',
152
- target_url
153
- )
154
- TrunkPage.new(@version, response, @solution)
155
- end
156
-
157
- ##
158
- # Provide a user friendly representation
159
- def to_s
160
- '#<Twilio.Trunking.V1.TrunkList>'
161
- end
162
- end
163
-
164
- class TrunkPage < Page
165
- ##
166
- # Initialize the TrunkPage
167
- # @param [Version] version Version that contains the resource
168
- # @param [Response] response Response from the API
169
- # @param [Hash] solution Path solution for the resource
170
- # @return [TrunkPage] TrunkPage
171
- def initialize(version, response, solution)
172
- super(version, response)
173
-
174
- # Path Solution
175
- @solution = solution
176
- end
177
-
178
- ##
179
- # Build an instance of TrunkInstance
180
- # @param [Hash] payload Payload response from the API
181
- # @return [TrunkInstance] TrunkInstance
182
- def get_instance(payload)
183
- TrunkInstance.new(@version, payload, )
184
- end
185
-
186
- ##
187
- # Provide a user friendly representation
188
- def to_s
189
- '<Twilio.Trunking.V1.TrunkPage>'
190
- end
191
- end
192
-
193
- class TrunkContext < InstanceContext
194
- ##
195
- # Initialize the TrunkContext
196
- # @param [Version] version Version that contains the resource
197
- # @param [String] sid The unique string that we created to identify the Trunk
198
- # resource to fetch.
199
- # @return [TrunkContext] TrunkContext
200
- def initialize(version, sid)
201
- super(version)
202
-
203
- # Path Solution
204
- @solution = {sid: sid, }
205
- @uri = "/Trunks/#{@solution[:sid]}"
206
-
207
- # Dependents
208
- @origination_urls = nil
209
- @credentials_lists = nil
210
- @ip_access_control_lists = nil
211
- @phone_numbers = nil
212
- @recordings = nil
213
- end
214
-
215
- ##
216
- # Fetch the TrunkInstance
217
- # @return [TrunkInstance] Fetched TrunkInstance
218
- def fetch
219
- payload = @version.fetch('GET', @uri)
220
-
221
- TrunkInstance.new(@version, payload, sid: @solution[:sid], )
222
- end
223
-
224
- ##
225
- # Delete the TrunkInstance
226
- # @return [Boolean] true if delete succeeds, false otherwise
227
- def delete
228
- @version.delete('DELETE', @uri)
229
- end
230
-
231
- ##
232
- # Update the TrunkInstance
233
- # @param [String] friendly_name A descriptive string that you create to describe
234
- # the resource. It can be up to 64 characters long.
235
- # @param [String] domain_name The unique address you reserve on Twilio to which
236
- # you route your SIP traffic. Domain names can contain letters, digits, and `-`
237
- # and must end with `pstn.twilio.com`. See {Termination
238
- # Settings}[https://www.twilio.com/docs/sip-trunking#termination] for more
239
- # information.
240
- # @param [String] disaster_recovery_url The URL we should call using the
241
- # `disaster_recovery_method` if an error occurs while sending SIP traffic towards
242
- # the configured Origination URL. We retrieve TwiML from the URL and execute the
243
- # instructions like any other normal TwiML call. See {Disaster
244
- # Recovery}[https://www.twilio.com/docs/sip-trunking#disaster-recovery] for more
245
- # information.
246
- # @param [String] disaster_recovery_method The HTTP method we should use to call
247
- # the `disaster_recovery_url`. Can be: `GET` or `POST`.
248
- # @param [trunk.TransferSetting] transfer_mode The call transfer settings for the
249
- # trunk. Can be: `enable-all`, `sip-only` and `disable-all`. See
250
- # {Transfer}[https://www.twilio.com/docs/sip-trunking/call-transfer] for more
251
- # information.
252
- # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If
253
- # enabled, all calls going through the trunk will be secure using SRTP for media
254
- # and TLS for signaling. If disabled, then RTP will be used for media. See {Secure
255
- # Trunking}[https://www.twilio.com/docs/sip-trunking#securetrunking] for more
256
- # information.
257
- # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should
258
- # be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from
259
- # the United States and Canada automatically perform a CNAM Lookup and display
260
- # Caller ID data on your phone. See {CNAM
261
- # Lookups}[https://www.twilio.com/docs/sip-trunking#CNAM] for more information.
262
- # @param [trunk.TransferCallerId] transfer_caller_id Caller Id for transfer
263
- # target. Can be: `from-transferee` (default) or `from-transferor`.
264
- # @return [TrunkInstance] Updated TrunkInstance
265
- def update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, transfer_mode: :unset, secure: :unset, cnam_lookup_enabled: :unset, transfer_caller_id: :unset)
266
- data = Twilio::Values.of({
267
- 'FriendlyName' => friendly_name,
268
- 'DomainName' => domain_name,
269
- 'DisasterRecoveryUrl' => disaster_recovery_url,
270
- 'DisasterRecoveryMethod' => disaster_recovery_method,
271
- 'TransferMode' => transfer_mode,
272
- 'Secure' => secure,
273
- 'CnamLookupEnabled' => cnam_lookup_enabled,
274
- 'TransferCallerId' => transfer_caller_id,
275
- })
276
-
277
- payload = @version.update('POST', @uri, data: data)
278
-
279
- TrunkInstance.new(@version, payload, sid: @solution[:sid], )
280
- end
281
-
282
- ##
283
- # Access the origination_urls
284
- # @return [OriginationUrlList]
285
- # @return [OriginationUrlContext] if sid was passed.
286
- def origination_urls(sid=:unset)
287
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
288
-
289
- if sid != :unset
290
- return OriginationUrlContext.new(@version, @solution[:sid], sid, )
291
- end
292
-
293
- unless @origination_urls
294
- @origination_urls = OriginationUrlList.new(@version, trunk_sid: @solution[:sid], )
295
- end
296
-
297
- @origination_urls
298
- end
299
-
300
- ##
301
- # Access the credentials_lists
302
- # @return [CredentialListList]
303
- # @return [CredentialListContext] if sid was passed.
304
- def credentials_lists(sid=:unset)
305
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
306
-
307
- if sid != :unset
308
- return CredentialListContext.new(@version, @solution[:sid], sid, )
309
- end
310
-
311
- unless @credentials_lists
312
- @credentials_lists = CredentialListList.new(@version, trunk_sid: @solution[:sid], )
313
- end
314
-
315
- @credentials_lists
316
- end
317
-
318
- ##
319
- # Access the ip_access_control_lists
320
- # @return [IpAccessControlListList]
321
- # @return [IpAccessControlListContext] if sid was passed.
322
- def ip_access_control_lists(sid=:unset)
323
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
324
-
325
- if sid != :unset
326
- return IpAccessControlListContext.new(@version, @solution[:sid], sid, )
327
- end
328
-
329
- unless @ip_access_control_lists
330
- @ip_access_control_lists = IpAccessControlListList.new(@version, trunk_sid: @solution[:sid], )
331
- end
332
-
333
- @ip_access_control_lists
334
- end
335
-
336
- ##
337
- # Access the phone_numbers
338
- # @return [PhoneNumberList]
339
- # @return [PhoneNumberContext] if sid was passed.
340
- def phone_numbers(sid=:unset)
341
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
342
-
343
- if sid != :unset
344
- return PhoneNumberContext.new(@version, @solution[:sid], sid, )
345
- end
346
-
347
- unless @phone_numbers
348
- @phone_numbers = PhoneNumberList.new(@version, trunk_sid: @solution[:sid], )
349
- end
350
-
351
- @phone_numbers
352
- end
353
-
354
- ##
355
- # Access the recordings
356
- # @return [RecordingList]
357
- # @return [RecordingContext]
358
- def recordings
359
- RecordingContext.new(@version, @solution[:sid], )
360
- end
361
-
362
- ##
363
- # Provide a user friendly representation
364
- def to_s
365
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
366
- "#<Twilio.Trunking.V1.TrunkContext #{context}>"
367
- end
368
-
369
- ##
370
- # Provide a detailed, user friendly representation
371
- def inspect
372
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
373
- "#<Twilio.Trunking.V1.TrunkContext #{context}>"
374
- end
375
- end
205
+ end
206
+
207
+ ##
208
+ # Retrieve a single page of TrunkInstance records from the API.
209
+ # Request is executed immediately.
210
+ # @param [String] page_token PageToken provided by the API
211
+ # @param [Integer] page_number Page Number, this value is simply for client state
212
+ # @param [Integer] page_size Number of records to return, defaults to 50
213
+ # @return [Page] Page of TrunkInstance
214
+ def page(page_token: :unset, page_number: :unset,page_size: :unset)
215
+ params = Twilio::Values.of({
216
+ 'PageToken' => page_token,
217
+ 'Page' => page_number,
218
+ 'PageSize' => page_size,
219
+ })
220
+ headers = Twilio::Values.of({})
221
+
222
+
223
+
224
+ response = @version.page('GET', @uri, params: params, headers: headers)
225
+
226
+ TrunkPage.new(@version, response, @solution)
227
+ end
228
+
229
+ ##
230
+ # Retrieve a single page of TrunkInstance records from the API.
231
+ # Request is executed immediately.
232
+ # @param [String] target_url API-generated URL for the requested results page
233
+ # @return [Page] Page of TrunkInstance
234
+ def get_page(target_url)
235
+ response = @version.domain.request(
236
+ 'GET',
237
+ target_url
238
+ )
239
+ TrunkPage.new(@version, response, @solution)
240
+ end
241
+
242
+
243
+
244
+ # Provide a user friendly representation
245
+ def to_s
246
+ '#<Twilio.Trunking.V1.TrunkList>'
247
+ end
248
+ end
249
+
250
+
251
+ class TrunkContext < InstanceContext
252
+ ##
253
+ # Initialize the TrunkContext
254
+ # @param [Version] version Version that contains the resource
255
+ # @param [String] sid The unique string that we created to identify the OriginationUrl resource to update.
256
+ # @return [TrunkContext] TrunkContext
257
+ def initialize(version, sid)
258
+ super(version)
259
+
260
+
261
+ # Path Solution
262
+ @solution = { sid: sid, }
263
+ @uri = "/Trunks/#{@solution[:sid]}"
264
+
265
+ # Dependents
266
+ @recordings = nil
267
+ @credentials_lists = nil
268
+ @ip_access_control_lists = nil
269
+ @phone_numbers = nil
270
+ @origination_urls = nil
271
+ end
272
+ ##
273
+ # Delete the TrunkInstance
274
+ # @return [Boolean] True if delete succeeds, false otherwise
275
+ def delete
276
+
277
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
278
+
279
+
280
+
281
+
282
+ @version.delete('DELETE', @uri, headers: headers)
283
+ end
284
+
285
+ ##
286
+ # Delete the TrunkInstanceMetadata
287
+ # @return [Boolean] True if delete succeeds, false otherwise
288
+ def delete_with_metadata
289
+
290
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
291
+
292
+
293
+
294
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
295
+ trunk_instance = TrunkInstance.new(
296
+ @version,
297
+ response.body,
298
+ account_sid: @solution[:account_sid],
299
+ sid: @solution[:sid],
300
+ )
301
+ TrunkInstanceMetadata.new(@version, trunk_instance, response.headers, response.status_code)
302
+ end
303
+
304
+ ##
305
+ # Fetch the TrunkInstance
306
+ # @return [TrunkInstance] Fetched TrunkInstance
307
+ def fetch
308
+
309
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
310
+
311
+
312
+
313
+
314
+
315
+ payload = @version.fetch('GET', @uri, headers: headers)
316
+ TrunkInstance.new(
317
+ @version,
318
+ payload,
319
+ sid: @solution[:sid],
320
+ )
321
+ end
322
+
323
+ ##
324
+ # Fetch the TrunkInstanceMetadata
325
+ # @return [TrunkInstance] Fetched TrunkInstance
326
+ def fetch_with_metadata
327
+
328
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
329
+
330
+
331
+
332
+
333
+
334
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
335
+ trunk_instance = TrunkInstance.new(
336
+ @version,
337
+ response.body,
338
+ sid: @solution[:sid],
339
+ )
340
+ TrunkInstanceMetadata.new(
341
+ @version,
342
+ trunk_instance,
343
+ response.headers,
344
+ response.status_code
345
+ )
346
+ end
347
+
348
+ ##
349
+ # Update the TrunkInstance
350
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
351
+ # @param [String] domain_name The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
352
+ # @param [String] disaster_recovery_url The URL we should call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
353
+ # @param [String] disaster_recovery_method The HTTP method we should use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
354
+ # @param [TransferSetting] transfer_mode
355
+ # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
356
+ # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
357
+ # @param [TransferCallerId] transfer_caller_id
358
+ # @return [TrunkInstance] Updated TrunkInstance
359
+ def update(
360
+ friendly_name: :unset,
361
+ domain_name: :unset,
362
+ disaster_recovery_url: :unset,
363
+ disaster_recovery_method: :unset,
364
+ transfer_mode: :unset,
365
+ secure: :unset,
366
+ cnam_lookup_enabled: :unset,
367
+ transfer_caller_id: :unset
368
+ )
369
+
370
+ data = Twilio::Values.of({
371
+ 'FriendlyName' => friendly_name,
372
+ 'DomainName' => domain_name,
373
+ 'DisasterRecoveryUrl' => disaster_recovery_url,
374
+ 'DisasterRecoveryMethod' => disaster_recovery_method,
375
+ 'TransferMode' => transfer_mode,
376
+ 'Secure' => secure,
377
+ 'CnamLookupEnabled' => cnam_lookup_enabled,
378
+ 'TransferCallerId' => transfer_caller_id,
379
+ })
380
+
381
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
382
+
383
+
384
+
385
+
386
+
387
+ payload = @version.update('POST', @uri, data: data, headers: headers)
388
+ TrunkInstance.new(
389
+ @version,
390
+ payload,
391
+ sid: @solution[:sid],
392
+ )
393
+ end
394
+
395
+ ##
396
+ # Update the TrunkInstanceMetadata
397
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
398
+ # @param [String] domain_name The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
399
+ # @param [String] disaster_recovery_url The URL we should call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
400
+ # @param [String] disaster_recovery_method The HTTP method we should use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
401
+ # @param [TransferSetting] transfer_mode
402
+ # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
403
+ # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
404
+ # @param [TransferCallerId] transfer_caller_id
405
+ # @return [TrunkInstance] Updated TrunkInstance
406
+ def update_with_metadata(
407
+ friendly_name: :unset,
408
+ domain_name: :unset,
409
+ disaster_recovery_url: :unset,
410
+ disaster_recovery_method: :unset,
411
+ transfer_mode: :unset,
412
+ secure: :unset,
413
+ cnam_lookup_enabled: :unset,
414
+ transfer_caller_id: :unset
415
+ )
416
+
417
+ data = Twilio::Values.of({
418
+ 'FriendlyName' => friendly_name,
419
+ 'DomainName' => domain_name,
420
+ 'DisasterRecoveryUrl' => disaster_recovery_url,
421
+ 'DisasterRecoveryMethod' => disaster_recovery_method,
422
+ 'TransferMode' => transfer_mode,
423
+ 'Secure' => secure,
424
+ 'CnamLookupEnabled' => cnam_lookup_enabled,
425
+ 'TransferCallerId' => transfer_caller_id,
426
+ })
427
+
428
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
429
+
430
+
431
+
432
+
433
+
434
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
435
+ trunk_instance = TrunkInstance.new(
436
+ @version,
437
+ response.body,
438
+ sid: @solution[:sid],
439
+ )
440
+ TrunkInstanceMetadata.new(
441
+ @version,
442
+ trunk_instance,
443
+ response.headers,
444
+ response.status_code
445
+ )
446
+ end
447
+
448
+ ##
449
+ # Access the recordings
450
+ # @return [RecordingList]
451
+ # @return [RecordingContext]
452
+ def recordings
453
+ RecordingContext.new(
454
+ @version,
455
+ @solution[:sid]
456
+ )
457
+ end
458
+ ##
459
+ # Access the credentials_lists
460
+ # @return [CredentialListList]
461
+ # @return [CredentialListContext] if sid was passed.
462
+ def credentials_lists(sid=:unset)
463
+
464
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
465
+
466
+ if sid != :unset
467
+ return CredentialListContext.new(@version, @solution[:sid],sid )
468
+ end
469
+
470
+ unless @credentials_lists
471
+ @credentials_lists = CredentialListList.new(
472
+ @version, trunk_sid: @solution[:sid], )
473
+ end
474
+
475
+ @credentials_lists
476
+ end
477
+ ##
478
+ # Access the ip_access_control_lists
479
+ # @return [IpAccessControlListList]
480
+ # @return [IpAccessControlListContext] if sid was passed.
481
+ def ip_access_control_lists(sid=:unset)
482
+
483
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
484
+
485
+ if sid != :unset
486
+ return IpAccessControlListContext.new(@version, @solution[:sid],sid )
487
+ end
488
+
489
+ unless @ip_access_control_lists
490
+ @ip_access_control_lists = IpAccessControlListList.new(
491
+ @version, trunk_sid: @solution[:sid], )
492
+ end
493
+
494
+ @ip_access_control_lists
495
+ end
496
+ ##
497
+ # Access the phone_numbers
498
+ # @return [PhoneNumberList]
499
+ # @return [PhoneNumberContext] if sid was passed.
500
+ def phone_numbers(sid=:unset)
501
+
502
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
503
+
504
+ if sid != :unset
505
+ return PhoneNumberContext.new(@version, @solution[:sid],sid )
506
+ end
507
+
508
+ unless @phone_numbers
509
+ @phone_numbers = PhoneNumberList.new(
510
+ @version, trunk_sid: @solution[:sid], )
511
+ end
512
+
513
+ @phone_numbers
514
+ end
515
+ ##
516
+ # Access the origination_urls
517
+ # @return [OriginationUrlList]
518
+ # @return [OriginationUrlContext] if sid was passed.
519
+ def origination_urls(sid=:unset)
520
+
521
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
522
+
523
+ if sid != :unset
524
+ return OriginationUrlContext.new(@version, @solution[:sid],sid )
525
+ end
526
+
527
+ unless @origination_urls
528
+ @origination_urls = OriginationUrlList.new(
529
+ @version, trunk_sid: @solution[:sid], )
530
+ end
531
+
532
+ @origination_urls
533
+ end
534
+
535
+ ##
536
+ # Provide a user friendly representation
537
+ def to_s
538
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
539
+ "#<Twilio.Trunking.V1.TrunkContext #{context}>"
540
+ end
541
+
542
+ ##
543
+ # Provide a detailed, user friendly representation
544
+ def inspect
545
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
546
+ "#<Twilio.Trunking.V1.TrunkContext #{context}>"
547
+ end
548
+ end
549
+
550
+ class TrunkInstanceMetadata < InstanceResourceMetadata
551
+ ##
552
+ # Initializes a new TrunkInstanceMetadata.
553
+ # @param [Version] version Version that contains the resource
554
+ # @param [}TrunkInstance] trunk_instance The instance associated with the metadata.
555
+ # @param [Hash] headers Header object with response headers.
556
+ # @param [Integer] status_code The HTTP status code of the response.
557
+ # @return [TrunkInstanceMetadata] The initialized instance with metadata.
558
+ def initialize(version, trunk_instance, headers, status_code)
559
+ super(version, headers, status_code)
560
+ @trunk_instance = trunk_instance
561
+ end
562
+
563
+ def trunk
564
+ @trunk_instance
565
+ end
566
+
567
+ def headers
568
+ @headers
569
+ end
570
+
571
+ def status_code
572
+ @status_code
573
+ end
574
+
575
+ def to_s
576
+ "<Twilio.Api.V2010.TrunkInstanceMetadata status=#{@status_code}>"
577
+ end
578
+ end
579
+
580
+ class TrunkListResponse < InstanceListResource
581
+ # @param [Array<TrunkInstance>] instance
582
+ # @param [Hash{String => Object}] headers
583
+ # @param [Integer] status_code
584
+ def initialize(version, payload, key)
585
+ @trunk_instance = payload.body[key].map do |data|
586
+ TrunkInstance.new(version, data)
587
+ end
588
+ @headers = payload.headers
589
+ @status_code = payload.status_code
590
+ end
591
+
592
+ def trunk_instance
593
+ @instance
594
+ end
595
+ end
596
+
597
+ class TrunkPage < Page
598
+ ##
599
+ # Initialize the TrunkPage
600
+ # @param [Version] version Version that contains the resource
601
+ # @param [Response] response Response from the API
602
+ # @param [Hash] solution Path solution for the resource
603
+ # @return [TrunkPage] TrunkPage
604
+ def initialize(version, response, solution)
605
+ super(version, response)
606
+
607
+
608
+ # Path Solution
609
+ @solution = solution
610
+ end
611
+
612
+ ##
613
+ # Build an instance of TrunkInstance
614
+ # @param [Hash] payload Payload response from the API
615
+ # @return [TrunkInstance] TrunkInstance
616
+ def get_instance(payload)
617
+ TrunkInstance.new(@version, payload)
618
+ end
619
+
620
+ ##
621
+ # Provide a user friendly representation
622
+ def to_s
623
+ '<Twilio.Trunking.V1.TrunkPage>'
624
+ end
625
+ end
626
+
627
+ class TrunkPageMetadata < PageMetadata
628
+ attr_reader :trunk_page
629
+
630
+ def initialize(version, response, solution, limit)
631
+ super(version, response)
632
+ @trunk_page = []
633
+ @limit = limit
634
+ key = get_key(response.body)
635
+ records = 0
636
+ while( limit != :unset && records < limit )
637
+ @trunk_page << TrunkListResponse.new(version, @payload, key, limit - records)
638
+ @payload = self.next_page
639
+ break unless @payload
640
+ records += @payload.body[key].size
641
+ end
642
+ # Path Solution
643
+ @solution = solution
644
+ end
645
+
646
+ def each
647
+ @trunk_page.each do |record|
648
+ yield record
649
+ end
650
+ end
651
+
652
+ def to_s
653
+ '<Twilio::REST::Trunking::V1PageMetadata>';
654
+ end
655
+ end
656
+ class TrunkListResponse < InstanceListResource
657
+
658
+ # @param [Array<TrunkInstance>] instance
659
+ # @param [Hash{String => Object}] headers
660
+ # @param [Integer] status_code
661
+ def initialize(version, payload, key, limit = :unset)
662
+ data_list = payload.body[key]
663
+ if limit != :unset
664
+ data_list = data_list[0, limit]
665
+ end
666
+ @trunk = data_list.map do |data|
667
+ TrunkInstance.new(version, data)
668
+ end
669
+ @headers = payload.headers
670
+ @status_code = payload.status_code
671
+ end
672
+
673
+ def trunk
674
+ @trunk
675
+ end
676
+
677
+ def headers
678
+ @headers
679
+ end
680
+
681
+ def status_code
682
+ @status_code
683
+ end
684
+ end
685
+
686
+ class TrunkInstance < InstanceResource
687
+ ##
688
+ # Initialize the TrunkInstance
689
+ # @param [Version] version Version that contains the resource
690
+ # @param [Hash] payload payload that contains response from Twilio
691
+ # @param [String] account_sid The SID of the
692
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Trunk
693
+ # resource.
694
+ # @param [String] sid The SID of the Call resource to fetch.
695
+ # @return [TrunkInstance] TrunkInstance
696
+ def initialize(version, payload , sid: nil)
697
+ super(version)
698
+
699
+
700
+ # Marshaled Properties
701
+ @properties = {
702
+ 'account_sid' => payload['account_sid'],
703
+ 'domain_name' => payload['domain_name'],
704
+ 'disaster_recovery_method' => payload['disaster_recovery_method'],
705
+ 'disaster_recovery_url' => payload['disaster_recovery_url'],
706
+ 'friendly_name' => payload['friendly_name'],
707
+ 'secure' => payload['secure'],
708
+ 'recording' => payload['recording'],
709
+ 'transfer_mode' => payload['transfer_mode'],
710
+ 'transfer_caller_id' => payload['transfer_caller_id'],
711
+ 'cnam_lookup_enabled' => payload['cnam_lookup_enabled'],
712
+ 'auth_type' => payload['auth_type'],
713
+ 'symmetric_rtp_enabled' => payload['symmetric_rtp_enabled'],
714
+ 'auth_type_set' => payload['auth_type_set'],
715
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
716
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
717
+ 'sid' => payload['sid'],
718
+ 'url' => payload['url'],
719
+ 'links' => payload['links'],
720
+ }
721
+
722
+ # Context
723
+ @instance_context = nil
724
+ @params = { 'sid' => sid || @properties['sid'] , }
725
+ end
726
+
727
+ ##
728
+ # Generate an instance context for the instance, the context is capable of
729
+ # performing various actions. All instance actions are proxied to the context
730
+ # @return [TrunkContext] CallContext for this CallInstance
731
+ def context
732
+ unless @instance_context
733
+ @instance_context = TrunkContext.new(@version , @params['sid'])
734
+ end
735
+ @instance_context
736
+ end
737
+
738
+ ##
739
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Trunk resource.
740
+ def account_sid
741
+ @properties['account_sid']
742
+ end
743
+
744
+ ##
745
+ # @return [String] The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
746
+ def domain_name
747
+ @properties['domain_name']
748
+ end
749
+
750
+ ##
751
+ # @return [String] The HTTP method we use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
752
+ def disaster_recovery_method
753
+ @properties['disaster_recovery_method']
754
+ end
755
+
756
+ ##
757
+ # @return [String] The URL we call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from this URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
758
+ def disaster_recovery_url
759
+ @properties['disaster_recovery_url']
760
+ end
761
+
762
+ ##
763
+ # @return [String] The string that you assigned to describe the resource.
764
+ def friendly_name
765
+ @properties['friendly_name']
766
+ end
767
+
768
+ ##
769
+ # @return [Boolean] Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
770
+ def secure
771
+ @properties['secure']
772
+ end
773
+
774
+ ##
775
+ # @return [Hash] The recording settings for the trunk. Can be: `do-not-record`, `record-from-ringing`, `record-from-answer`. If set to `record-from-ringing` or `record-from-answer`, all calls going through the trunk will be recorded. The only way to change recording parameters is on a sub-resource of a Trunk after it has been created. e.g.`/Trunks/[Trunk_SID]/Recording -XPOST -d'Mode=record-from-answer'`. See [Recording](https://www.twilio.com/docs/sip-trunking#recording) for more information.
776
+ def recording
777
+ @properties['recording']
778
+ end
779
+
780
+ ##
781
+ # @return [TransferSetting]
782
+ def transfer_mode
783
+ @properties['transfer_mode']
784
+ end
785
+
786
+ ##
787
+ # @return [TransferCallerId]
788
+ def transfer_caller_id
789
+ @properties['transfer_caller_id']
790
+ end
791
+
792
+ ##
793
+ # @return [Boolean] Whether Caller ID Name (CNAM) lookup is enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
794
+ def cnam_lookup_enabled
795
+ @properties['cnam_lookup_enabled']
796
+ end
797
+
798
+ ##
799
+ # @return [String] The types of authentication mapped to the domain. Can be: `IP_ACL` and `CREDENTIAL_LIST`. If both are mapped, the values are returned in a comma delimited list. If empty, the domain will not receive any traffic.
800
+ def auth_type
801
+ @properties['auth_type']
802
+ end
803
+
804
+ ##
805
+ # @return [Boolean] Whether Symmetric RTP is enabled for the trunk. When Symmetric RTP is disabled, Twilio will send RTP to the destination negotiated in the SDP. Disabling Symmetric RTP is considered to be more secure and therefore recommended. See [Symmetric RTP](https://www.twilio.com/docs/sip-trunking#symmetric-rtp) for more information.
806
+ def symmetric_rtp_enabled
807
+ @properties['symmetric_rtp_enabled']
808
+ end
809
+
810
+ ##
811
+ # @return [Array<String>] Reserved.
812
+ def auth_type_set
813
+ @properties['auth_type_set']
814
+ end
815
+
816
+ ##
817
+ # @return [Time] The date and time in GMT when the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
818
+ def date_created
819
+ @properties['date_created']
820
+ end
821
+
822
+ ##
823
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
824
+ def date_updated
825
+ @properties['date_updated']
826
+ end
827
+
828
+ ##
829
+ # @return [String] The unique string that we created to identify the Trunk resource.
830
+ def sid
831
+ @properties['sid']
832
+ end
833
+
834
+ ##
835
+ # @return [String] The absolute URL of the resource.
836
+ def url
837
+ @properties['url']
838
+ end
839
+
840
+ ##
841
+ # @return [Hash] The URLs of related resources.
842
+ def links
843
+ @properties['links']
844
+ end
845
+
846
+ ##
847
+ # Delete the TrunkInstance
848
+ # @return [Boolean] True if delete succeeds, false otherwise
849
+ def delete
850
+
851
+ context.delete
852
+ end
853
+
854
+ ##
855
+ # Fetch the TrunkInstance
856
+ # @return [TrunkInstance] Fetched TrunkInstance
857
+ def fetch
858
+
859
+ context.fetch
860
+ end
861
+
862
+ ##
863
+ # Update the TrunkInstance
864
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
865
+ # @param [String] domain_name The unique address you reserve on Twilio to which you route your SIP traffic. Domain names can contain letters, digits, and `-` and must end with `pstn.twilio.com`. See [Termination Settings](https://www.twilio.com/docs/sip-trunking#termination) for more information.
866
+ # @param [String] disaster_recovery_url The URL we should call using the `disaster_recovery_method` if an error occurs while sending SIP traffic towards the configured Origination URL. We retrieve TwiML from the URL and execute the instructions like any other normal TwiML call. See [Disaster Recovery](https://www.twilio.com/docs/sip-trunking#disaster-recovery) for more information.
867
+ # @param [String] disaster_recovery_method The HTTP method we should use to call the `disaster_recovery_url`. Can be: `GET` or `POST`.
868
+ # @param [TransferSetting] transfer_mode
869
+ # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If enabled, all calls going through the trunk will be secure using SRTP for media and TLS for signaling. If disabled, then RTP will be used for media. See [Secure Trunking](https://www.twilio.com/docs/sip-trunking#securetrunking) for more information.
870
+ # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from the United States and Canada automatically perform a CNAM Lookup and display Caller ID data on your phone. See [CNAM Lookups](https://www.twilio.com/docs/sip-trunking#CNAM) for more information.
871
+ # @param [TransferCallerId] transfer_caller_id
872
+ # @return [TrunkInstance] Updated TrunkInstance
873
+ def update(
874
+ friendly_name: :unset,
875
+ domain_name: :unset,
876
+ disaster_recovery_url: :unset,
877
+ disaster_recovery_method: :unset,
878
+ transfer_mode: :unset,
879
+ secure: :unset,
880
+ cnam_lookup_enabled: :unset,
881
+ transfer_caller_id: :unset
882
+ )
883
+
884
+ context.update(
885
+ friendly_name: friendly_name,
886
+ domain_name: domain_name,
887
+ disaster_recovery_url: disaster_recovery_url,
888
+ disaster_recovery_method: disaster_recovery_method,
889
+ transfer_mode: transfer_mode,
890
+ secure: secure,
891
+ cnam_lookup_enabled: cnam_lookup_enabled,
892
+ transfer_caller_id: transfer_caller_id,
893
+ )
894
+ end
895
+
896
+ ##
897
+ # Access the recordings
898
+ # @return [recordings] recordings
899
+ def recordings
900
+ context.recordings
901
+ end
902
+
903
+ ##
904
+ # Access the credentials_lists
905
+ # @return [credentials_lists] credentials_lists
906
+ def credentials_lists
907
+ context.credentials_lists
908
+ end
909
+
910
+ ##
911
+ # Access the ip_access_control_lists
912
+ # @return [ip_access_control_lists] ip_access_control_lists
913
+ def ip_access_control_lists
914
+ context.ip_access_control_lists
915
+ end
916
+
917
+ ##
918
+ # Access the phone_numbers
919
+ # @return [phone_numbers] phone_numbers
920
+ def phone_numbers
921
+ context.phone_numbers
922
+ end
923
+
924
+ ##
925
+ # Access the origination_urls
926
+ # @return [origination_urls] origination_urls
927
+ def origination_urls
928
+ context.origination_urls
929
+ end
930
+
931
+ ##
932
+ # Provide a user friendly representation
933
+ def to_s
934
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
935
+ "<Twilio.Trunking.V1.TrunkInstance #{values}>"
936
+ end
937
+
938
+ ##
939
+ # Provide a detailed, user friendly representation
940
+ def inspect
941
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
942
+ "<Twilio.Trunking.V1.TrunkInstance #{values}>"
943
+ end
944
+ end
376
945
 
377
- class TrunkInstance < InstanceResource
378
- ##
379
- # Initialize the TrunkInstance
380
- # @param [Version] version Version that contains the resource
381
- # @param [Hash] payload payload that contains response from Twilio
382
- # @param [String] sid The unique string that we created to identify the Trunk
383
- # resource to fetch.
384
- # @return [TrunkInstance] TrunkInstance
385
- def initialize(version, payload, sid: nil)
386
- super(version)
387
-
388
- # Marshaled Properties
389
- @properties = {
390
- 'account_sid' => payload['account_sid'],
391
- 'domain_name' => payload['domain_name'],
392
- 'disaster_recovery_method' => payload['disaster_recovery_method'],
393
- 'disaster_recovery_url' => payload['disaster_recovery_url'],
394
- 'friendly_name' => payload['friendly_name'],
395
- 'secure' => payload['secure'],
396
- 'recording' => payload['recording'],
397
- 'transfer_mode' => payload['transfer_mode'],
398
- 'transfer_caller_id' => payload['transfer_caller_id'],
399
- 'cnam_lookup_enabled' => payload['cnam_lookup_enabled'],
400
- 'auth_type' => payload['auth_type'],
401
- 'auth_type_set' => payload['auth_type_set'],
402
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
403
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
404
- 'sid' => payload['sid'],
405
- 'url' => payload['url'],
406
- 'links' => payload['links'],
407
- }
408
-
409
- # Context
410
- @instance_context = nil
411
- @params = {'sid' => sid || @properties['sid'], }
412
- end
413
-
414
- ##
415
- # Generate an instance context for the instance, the context is capable of
416
- # performing various actions. All instance actions are proxied to the context
417
- # @return [TrunkContext] TrunkContext for this TrunkInstance
418
- def context
419
- unless @instance_context
420
- @instance_context = TrunkContext.new(@version, @params['sid'], )
421
946
  end
422
- @instance_context
423
- end
424
-
425
- ##
426
- # @return [String] The SID of the Account that created the resource
427
- def account_sid
428
- @properties['account_sid']
429
- end
430
-
431
- ##
432
- # @return [String] The unique address you reserve on Twilio to which you route your SIP traffic
433
- def domain_name
434
- @properties['domain_name']
435
- end
436
-
437
- ##
438
- # @return [String] The HTTP method we use to call the disaster_recovery_url
439
- def disaster_recovery_method
440
- @properties['disaster_recovery_method']
441
- end
442
-
443
- ##
444
- # @return [String] The HTTP URL that we call if an error occurs while sending SIP traffic towards your configured Origination URL
445
- def disaster_recovery_url
446
- @properties['disaster_recovery_url']
447
- end
448
-
449
- ##
450
- # @return [String] The string that you assigned to describe the resource
451
- def friendly_name
452
- @properties['friendly_name']
453
- end
454
-
455
- ##
456
- # @return [Boolean] Whether Secure Trunking is enabled for the trunk
457
- def secure
458
- @properties['secure']
459
- end
460
-
461
- ##
462
- # @return [Hash] The recording settings for the trunk
463
- def recording
464
- @properties['recording']
465
- end
466
-
467
- ##
468
- # @return [trunk.TransferSetting] The call transfer settings for the trunk
469
- def transfer_mode
470
- @properties['transfer_mode']
471
- end
472
-
473
- ##
474
- # @return [trunk.TransferCallerId] Caller Id for transfer target
475
- def transfer_caller_id
476
- @properties['transfer_caller_id']
477
- end
478
-
479
- ##
480
- # @return [Boolean] Whether Caller ID Name (CNAM) lookup is enabled for the trunk
481
- def cnam_lookup_enabled
482
- @properties['cnam_lookup_enabled']
483
- end
484
-
485
- ##
486
- # @return [String] The types of authentication mapped to the domain
487
- def auth_type
488
- @properties['auth_type']
489
- end
490
-
491
- ##
492
- # @return [Array[String]] Reserved
493
- def auth_type_set
494
- @properties['auth_type_set']
495
- end
496
-
497
- ##
498
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
499
- def date_created
500
- @properties['date_created']
501
- end
502
-
503
- ##
504
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
505
- def date_updated
506
- @properties['date_updated']
507
- end
508
-
509
- ##
510
- # @return [String] The unique string that identifies the resource
511
- def sid
512
- @properties['sid']
513
- end
514
-
515
- ##
516
- # @return [String] The absolute URL of the resource
517
- def url
518
- @properties['url']
519
- end
520
-
521
- ##
522
- # @return [String] The URLs of related resources
523
- def links
524
- @properties['links']
525
- end
526
-
527
- ##
528
- # Fetch the TrunkInstance
529
- # @return [TrunkInstance] Fetched TrunkInstance
530
- def fetch
531
- context.fetch
532
- end
533
-
534
- ##
535
- # Delete the TrunkInstance
536
- # @return [Boolean] true if delete succeeds, false otherwise
537
- def delete
538
- context.delete
539
- end
540
-
541
- ##
542
- # Update the TrunkInstance
543
- # @param [String] friendly_name A descriptive string that you create to describe
544
- # the resource. It can be up to 64 characters long.
545
- # @param [String] domain_name The unique address you reserve on Twilio to which
546
- # you route your SIP traffic. Domain names can contain letters, digits, and `-`
547
- # and must end with `pstn.twilio.com`. See {Termination
548
- # Settings}[https://www.twilio.com/docs/sip-trunking#termination] for more
549
- # information.
550
- # @param [String] disaster_recovery_url The URL we should call using the
551
- # `disaster_recovery_method` if an error occurs while sending SIP traffic towards
552
- # the configured Origination URL. We retrieve TwiML from the URL and execute the
553
- # instructions like any other normal TwiML call. See {Disaster
554
- # Recovery}[https://www.twilio.com/docs/sip-trunking#disaster-recovery] for more
555
- # information.
556
- # @param [String] disaster_recovery_method The HTTP method we should use to call
557
- # the `disaster_recovery_url`. Can be: `GET` or `POST`.
558
- # @param [trunk.TransferSetting] transfer_mode The call transfer settings for the
559
- # trunk. Can be: `enable-all`, `sip-only` and `disable-all`. See
560
- # {Transfer}[https://www.twilio.com/docs/sip-trunking/call-transfer] for more
561
- # information.
562
- # @param [Boolean] secure Whether Secure Trunking is enabled for the trunk. If
563
- # enabled, all calls going through the trunk will be secure using SRTP for media
564
- # and TLS for signaling. If disabled, then RTP will be used for media. See {Secure
565
- # Trunking}[https://www.twilio.com/docs/sip-trunking#securetrunking] for more
566
- # information.
567
- # @param [Boolean] cnam_lookup_enabled Whether Caller ID Name (CNAM) lookup should
568
- # be enabled for the trunk. If enabled, all inbound calls to the SIP Trunk from
569
- # the United States and Canada automatically perform a CNAM Lookup and display
570
- # Caller ID data on your phone. See {CNAM
571
- # Lookups}[https://www.twilio.com/docs/sip-trunking#CNAM] for more information.
572
- # @param [trunk.TransferCallerId] transfer_caller_id Caller Id for transfer
573
- # target. Can be: `from-transferee` (default) or `from-transferor`.
574
- # @return [TrunkInstance] Updated TrunkInstance
575
- def update(friendly_name: :unset, domain_name: :unset, disaster_recovery_url: :unset, disaster_recovery_method: :unset, transfer_mode: :unset, secure: :unset, cnam_lookup_enabled: :unset, transfer_caller_id: :unset)
576
- context.update(
577
- friendly_name: friendly_name,
578
- domain_name: domain_name,
579
- disaster_recovery_url: disaster_recovery_url,
580
- disaster_recovery_method: disaster_recovery_method,
581
- transfer_mode: transfer_mode,
582
- secure: secure,
583
- cnam_lookup_enabled: cnam_lookup_enabled,
584
- transfer_caller_id: transfer_caller_id,
585
- )
586
- end
587
-
588
- ##
589
- # Access the origination_urls
590
- # @return [origination_urls] origination_urls
591
- def origination_urls
592
- context.origination_urls
593
- end
594
-
595
- ##
596
- # Access the credentials_lists
597
- # @return [credentials_lists] credentials_lists
598
- def credentials_lists
599
- context.credentials_lists
600
- end
601
-
602
- ##
603
- # Access the ip_access_control_lists
604
- # @return [ip_access_control_lists] ip_access_control_lists
605
- def ip_access_control_lists
606
- context.ip_access_control_lists
607
- end
608
-
609
- ##
610
- # Access the phone_numbers
611
- # @return [phone_numbers] phone_numbers
612
- def phone_numbers
613
- context.phone_numbers
614
- end
615
-
616
- ##
617
- # Access the recordings
618
- # @return [recordings] recordings
619
- def recordings
620
- context.recordings
621
- end
622
-
623
- ##
624
- # Provide a user friendly representation
625
- def to_s
626
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
627
- "<Twilio.Trunking.V1.TrunkInstance #{values}>"
628
- end
629
-
630
- ##
631
- # Provide a detailed, user friendly representation
632
- def inspect
633
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
634
- "<Twilio.Trunking.V1.TrunkInstance #{values}>"
635
- end
636
947
  end
637
- end
638
948
  end
639
- end
640
- end
949
+ end