twilio-ruby 5.46.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 (1217) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -1
  3. data/.github/ISSUE_TEMPLATE/bug_report.yml +69 -0
  4. data/.github/workflows/pr-lint.yml +21 -0
  5. data/.github/workflows/test-and-deploy.yml +147 -0
  6. data/.gitignore +9 -1
  7. data/.rubocop.yml +2 -1
  8. data/.rubocop_todo.yml +91 -28
  9. data/CHANGES.md +2333 -0
  10. data/CONTRIBUTING.md +11 -9
  11. data/Dockerfile +2 -1
  12. data/Gemfile +6 -0
  13. data/LICENSE +1 -1
  14. data/Makefile +18 -11
  15. data/PULL_REQUEST_TEMPLATE.md +1 -1
  16. data/README.md +158 -38
  17. data/UPGRADE.md +21 -0
  18. data/advanced-examples/custom-http-client.md +170 -0
  19. data/cluster/cluster_oauth_spec.rb +19 -0
  20. data/cluster/cluster_orgs_spec.rb +40 -0
  21. data/cluster/cluster_spec.rb +75 -0
  22. data/examples/examples.rb +1 -1
  23. data/examples/public_oauth.rb +13 -0
  24. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  25. data/lib/twilio-ruby/auth_strategy/auth_strategy.rb +19 -0
  26. data/lib/twilio-ruby/auth_strategy/no_auth_strategy.rb +17 -0
  27. data/lib/twilio-ruby/auth_strategy/token_auth_strategy.rb +39 -0
  28. data/lib/twilio-ruby/base/client_base.rb +131 -0
  29. data/lib/twilio-ruby/credential/auth_type.rb +17 -0
  30. data/lib/twilio-ruby/credential/client_credential_provider.rb +28 -0
  31. data/lib/twilio-ruby/credential/credential_provider.rb +11 -0
  32. data/lib/twilio-ruby/credential/orgs_credential_provider.rb +30 -0
  33. data/lib/twilio-ruby/framework/request.rb +8 -1
  34. data/lib/twilio-ruby/framework/rest/api_v1_version.rb +22 -0
  35. data/lib/twilio-ruby/framework/rest/domain.rb +35 -0
  36. data/lib/twilio-ruby/framework/rest/error.rb +66 -0
  37. data/lib/twilio-ruby/framework/rest/page.rb +104 -0
  38. data/lib/twilio-ruby/framework/rest/page_metadata.rb +83 -0
  39. data/lib/twilio-ruby/framework/rest/resource.rb +39 -0
  40. data/lib/twilio-ruby/framework/rest/token_page.rb +73 -0
  41. data/lib/twilio-ruby/framework/rest/version.rb +240 -0
  42. data/lib/twilio-ruby/http/client_token_manager.rb +31 -0
  43. data/lib/twilio-ruby/http/http_client.rb +42 -9
  44. data/lib/twilio-ruby/http/org_token_manager.rb +31 -0
  45. data/lib/twilio-ruby/http.rb +5 -0
  46. data/lib/twilio-ruby/jwt/access_token.rb +13 -59
  47. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +338 -176
  48. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +231 -0
  49. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +231 -0
  50. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +644 -332
  51. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +644 -332
  52. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +185 -114
  53. data/lib/twilio-ruby/rest/accounts/v1/messaging_geopermissions.rb +285 -0
  54. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +336 -0
  55. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +378 -190
  56. data/lib/twilio-ruby/rest/accounts/v1.rb +69 -42
  57. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  58. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +459 -365
  60. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +886 -514
  61. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +977 -586
  62. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +482 -320
  63. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +519 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +519 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +519 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +519 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +519 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +519 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +519 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +601 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +231 -118
  72. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +289 -192
  73. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +578 -417
  74. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +556 -364
  75. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +791 -511
  76. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +1669 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +1669 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +541 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +269 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +420 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +1368 -931
  82. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +1124 -713
  83. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +694 -458
  84. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +719 -493
  85. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +679 -407
  86. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +483 -344
  87. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +627 -416
  88. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +737 -547
  89. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +737 -546
  90. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +737 -546
  91. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +1261 -896
  92. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +567 -302
  93. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +268 -164
  94. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +540 -350
  95. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +970 -612
  96. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +246 -125
  97. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +246 -125
  98. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +577 -399
  99. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +604 -358
  100. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +553 -338
  101. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +702 -390
  102. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +343 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +572 -378
  104. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +560 -383
  105. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +558 -372
  106. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +718 -486
  107. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +644 -408
  108. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +567 -306
  109. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +642 -359
  110. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +667 -371
  111. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +579 -0
  112. 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
  113. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +204 -0
  114. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +579 -0
  115. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +190 -0
  116. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +158 -103
  117. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +564 -331
  118. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +564 -330
  119. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +987 -641
  120. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +694 -418
  121. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +667 -372
  122. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +205 -150
  123. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +258 -139
  124. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +557 -350
  125. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +407 -335
  126. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +407 -335
  127. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +407 -335
  128. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +407 -335
  129. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +407 -335
  130. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +407 -335
  131. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +407 -335
  132. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +407 -335
  133. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +478 -416
  134. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +785 -484
  135. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +176 -104
  136. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +278 -150
  137. data/lib/twilio-ruby/rest/api/v2010/account.rb +1229 -943
  138. data/lib/twilio-ruby/rest/api/v2010.rb +126 -147
  139. data/lib/twilio-ruby/rest/api.rb +26 -35
  140. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  141. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +550 -0
  142. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +550 -0
  143. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +423 -0
  144. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +296 -0
  145. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +918 -0
  146. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +317 -0
  147. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +349 -0
  148. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +862 -0
  149. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +356 -0
  150. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +352 -0
  151. data/lib/twilio-ruby/rest/assistants/v1/session.rb +493 -0
  152. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +838 -0
  153. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  154. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  155. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  156. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +468 -287
  157. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +440 -271
  158. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +438 -242
  159. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +389 -243
  160. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +430 -224
  161. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -53
  162. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  163. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  164. data/lib/twilio-ruby/rest/chat/v1/credential.rb +719 -403
  165. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +613 -391
  166. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +704 -440
  167. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +722 -437
  168. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +822 -515
  169. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +672 -367
  170. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +331 -237
  171. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +750 -440
  172. data/lib/twilio-ruby/rest/chat/v1/service.rb +1287 -894
  173. data/lib/twilio-ruby/rest/chat/v1.rb +57 -53
  174. data/lib/twilio-ruby/rest/chat/v2/credential.rb +719 -401
  175. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +570 -370
  176. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +613 -386
  177. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +799 -527
  178. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +825 -533
  179. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +746 -467
  180. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +916 -605
  181. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +672 -369
  182. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +561 -381
  183. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +648 -413
  184. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +796 -491
  185. data/lib/twilio-ruby/rest/chat/v2/service.rb +1121 -778
  186. data/lib/twilio-ruby/rest/chat/v2.rb +57 -51
  187. data/lib/twilio-ruby/rest/chat/v3/channel.rb +452 -0
  188. data/lib/twilio-ruby/rest/chat/v3.rb +71 -0
  189. data/lib/twilio-ruby/rest/chat.rb +10 -38
  190. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  191. data/lib/twilio-ruby/rest/client.rb +338 -540
  192. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +280 -0
  193. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +349 -0
  194. data/lib/twilio-ruby/rest/content/v1/content.rb +1921 -0
  195. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +340 -0
  196. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +354 -0
  197. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  198. data/lib/twilio-ruby/rest/content/v2/content.rb +425 -0
  199. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +418 -0
  200. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  201. data/lib/twilio-ruby/rest/content.rb +15 -0
  202. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  203. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +808 -0
  204. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +445 -227
  205. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +467 -252
  206. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +504 -344
  207. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +852 -488
  208. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +817 -495
  209. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +725 -403
  210. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +957 -545
  211. data/lib/twilio-ruby/rest/conversations/v1/conversation_with_participants.rb +392 -0
  212. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +728 -409
  213. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +405 -0
  214. data/lib/twilio-ruby/rest/conversations/v1/role.rb +657 -356
  215. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +563 -373
  216. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +540 -296
  217. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +470 -0
  218. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +497 -271
  219. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +504 -363
  220. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +860 -526
  221. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +829 -530
  222. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +737 -438
  223. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +972 -581
  224. data/lib/twilio-ruby/rest/conversations/v1/service/conversation_with_participants.rb +399 -0
  225. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +410 -0
  226. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +672 -380
  227. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +697 -0
  228. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +773 -430
  229. data/lib/twilio-ruby/rest/conversations/v1/service.rb +724 -424
  230. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +690 -0
  231. data/lib/twilio-ruby/rest/conversations/v1/user.rb +758 -406
  232. data/lib/twilio-ruby/rest/conversations/v1.rb +135 -107
  233. data/lib/twilio-ruby/rest/conversations.rb +24 -34
  234. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  235. data/lib/twilio-ruby/rest/events/v1/event_type.rb +486 -281
  236. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +461 -283
  237. data/lib/twilio-ruby/rest/events/v1/schema.rb +366 -214
  238. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +209 -100
  239. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +222 -103
  240. data/lib/twilio-ruby/rest/events/v1/sink.rb +711 -371
  241. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +621 -192
  242. data/lib/twilio-ruby/rest/events/v1/subscription.rb +685 -380
  243. data/lib/twilio-ruby/rest/events/v1.rb +87 -83
  244. data/lib/twilio-ruby/rest/events.rb +5 -34
  245. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  246. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +697 -0
  247. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +621 -330
  248. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +722 -440
  249. data/lib/twilio-ruby/rest/flex_api/v1/create_flex_instance.rb +382 -0
  250. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +928 -549
  251. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +475 -0
  252. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +321 -0
  253. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +735 -0
  254. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +598 -0
  255. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +710 -0
  256. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +457 -0
  257. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +359 -0
  258. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +251 -0
  259. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +237 -0
  260. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +338 -0
  261. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +379 -0
  262. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +571 -0
  263. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_transfer.rb +547 -0
  264. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +644 -0
  265. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +537 -0
  266. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +621 -0
  267. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +700 -0
  268. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +390 -0
  269. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +564 -0
  270. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +599 -0
  271. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +376 -0
  272. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +539 -0
  273. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +400 -0
  274. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +327 -0
  275. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +663 -331
  276. data/lib/twilio-ruby/rest/flex_api/v1.rb +319 -73
  277. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +515 -0
  278. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +266 -0
  279. data/lib/twilio-ruby/rest/flex_api/v2.rb +77 -0
  280. data/lib/twilio-ruby/rest/flex_api.rb +33 -31
  281. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  282. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +463 -0
  283. data/lib/twilio-ruby/rest/frontline_api/v1.rb +49 -0
  284. data/lib/twilio-ruby/rest/frontline_api.rb +15 -0
  285. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  286. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +471 -0
  287. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +320 -0
  288. data/lib/twilio-ruby/rest/iam/v1/new_api_key.rb +284 -0
  289. data/lib/twilio-ruby/rest/iam/v1/o_auth_app.rb +646 -0
  290. data/lib/twilio-ruby/rest/iam/v1/token.rb +301 -0
  291. data/lib/twilio-ruby/rest/iam/v1.rb +82 -0
  292. data/lib/twilio-ruby/rest/iam.rb +6 -0
  293. data/lib/twilio-ruby/rest/iam_base.rb +33 -0
  294. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +516 -0
  295. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +499 -0
  296. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +360 -255
  297. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +333 -224
  298. data/lib/twilio-ruby/rest/insights/v1/call.rb +403 -228
  299. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +726 -0
  300. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +672 -0
  301. data/lib/twilio-ruby/rest/insights/v1/conference.rb +693 -0
  302. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +545 -371
  303. data/lib/twilio-ruby/rest/insights/v1/room.rb +668 -477
  304. data/lib/twilio-ruby/rest/insights/v1/setting.rb +445 -0
  305. data/lib/twilio-ruby/rest/insights/v1.rb +84 -51
  306. data/lib/twilio-ruby/rest/insights.rb +24 -32
  307. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  308. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +720 -0
  309. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +525 -0
  310. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +380 -0
  311. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +337 -0
  312. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +523 -0
  313. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +525 -0
  314. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +844 -0
  315. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_operator_results.rb +359 -0
  316. data/lib/twilio-ruby/rest/intelligence/v2/transcript/encrypted_sentences.rb +359 -0
  317. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +373 -0
  318. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +570 -0
  319. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +354 -0
  320. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +815 -0
  321. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  322. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  323. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  324. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +719 -364
  325. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +613 -359
  326. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +704 -397
  327. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +722 -409
  328. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +822 -488
  329. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +672 -347
  330. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +331 -231
  331. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +750 -418
  332. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +1287 -779
  333. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -51
  334. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +719 -364
  335. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +570 -343
  336. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +613 -359
  337. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +799 -451
  338. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +825 -479
  339. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +746 -411
  340. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +916 -555
  341. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +672 -347
  342. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +561 -351
  343. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +637 -384
  344. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +796 -467
  345. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +1121 -689
  346. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -51
  347. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  348. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  349. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/chunk.rb +317 -0
  350. data/lib/twilio-ruby/rest/knowledge/v1/knowledge/knowledge_status.rb +349 -0
  351. data/lib/twilio-ruby/rest/knowledge/v1/knowledge.rb +856 -0
  352. data/lib/twilio-ruby/rest/knowledge/v1.rb +49 -0
  353. data/lib/twilio-ruby/rest/knowledge.rb +6 -0
  354. data/lib/twilio-ruby/rest/knowledge_base.rb +38 -0
  355. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +399 -237
  356. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -38
  357. data/lib/twilio-ruby/rest/lookups/v2/bucket.rb +500 -0
  358. data/lib/twilio-ruby/rest/lookups/v2/lookup_override.rb +603 -0
  359. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +578 -0
  360. data/lib/twilio-ruby/rest/lookups/v2/query.rb +351 -0
  361. data/lib/twilio-ruby/rest/lookups/v2/rate_limit.rb +229 -0
  362. data/lib/twilio-ruby/rest/lookups/v2.rb +135 -0
  363. data/lib/twilio-ruby/rest/lookups.rb +2 -34
  364. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  365. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +475 -0
  366. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +501 -0
  367. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +555 -0
  368. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +252 -0
  369. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +735 -0
  370. data/lib/twilio-ruby/rest/marketplace/v1/module_data.rb +342 -0
  371. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +511 -0
  372. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +235 -0
  373. data/lib/twilio-ruby/rest/marketplace/v1.rb +91 -0
  374. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  375. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  376. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +231 -0
  377. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +575 -0
  378. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +768 -0
  379. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +337 -0
  380. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +483 -0
  381. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +477 -0
  382. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +379 -0
  383. data/lib/twilio-ruby/rest/messaging/v1/domain_validate_dn.rb +344 -0
  384. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +271 -0
  385. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +380 -0
  386. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +337 -0
  387. data/lib/twilio-ruby/rest/messaging/v1/request_managed_cert.rb +379 -0
  388. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +580 -335
  389. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +594 -0
  390. data/lib/twilio-ruby/rest/messaging/v1/service/destination_alpha_sender.rb +608 -0
  391. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +587 -341
  392. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +587 -336
  393. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +944 -0
  394. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +236 -0
  395. data/lib/twilio-ruby/rest/messaging/v1/service.rb +1149 -645
  396. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +1527 -0
  397. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +217 -0
  398. data/lib/twilio-ruby/rest/messaging/v1.rb +217 -43
  399. data/lib/twilio-ruby/rest/messaging/v2/channels_sender.rb +1002 -0
  400. data/lib/twilio-ruby/rest/messaging/v2/domain_certs.rb +386 -0
  401. data/lib/twilio-ruby/rest/messaging/v2/typing_indicator.rb +237 -0
  402. data/lib/twilio-ruby/rest/messaging/v2.rb +70 -0
  403. data/lib/twilio-ruby/rest/messaging.rb +48 -27
  404. data/lib/twilio-ruby/rest/messaging_base.rb +43 -0
  405. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +572 -395
  406. data/lib/twilio-ruby/rest/monitor/v1/event.rb +561 -390
  407. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -51
  408. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  409. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  410. data/lib/twilio-ruby/rest/notify/v1/credential.rb +719 -408
  411. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +694 -452
  412. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +466 -362
  413. data/lib/twilio-ruby/rest/notify/v1/service.rb +971 -622
  414. data/lib/twilio-ruby/rest/notify/v1.rb +57 -53
  415. data/lib/twilio-ruby/rest/notify.rb +3 -34
  416. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  417. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +411 -0
  418. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +221 -0
  419. data/lib/twilio-ruby/rest/numbers/v1/porting_all_port_in.rb +367 -0
  420. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +616 -0
  421. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +485 -0
  422. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +405 -0
  423. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +242 -0
  424. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +301 -0
  425. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +395 -0
  426. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +252 -0
  427. data/lib/twilio-ruby/rest/numbers/v1.rb +161 -0
  428. data/lib/twilio-ruby/rest/numbers/v2/application.rb +562 -0
  429. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +440 -0
  430. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +649 -0
  431. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +442 -0
  432. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +430 -0
  433. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +915 -0
  434. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +412 -0
  435. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +524 -298
  436. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +564 -309
  437. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +303 -0
  438. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +923 -505
  439. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +667 -351
  440. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +458 -266
  441. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +521 -307
  442. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +695 -364
  443. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +458 -266
  444. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +241 -181
  445. data/lib/twilio-ruby/rest/numbers/v2.rb +108 -28
  446. data/lib/twilio-ruby/rest/numbers/v3/hosted_number_order.rb +484 -0
  447. data/lib/twilio-ruby/rest/numbers/v3.rb +40 -0
  448. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  449. data/lib/twilio-ruby/rest/numbers_base.rb +48 -0
  450. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +253 -0
  451. data/lib/twilio-ruby/rest/oauth/v1/token.rb +301 -0
  452. data/lib/twilio-ruby/rest/oauth/v1.rb +46 -0
  453. data/lib/twilio-ruby/rest/oauth/v2/authorize.rb +253 -0
  454. data/lib/twilio-ruby/rest/oauth/v2/token.rb +311 -0
  455. data/lib/twilio-ruby/rest/oauth/v2.rb +46 -0
  456. data/lib/twilio-ruby/rest/oauth.rb +6 -0
  457. data/lib/twilio-ruby/rest/oauth_base.rb +43 -0
  458. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +469 -396
  459. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +724 -446
  460. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +960 -625
  461. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -53
  462. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +468 -298
  463. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +491 -309
  464. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +548 -330
  465. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +706 -398
  466. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -51
  467. data/lib/twilio-ruby/rest/preview/wireless/command.rb +616 -364
  468. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +743 -398
  469. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +382 -205
  470. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +833 -523
  471. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -66
  472. data/lib/twilio-ruby/rest/preview.rb +10 -145
  473. data/lib/twilio-ruby/rest/preview_base.rb +48 -0
  474. data/lib/twilio-ruby/rest/preview_iam/v1/authorize.rb +253 -0
  475. data/lib/twilio-ruby/rest/preview_iam/v1/token.rb +301 -0
  476. data/lib/twilio-ruby/rest/preview_iam/v1.rb +46 -0
  477. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/account.rb +468 -0
  478. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/role_assignment.rb +559 -0
  479. data/lib/twilio-ruby/rest/preview_iam/versionless/organization/user.rb +768 -0
  480. data/lib/twilio-ruby/rest/preview_iam/versionless/organization.rb +413 -0
  481. data/lib/twilio-ruby/rest/preview_iam/versionless.rb +49 -0
  482. data/lib/twilio-ruby/rest/preview_iam.rb +9 -0
  483. data/lib/twilio-ruby/rest/preview_iam_base.rb +38 -0
  484. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +465 -275
  485. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +172 -120
  486. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +458 -268
  487. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +172 -120
  488. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +465 -275
  489. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +345 -179
  490. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +185 -135
  491. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  492. data/lib/twilio-ruby/rest/pricing/v2/country.rb +467 -0
  493. data/lib/twilio-ruby/rest/pricing/v2/number.rb +389 -0
  494. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +465 -275
  495. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +367 -200
  496. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +185 -138
  497. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -28
  498. data/lib/twilio-ruby/rest/pricing.rb +22 -38
  499. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  500. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +693 -403
  501. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +600 -418
  502. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +640 -447
  503. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +659 -453
  504. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +811 -547
  505. data/lib/twilio-ruby/rest/proxy/v1/service.rb +839 -596
  506. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -37
  507. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  508. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  509. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +452 -0
  510. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +452 -0
  511. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +452 -0
  512. data/lib/twilio-ruby/rest/routes/v2.rb +79 -0
  513. data/lib/twilio-ruby/rest/routes.rb +32 -0
  514. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  515. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +483 -323
  516. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +680 -380
  517. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +350 -208
  518. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +645 -374
  519. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +549 -338
  520. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +535 -383
  521. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +680 -396
  522. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +688 -447
  523. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +342 -210
  524. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +510 -353
  525. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +680 -380
  526. data/lib/twilio-ruby/rest/serverless/v1/service.rb +803 -486
  527. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -36
  528. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  529. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  530. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +350 -199
  531. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +342 -194
  532. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +545 -355
  533. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +659 -394
  534. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +350 -200
  535. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +342 -197
  536. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +545 -361
  537. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +748 -449
  538. data/lib/twilio-ruby/rest/studio/v1/flow.rb +572 -355
  539. data/lib/twilio-ruby/rest/studio/v1.rb +42 -36
  540. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +350 -208
  541. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +342 -205
  542. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +545 -369
  543. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +741 -450
  544. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +510 -328
  545. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +413 -0
  546. data/lib/twilio-ruby/rest/studio/v2/flow.rb +804 -480
  547. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +241 -114
  548. data/lib/twilio-ruby/rest/studio/v2.rb +48 -43
  549. data/lib/twilio-ruby/rest/studio.rb +3 -41
  550. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  551. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +621 -0
  552. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +757 -411
  553. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +634 -0
  554. data/lib/twilio-ruby/rest/supersim/v1/network.rb +474 -297
  555. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +566 -332
  556. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +624 -351
  557. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +349 -0
  558. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +338 -0
  559. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +296 -0
  560. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +725 -388
  561. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +586 -0
  562. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +408 -328
  563. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -103
  564. data/lib/twilio-ruby/rest/supersim.rb +40 -40
  565. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  566. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +616 -379
  567. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +736 -442
  568. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +766 -497
  569. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +616 -378
  570. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +749 -459
  571. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +772 -504
  572. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +616 -376
  573. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +749 -458
  574. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +242 -138
  575. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +692 -414
  576. data/lib/twilio-ruby/rest/sync/v1/service.rb +878 -575
  577. data/lib/twilio-ruby/rest/sync/v1.rb +42 -36
  578. data/lib/twilio-ruby/rest/sync.rb +2 -34
  579. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +682 -388
  581. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +633 -464
  582. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +1079 -732
  583. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +985 -637
  584. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +688 -382
  585. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +258 -0
  586. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +522 -366
  587. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +430 -276
  588. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +410 -254
  589. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +358 -276
  590. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +882 -566
  591. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +1053 -728
  592. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +602 -388
  593. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +394 -239
  594. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +440 -266
  595. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +364 -193
  596. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +418 -234
  597. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +927 -619
  598. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +522 -374
  599. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +395 -241
  600. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +410 -262
  601. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +822 -510
  602. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +514 -354
  603. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +379 -205
  604. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +387 -219
  605. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +1022 -715
  606. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -36
  607. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  608. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  609. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +573 -320
  610. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +573 -317
  611. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +734 -419
  612. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +706 -451
  613. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +391 -174
  614. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +939 -614
  615. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -37
  616. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  617. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  618. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +440 -0
  619. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +656 -0
  620. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +474 -0
  621. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +602 -0
  622. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +581 -0
  623. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +547 -0
  624. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +833 -0
  625. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +669 -0
  626. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +460 -0
  627. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +453 -0
  628. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +683 -0
  629. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +460 -0
  630. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +602 -0
  631. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +581 -0
  632. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +547 -0
  633. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +833 -0
  634. data/lib/twilio-ruby/rest/trusthub/v1.rb +175 -0
  635. data/lib/twilio-ruby/rest/trusthub.rb +74 -0
  636. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  637. data/lib/twilio-ruby/rest/verify/v2/form.rb +334 -181
  638. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +433 -0
  639. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +454 -108
  640. data/lib/twilio-ruby/rest/verify/v2/service/approve_challenge.rb +402 -0
  641. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +302 -0
  642. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +770 -449
  643. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +705 -453
  644. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +418 -0
  645. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +653 -394
  646. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +652 -363
  647. data/lib/twilio-ruby/rest/verify/v2/service/new_challenge.rb +478 -0
  648. data/lib/twilio-ruby/rest/verify/v2/service/new_factor.rb +387 -0
  649. data/lib/twilio-ruby/rest/verify/v2/service/new_verify_factor.rb +357 -0
  650. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +680 -388
  651. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +693 -384
  652. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +655 -349
  653. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +321 -181
  654. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +741 -401
  655. data/lib/twilio-ruby/rest/verify/v2/service.rb +1360 -693
  656. data/lib/twilio-ruby/rest/verify/v2/template.rb +320 -0
  657. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +566 -0
  658. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +410 -0
  659. data/lib/twilio-ruby/rest/verify/v2.rb +99 -53
  660. data/lib/twilio-ruby/rest/verify.rb +33 -31
  661. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  662. data/lib/twilio-ruby/rest/video/v1/composition.rb +738 -494
  663. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +854 -655
  664. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +475 -261
  665. data/lib/twilio-ruby/rest/video/v1/recording.rb +631 -405
  666. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +475 -261
  667. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +403 -0
  668. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +501 -0
  669. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +316 -0
  670. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +508 -0
  671. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +714 -0
  672. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +303 -0
  673. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +624 -0
  674. data/lib/twilio-ruby/rest/video/v1/room/transcriptions.rb +648 -0
  675. data/lib/twilio-ruby/rest/video/v1/room.rb +938 -542
  676. data/lib/twilio-ruby/rest/video/v1.rb +99 -95
  677. data/lib/twilio-ruby/rest/video.rb +7 -34
  678. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  679. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +302 -0
  680. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +822 -486
  681. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +734 -434
  682. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +658 -352
  683. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +236 -121
  684. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +282 -181
  685. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +553 -397
  686. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +377 -173
  687. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +187 -122
  688. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +650 -339
  689. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +630 -319
  690. data/lib/twilio-ruby/rest/voice/v1.rb +130 -92
  691. data/lib/twilio-ruby/rest/voice.rb +12 -31
  692. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  693. data/lib/twilio-ruby/rest/wireless/v1/command.rb +663 -406
  694. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +769 -436
  695. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +387 -284
  696. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +317 -226
  697. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +925 -657
  698. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +319 -219
  699. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -73
  700. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  701. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  702. data/lib/twilio-ruby/rest.rb +14 -0
  703. data/lib/twilio-ruby/security/request_validator.rb +1 -1
  704. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  705. data/lib/twilio-ruby/twiml/voice_response.rb +1287 -143
  706. data/lib/twilio-ruby/version.rb +1 -1
  707. data/lib/twilio-ruby.rb +6 -16
  708. data/sonar-project.properties +13 -0
  709. data/twilio-ruby.gemspec +5 -5
  710. metadata +334 -942
  711. data/.travis.yml +0 -45
  712. data/conf/cacert.pem +0 -3376
  713. data/lib/twilio-ruby/framework/domain.rb +0 -36
  714. data/lib/twilio-ruby/framework/error.rb +0 -51
  715. data/lib/twilio-ruby/framework/page.rb +0 -103
  716. data/lib/twilio-ruby/framework/resource.rb +0 -23
  717. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  718. data/lib/twilio-ruby/framework/version.rb +0 -153
  719. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  720. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  721. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  722. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  723. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  724. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  725. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  726. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  727. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  728. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  729. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  730. 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
  731. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  732. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  733. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  734. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  735. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  736. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  737. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  738. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  739. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  740. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  741. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  742. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  743. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  744. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  745. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  746. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  747. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  748. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  749. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -51
  750. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  751. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +0 -314
  752. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -536
  753. data/lib/twilio-ruby/rest/fax/v1.rb +0 -44
  754. data/lib/twilio-ruby/rest/fax.rb +0 -47
  755. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -307
  756. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  757. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +0 -294
  758. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +0 -275
  759. data/lib/twilio-ruby/rest/preview/bulk_exports/export/job.rb +0 -249
  760. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +0 -251
  761. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +0 -234
  762. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -60
  763. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  764. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  765. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  766. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  767. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  768. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -44
  769. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +0 -385
  770. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +0 -410
  771. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +0 -418
  772. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +0 -385
  773. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +0 -405
  774. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +0 -415
  775. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +0 -385
  776. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +0 -405
  777. data/lib/twilio-ruby/rest/preview/sync/service.rb +0 -462
  778. data/lib/twilio-ruby/rest/preview/sync.rb +0 -43
  779. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  780. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  781. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  782. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  783. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  784. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -64
  785. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  786. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  787. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  788. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  789. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  790. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  791. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  792. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  793. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  794. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  795. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  796. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  797. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  798. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  799. data/lib/twilio-ruby/rest/preview/understand.rb +0 -44
  800. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +0 -377
  801. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -205
  802. data/lib/twilio-ruby/rest/supersim/v1/command.rb +0 -368
  803. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -406
  804. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  805. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  806. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  807. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -483
  808. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -150
  809. data/spec/framework/request_spec.rb +0 -36
  810. data/spec/framework/serialize_spec.rb +0 -80
  811. data/spec/framework/version_spec.rb +0 -219
  812. data/spec/holodeck/holodeck.rb +0 -66
  813. data/spec/holodeck/hologram.rb +0 -4
  814. data/spec/http/http_client_spec.rb +0 -122
  815. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +0 -44
  816. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -222
  817. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -222
  818. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  819. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +0 -69
  820. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -106
  821. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  822. data/spec/integration/api/v2010/account/application_spec.rb +0 -274
  823. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -137
  824. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -102
  825. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -102
  826. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -101
  827. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -102
  828. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -102
  829. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -101
  830. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -102
  831. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -128
  832. data/spec/integration/api/v2010/account/balance_spec.rb +0 -44
  833. data/spec/integration/api/v2010/account/call/event_spec.rb +0 -102
  834. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -138
  835. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -149
  836. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -143
  837. data/spec/integration/api/v2010/account/call/payment_spec.rb +0 -135
  838. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  839. data/spec/integration/api/v2010/account/call_spec.rb +0 -660
  840. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -768
  841. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -234
  842. data/spec/integration/api/v2010/account/conference_spec.rb +0 -458
  843. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -197
  844. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -135
  845. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -220
  846. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -189
  847. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -189
  848. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -189
  849. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -370
  850. data/spec/integration/api/v2010/account/key_spec.rb +0 -176
  851. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -49
  852. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -161
  853. data/spec/integration/api/v2010/account/message_spec.rb +0 -507
  854. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -46
  855. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -46
  856. data/spec/integration/api/v2010/account/notification_spec.rb +0 -138
  857. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -185
  858. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -208
  859. data/spec/integration/api/v2010/account/queue_spec.rb +0 -244
  860. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -174
  861. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -165
  862. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -173
  863. data/spec/integration/api/v2010/account/recording_spec.rb +0 -184
  864. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -179
  865. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -176
  866. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -252
  867. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -241
  868. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -217
  869. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -217
  870. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  871. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -217
  872. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  873. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  874. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -207
  875. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -217
  876. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -303
  877. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -254
  878. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -251
  879. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  880. data/spec/integration/api/v2010/account/token_spec.rb +0 -71
  881. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -166
  882. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  883. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  884. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  885. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  886. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  887. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  888. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  889. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  890. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  891. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -281
  892. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  893. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  894. data/spec/integration/api/v2010/account_spec.rb +0 -327
  895. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -79
  896. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -46
  897. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -207
  898. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -242
  899. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -236
  900. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -290
  901. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -79
  902. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -204
  903. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -249
  904. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -85
  905. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -49
  906. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -258
  907. data/spec/integration/autopilot/v1/assistant/webhook_spec.rb +0 -242
  908. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -277
  909. data/spec/integration/autopilot/v1/restore_assistant_spec.rb +0 -53
  910. data/spec/integration/bulkexports/v1/export/day_spec.rb +0 -115
  911. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +0 -129
  912. data/spec/integration/bulkexports/v1/export/job_spec.rb +0 -78
  913. data/spec/integration/bulkexports/v1/export_configuration_spec.rb +0 -77
  914. data/spec/integration/bulkexports/v1/export_spec.rb +0 -44
  915. data/spec/integration/chat/v1/credential_spec.rb +0 -219
  916. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -207
  917. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -280
  918. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -290
  919. data/spec/integration/chat/v1/service/channel_spec.rb +0 -272
  920. data/spec/integration/chat/v1/service/role_spec.rb +0 -260
  921. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -93
  922. data/spec/integration/chat/v1/service/user_spec.rb +0 -262
  923. data/spec/integration/chat/v1/service_spec.rb +0 -295
  924. data/spec/integration/chat/v2/credential_spec.rb +0 -219
  925. data/spec/integration/chat/v2/service/binding_spec.rb +0 -174
  926. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -207
  927. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -263
  928. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -406
  929. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -303
  930. data/spec/integration/chat/v2/service/channel_spec.rb +0 -282
  931. data/spec/integration/chat/v2/service/role_spec.rb +0 -260
  932. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -177
  933. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -247
  934. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  935. data/spec/integration/chat/v2/service_spec.rb +0 -350
  936. data/spec/integration/conversations/v1/configuration/webhook_spec.rb +0 -90
  937. data/spec/integration/conversations/v1/configuration_spec.rb +0 -87
  938. data/spec/integration/conversations/v1/conversation/message/delivery_receipt_spec.rb +0 -136
  939. data/spec/integration/conversations/v1/conversation/message_spec.rb +0 -409
  940. data/spec/integration/conversations/v1/conversation/participant_spec.rb +0 -402
  941. data/spec/integration/conversations/v1/conversation/webhook_spec.rb +0 -282
  942. data/spec/integration/conversations/v1/conversation_spec.rb +0 -278
  943. data/spec/integration/conversations/v1/credential_spec.rb +0 -219
  944. data/spec/integration/conversations/v1/role_spec.rb +0 -249
  945. data/spec/integration/conversations/v1/service/binding_spec.rb +0 -166
  946. data/spec/integration/conversations/v1/service/configuration/notification_spec.rb +0 -115
  947. data/spec/integration/conversations/v1/service/configuration_spec.rb +0 -89
  948. data/spec/integration/conversations/v1/service/conversation/message/delivery_receipt_spec.rb +0 -144
  949. data/spec/integration/conversations/v1/service/conversation/message_spec.rb +0 -429
  950. data/spec/integration/conversations/v1/service/conversation/participant_spec.rb +0 -427
  951. data/spec/integration/conversations/v1/service/conversation/webhook_spec.rb +0 -299
  952. data/spec/integration/conversations/v1/service/conversation_spec.rb +0 -289
  953. data/spec/integration/conversations/v1/service/role_spec.rb +0 -260
  954. data/spec/integration/conversations/v1/service/user_spec.rb +0 -241
  955. data/spec/integration/conversations/v1/service_spec.rb +0 -174
  956. data/spec/integration/conversations/v1/user_spec.rb +0 -231
  957. data/spec/integration/events/v1/event_type_spec.rb +0 -133
  958. data/spec/integration/events/v1/schema/schema_version_spec.rb +0 -126
  959. data/spec/integration/events/v1/schema_spec.rb +0 -46
  960. data/spec/integration/events/v1/sink/sink_test_spec.rb +0 -42
  961. data/spec/integration/events/v1/sink/sink_validate_spec.rb +0 -44
  962. data/spec/integration/events/v1/sink_spec.rb +0 -231
  963. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -91
  964. data/spec/integration/events/v1/subscription_spec.rb +0 -292
  965. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -125
  966. data/spec/integration/fax/v1/fax_spec.rb +0 -267
  967. data/spec/integration/flex_api/v1/channel_spec.rb +0 -188
  968. data/spec/integration/flex_api/v1/configuration_spec.rb +0 -554
  969. data/spec/integration/flex_api/v1/flex_flow_spec.rb +0 -259
  970. data/spec/integration/flex_api/v1/web_channel_spec.rb +0 -216
  971. data/spec/integration/insights/v1/call/event_spec.rb +0 -166
  972. data/spec/integration/insights/v1/call/metric_spec.rb +0 -154
  973. data/spec/integration/insights/v1/call/summary_spec.rb +0 -64
  974. data/spec/integration/insights/v1/call_spec.rb +0 -46
  975. data/spec/integration/insights/v1/room/participant_spec.rb +0 -147
  976. data/spec/integration/insights/v1/room_spec.rb +0 -164
  977. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -219
  978. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -207
  979. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -280
  980. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -290
  981. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -272
  982. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -260
  983. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -93
  984. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -262
  985. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -295
  986. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -219
  987. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -174
  988. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -207
  989. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -263
  990. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -406
  991. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -303
  992. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -282
  993. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -260
  994. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -177
  995. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -247
  996. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  997. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -350
  998. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -336
  999. data/spec/integration/messaging/v1/deactivation_spec.rb +0 -40
  1000. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -173
  1001. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -198
  1002. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -176
  1003. data/spec/integration/messaging/v1/service_spec.rb +0 -267
  1004. data/spec/integration/monitor/v1/alert_spec.rb +0 -138
  1005. data/spec/integration/monitor/v1/event_spec.rb +0 -148
  1006. data/spec/integration/notify/v1/credential_spec.rb +0 -219
  1007. data/spec/integration/notify/v1/service/binding_spec.rb +0 -222
  1008. data/spec/integration/notify/v1/service/notification_spec.rb +0 -98
  1009. data/spec/integration/notify/v1/service_spec.rb +0 -289
  1010. data/spec/integration/numbers/v2/regulatory_compliance/bundle/evaluation_spec.rb +0 -620
  1011. data/spec/integration/numbers/v2/regulatory_compliance/bundle/item_assignment_spec.rb +0 -195
  1012. data/spec/integration/numbers/v2/regulatory_compliance/bundle_spec.rb +0 -258
  1013. data/spec/integration/numbers/v2/regulatory_compliance/end_user_spec.rb +0 -238
  1014. data/spec/integration/numbers/v2/regulatory_compliance/end_user_type_spec.rb +0 -141
  1015. data/spec/integration/numbers/v2/regulatory_compliance/regulation_spec.rb +0 -181
  1016. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_spec.rb +0 -250
  1017. data/spec/integration/numbers/v2/regulatory_compliance/supporting_document_type_spec.rb +0 -131
  1018. data/spec/integration/numbers/v2/regulatory_compliance_spec.rb +0 -12
  1019. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -115
  1020. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +0 -129
  1021. data/spec/integration/preview/bulk_exports/export/job_spec.rb +0 -78
  1022. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -77
  1023. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -44
  1024. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -234
  1025. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -228
  1026. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -244
  1027. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -232
  1028. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -241
  1029. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -110
  1030. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -224
  1031. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -389
  1032. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -121
  1033. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -142
  1034. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -162
  1035. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -250
  1036. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -201
  1037. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  1038. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -255
  1039. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -201
  1040. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -205
  1041. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -255
  1042. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -201
  1043. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -205
  1044. data/spec/integration/preview/sync/service_spec.rb +0 -241
  1045. data/spec/integration/preview/trusted_comms/branded_channel/channel_spec.rb +0 -50
  1046. data/spec/integration/preview/trusted_comms/branded_channel_spec.rb +0 -47
  1047. data/spec/integration/preview/trusted_comms/brands_information_spec.rb +0 -45
  1048. data/spec/integration/preview/trusted_comms/cps_spec.rb +0 -44
  1049. data/spec/integration/preview/trusted_comms/current_call_spec.rb +0 -58
  1050. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -79
  1051. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -79
  1052. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -46
  1053. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -207
  1054. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -242
  1055. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -236
  1056. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -302
  1057. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -79
  1058. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -204
  1059. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -249
  1060. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -85
  1061. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -49
  1062. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -258
  1063. data/spec/integration/preview/understand/assistant_spec.rb +0 -269
  1064. data/spec/integration/preview/wireless/command_spec.rb +0 -167
  1065. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -257
  1066. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -50
  1067. data/spec/integration/preview/wireless/sim_spec.rb +0 -207
  1068. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -137
  1069. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  1070. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -128
  1071. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  1072. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -138
  1073. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -55
  1074. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  1075. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -179
  1076. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -61
  1077. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  1078. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -231
  1079. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -133
  1080. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -163
  1081. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -240
  1082. data/spec/integration/proxy/v1/service/session_spec.rb +0 -225
  1083. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -225
  1084. data/spec/integration/proxy/v1/service_spec.rb +0 -214
  1085. data/spec/integration/serverless/v1/service/asset/asset_version_spec.rb +0 -93
  1086. data/spec/integration/serverless/v1/service/asset_spec.rb +0 -202
  1087. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +0 -48
  1088. data/spec/integration/serverless/v1/service/build_spec.rb +0 -214
  1089. data/spec/integration/serverless/v1/service/environment/deployment_spec.rb +0 -133
  1090. data/spec/integration/serverless/v1/service/environment/log_spec.rb +0 -97
  1091. data/spec/integration/serverless/v1/service/environment/variable_spec.rb +0 -207
  1092. data/spec/integration/serverless/v1/service/environment_spec.rb +0 -170
  1093. data/spec/integration/serverless/v1/service/function/function_version/function_version_content_spec.rb +0 -51
  1094. data/spec/integration/serverless/v1/service/function/function_version_spec.rb +0 -96
  1095. data/spec/integration/serverless/v1/service/function_spec.rb +0 -202
  1096. data/spec/integration/serverless/v1/service_spec.rb +0 -205
  1097. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -50
  1098. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -53
  1099. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -99
  1100. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -168
  1101. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -50
  1102. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1103. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -100
  1104. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -214
  1105. data/spec/integration/studio/v1/flow_spec.rb +0 -114
  1106. data/spec/integration/studio/v2/flow/execution/execution_context_spec.rb +0 -50
  1107. data/spec/integration/studio/v2/flow/execution/execution_step/execution_step_context_spec.rb +0 -53
  1108. data/spec/integration/studio/v2/flow/execution/execution_step_spec.rb +0 -100
  1109. data/spec/integration/studio/v2/flow/execution_spec.rb +0 -211
  1110. data/spec/integration/studio/v2/flow/flow_revision_spec.rb +0 -110
  1111. data/spec/integration/studio/v2/flow/test_user_spec.rb +0 -85
  1112. data/spec/integration/studio/v2/flow_spec.rb +0 -251
  1113. data/spec/integration/studio/v2/flow_validate_spec.rb +0 -46
  1114. data/spec/integration/supersim/v1/command_spec.rb +0 -184
  1115. data/spec/integration/supersim/v1/fleet_spec.rb +0 -214
  1116. data/spec/integration/supersim/v1/network_access_profile/network_access_profile_network_spec.rb +0 -176
  1117. data/spec/integration/supersim/v1/network_access_profile_spec.rb +0 -219
  1118. data/spec/integration/supersim/v1/network_spec.rb +0 -137
  1119. data/spec/integration/supersim/v1/sim_spec.rb +0 -323
  1120. data/spec/integration/supersim/v1/usage_record_spec.rb +0 -647
  1121. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -201
  1122. data/spec/integration/sync/v1/service/document_spec.rb +0 -256
  1123. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  1124. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -201
  1125. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -252
  1126. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  1127. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -201
  1128. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -252
  1129. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  1130. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -244
  1131. data/spec/integration/sync/v1/service_spec.rb +0 -261
  1132. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -232
  1133. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -163
  1134. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -222
  1135. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -312
  1136. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -101
  1137. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -83
  1138. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -107
  1139. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -145
  1140. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -290
  1141. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -325
  1142. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -191
  1143. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -185
  1144. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -91
  1145. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -88
  1146. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -69
  1147. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -115
  1148. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -290
  1149. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -96
  1150. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  1151. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -70
  1152. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -266
  1153. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -93
  1154. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  1155. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -104
  1156. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -291
  1157. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -189
  1158. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -189
  1159. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -248
  1160. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -264
  1161. data/spec/integration/trunking/v1/trunk/recording_spec.rb +0 -75
  1162. data/spec/integration/trunking/v1/trunk_spec.rb +0 -281
  1163. data/spec/integration/verify/v2/form_spec.rb +0 -47
  1164. data/spec/integration/verify/v2/service/access_token_spec.rb +0 -44
  1165. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +0 -288
  1166. data/spec/integration/verify/v2/service/entity/factor_spec.rb +0 -277
  1167. data/spec/integration/verify/v2/service/entity_spec.rb +0 -201
  1168. data/spec/integration/verify/v2/service/messaging_configuration_spec.rb +0 -228
  1169. data/spec/integration/verify/v2/service/rate_limit/bucket_spec.rb +0 -245
  1170. data/spec/integration/verify/v2/service/rate_limit_spec.rb +0 -217
  1171. data/spec/integration/verify/v2/service/verification_check_spec.rb +0 -80
  1172. data/spec/integration/verify/v2/service/verification_spec.rb +0 -318
  1173. data/spec/integration/verify/v2/service/webhook_spec.rb +0 -258
  1174. data/spec/integration/verify/v2/service_spec.rb +0 -279
  1175. data/spec/integration/video/v1/composition_hook_spec.rb +0 -407
  1176. data/spec/integration/video/v1/composition_settings_spec.rb +0 -85
  1177. data/spec/integration/video/v1/composition_spec.rb +0 -347
  1178. data/spec/integration/video/v1/recording_settings_spec.rb +0 -85
  1179. data/spec/integration/video/v1/recording_spec.rb +0 -176
  1180. data/spec/integration/video/v1/room/recording_spec.rb +0 -185
  1181. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -94
  1182. data/spec/integration/video/v1/room/room_participant/room_participant_subscribe_rule_spec.rb +0 -103
  1183. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -95
  1184. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  1185. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +0 -89
  1186. data/spec/integration/video/v1/room_spec.rb +0 -301
  1187. data/spec/integration/voice/v1/byoc_trunk_spec.rb +0 -245
  1188. data/spec/integration/voice/v1/connection_policy/connection_policy_target_spec.rb +0 -242
  1189. data/spec/integration/voice/v1/connection_policy_spec.rb +0 -221
  1190. data/spec/integration/voice/v1/dialing_permissions/bulk_country_update_spec.rb +0 -45
  1191. data/spec/integration/voice/v1/dialing_permissions/country/highrisk_special_prefix_spec.rb +0 -60
  1192. data/spec/integration/voice/v1/dialing_permissions/country_spec.rb +0 -110
  1193. data/spec/integration/voice/v1/dialing_permissions/settings_spec.rb +0 -75
  1194. data/spec/integration/voice/v1/dialing_permissions_spec.rb +0 -12
  1195. data/spec/integration/voice/v1/ip_record_spec.rb +0 -219
  1196. data/spec/integration/voice/v1/source_ip_mapping_spec.rb +0 -216
  1197. data/spec/integration/wireless/v1/command_spec.rb +0 -286
  1198. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -277
  1199. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -88
  1200. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -114
  1201. data/spec/integration/wireless/v1/sim_spec.rb +0 -325
  1202. data/spec/integration/wireless/v1/usage_record_spec.rb +0 -110
  1203. data/spec/jwt/access_token_spec.rb +0 -159
  1204. data/spec/jwt/client_capability_spec.rb +0 -104
  1205. data/spec/jwt/task_router_spec.rb +0 -172
  1206. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  1207. data/spec/rest/client_spec.rb +0 -255
  1208. data/spec/security/request_validator_spec.rb +0 -125
  1209. data/spec/spec_helper.rb +0 -38
  1210. data/spec/support/fakeweb.rb +0 -2
  1211. data/spec/twilio_spec.rb +0 -17
  1212. data/spec/twiml/messaging_response_spec.rb +0 -235
  1213. data/spec/twiml/voice_response_spec.rb +0 -847
  1214. data/spec/util/configuration_spec.rb +0 -33
  1215. data/spec/util/url_encode_spec.rb +0 -12
  1216. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  1217. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
@@ -1,619 +1,977 @@
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 - Api
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
8
-
9
- module Twilio
10
- module REST
11
- class Api < Domain
12
- class V2010 < Version
13
- class AccountContext < InstanceContext
14
- class MessageList < ListResource
15
- ##
16
- # Initialize the MessageList
17
- # @param [Version] version Version that contains the resource
18
- # @param [String] account_sid The SID of the
19
- # {Account}[https://www.twilio.com/docs/iam/api/account] that sent the message
20
- # that created the resource.
21
- # @return [MessageList] MessageList
22
- def initialize(version, account_sid: nil)
23
- super(version)
24
-
25
- # Path Solution
26
- @solution = {account_sid: account_sid}
27
- @uri = "/Accounts/#{@solution[:account_sid]}/Messages.json"
28
- end
29
-
30
- ##
31
- # Create the MessageInstance
32
- # @param [String] to The destination phone number in
33
- # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format for SMS/MMS or
34
- # {Channel user
35
- # address}[https://www.twilio.com/docs/sms/channels#channel-addresses] for other
36
- # 3rd-party channels.
37
- # @param [String] status_callback The URL we should call using the
38
- # `status_callback_method` to send status information to your application. If
39
- # specified, we POST these message status changes to the URL: `queued`, `failed`,
40
- # `sent`, `delivered`, or `undelivered`. Twilio will POST its {standard request
41
- # parameters}[https://www.twilio.com/docs/sms/twiml#request-parameters] as well as
42
- # some additional parameters including `MessageSid`, `MessageStatus`, and
43
- # `ErrorCode`. If you include this parameter with the `messaging_service_sid`, we
44
- # use this URL instead of the Status Callback URL of the {Messaging
45
- # Service}[https://www.twilio.com/docs/sms/services/api]. URLs must contain a
46
- # valid hostname and underscores are not allowed.
47
- # @param [String] application_sid The SID of the application that should receive
48
- # message status. We POST a `message_sid` parameter and a `message_status`
49
- # parameter with a value of `sent` or `failed` to the
50
- # {application}[https://www.twilio.com/docs/usage/api/applications]'s
51
- # `message_status_callback`. If a `status_callback` parameter is also passed, it
52
- # will be ignored and the application's `message_status_callback` parameter will
53
- # be used.
54
- # @param [String] max_price The maximum total price in US dollars that you will
55
- # pay for the message to be delivered. Can be a decimal value that has up to 4
56
- # decimal places. All messages are queued for delivery and the message cost is
57
- # checked before the message is sent. If the cost exceeds `max_price`, the message
58
- # will fail and a status of `Failed` is sent to the status callback. If `MaxPrice`
59
- # is not set, the message cost is not checked.
60
- # @param [Boolean] provide_feedback Whether to confirm delivery of the message.
61
- # Set this value to `true` if you are sending messages that have a trackable user
62
- # action and you intend to confirm delivery of the message using the {Message
63
- # Feedback API}[https://www.twilio.com/docs/sms/api/message-feedback-resource].
64
- # This parameter is `false` by default.
65
- # @param [String] attempt Total number of attempts made ( including this ) to send
66
- # out the message regardless of the provider used
67
- # @param [String] validity_period How long in seconds the message can remain in
68
- # our outgoing message queue. After this period elapses, the message fails and we
69
- # call your status callback. Can be between 1 and the default value of 14,400
70
- # seconds. After a message has been accepted by a carrier, however, we cannot
71
- # guarantee that the message will not be queued after this period. We recommend
72
- # that this value be at least 5 seconds.
73
- # @param [Boolean] force_delivery Reserved
74
- # @param [message.ContentRetention] content_retention Determines if the message
75
- # content can be stored or redacted based on privacy settings
76
- # @param [message.AddressRetention] address_retention Determines if the address
77
- # can be stored or obfuscated based on privacy settings
78
- # @param [Boolean] smart_encoded Whether to detect Unicode characters that have a
79
- # similar GSM-7 character and replace them. Can be: `true` or `false`.
80
- # @param [Array[String]] persistent_action Rich actions for Channels Messages.
81
- # @param [String] from A Twilio phone number in
82
- # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, an {alphanumeric
83
- # sender
84
- # ID}[https://www.twilio.com/docs/sms/send-messages#use-an-alphanumeric-sender-id],
85
- # or a {Channel Endpoint
86
- # address}[https://www.twilio.com/docs/sms/channels#channel-addresses] that is
87
- # enabled for the type of message you want to send. Phone numbers or {short
88
- # codes}[https://www.twilio.com/docs/sms/api/short-code] purchased from Twilio
89
- # also work here. You cannot, for example, spoof messages from a private cell
90
- # phone number. If you are using `messaging_service_sid`, this parameter must be
91
- # empty.
92
- # @param [String] messaging_service_sid The SID of the {Messaging
93
- # Service}[https://www.twilio.com/docs/sms/services#send-a-message-with-copilot]
94
- # you want to associate with the Message. Set this parameter to use the {Messaging
95
- # Service Settings and Copilot
96
- # Features}[https://www.twilio.com/console/sms/services] you have configured and
97
- # leave the `from` parameter empty. When only this parameter is set, Twilio will
98
- # use your enabled Copilot Features to select the `from` phone number for
99
- # delivery.
100
- # @param [String] body The text of the message you want to send. Can be up to
101
- # 1,600 characters in length.
102
- # @param [Array[String]] media_url The URL of the media to send with the message.
103
- # The media can be of type `gif`, `png`, and `jpeg` and will be formatted
104
- # correctly on the recipient's device. The media size limit is 5MB for supported
105
- # file types (JPEG, PNG, GIF) and 500KB for {other
106
- # types}[https://www.twilio.com/docs/sms/accepted-mime-types] of accepted media.
107
- # To send more than one image in the message body, provide multiple `media_url`
108
- # parameters in the POST request. You can include up to 10 `media_url` parameters
109
- # per message. You can send images in an SMS message in only the US and Canada.
110
- # @return [MessageInstance] Created MessageInstance
111
- def create(to: nil, status_callback: :unset, application_sid: :unset, max_price: :unset, provide_feedback: :unset, attempt: :unset, validity_period: :unset, force_delivery: :unset, content_retention: :unset, address_retention: :unset, smart_encoded: :unset, persistent_action: :unset, from: :unset, messaging_service_sid: :unset, body: :unset, media_url: :unset)
112
- data = Twilio::Values.of({
113
- 'To' => to,
114
- 'From' => from,
115
- 'MessagingServiceSid' => messaging_service_sid,
116
- 'Body' => body,
117
- 'MediaUrl' => Twilio.serialize_list(media_url) { |e| e },
118
- 'StatusCallback' => status_callback,
119
- 'ApplicationSid' => application_sid,
120
- 'MaxPrice' => max_price,
121
- 'ProvideFeedback' => provide_feedback,
122
- 'Attempt' => attempt,
123
- 'ValidityPeriod' => validity_period,
124
- 'ForceDelivery' => force_delivery,
125
- 'ContentRetention' => content_retention,
126
- 'AddressRetention' => address_retention,
127
- 'SmartEncoded' => smart_encoded,
128
- 'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
129
- })
130
-
131
- payload = @version.create('POST', @uri, data: data)
132
-
133
- MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], )
134
- end
135
-
136
- ##
137
- # Lists MessageInstance records from the API as a list.
138
- # Unlike stream(), this operation is eager and will load `limit` records into
139
- # memory before returning.
140
- # @param [String] to Read messages sent to only this phone number.
141
- # @param [String] from Read messages sent from only this phone number or
142
- # alphanumeric sender ID.
143
- # @param [Time] date_sent_before Filter by date sent
144
- # @param [Time] date_sent Filter by date sent
145
- # @param [Time] date_sent_after Filter by date sent
146
- # @param [Integer] limit Upper limit for the number of records to return. stream()
147
- # guarantees to never return more than limit. Default is no limit
148
- # @param [Integer] page_size Number of records to fetch per request, when
149
- # not set will use the default value of 50 records. If no page_size is defined
150
- # but a limit is defined, stream() will attempt to read the limit with the most
151
- # efficient page size, i.e. min(limit, 1000)
152
- # @return [Array] Array of up to limit results
153
- def list(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
154
- self.stream(
155
- to: to,
156
- from: from,
157
- date_sent_before: date_sent_before,
158
- date_sent: date_sent,
159
- date_sent_after: date_sent_after,
160
- limit: limit,
161
- page_size: page_size
162
- ).entries
163
- end
164
-
165
- ##
166
- # Streams MessageInstance records from the API as an Enumerable.
167
- # This operation lazily loads records as efficiently as possible until the limit
168
- # is reached.
169
- # @param [String] to Read messages sent to only this phone number.
170
- # @param [String] from Read messages sent from only this phone number or
171
- # alphanumeric sender ID.
172
- # @param [Time] date_sent_before Filter by date sent
173
- # @param [Time] date_sent Filter by date sent
174
- # @param [Time] date_sent_after Filter by date sent
175
- # @param [Integer] limit Upper limit for the number of records to return. stream()
176
- # guarantees to never return more than limit. Default is no limit.
177
- # @param [Integer] page_size Number of records to fetch per request, when
178
- # not set will use the default value of 50 records. If no page_size is defined
179
- # but a limit is defined, stream() will attempt to read the limit with the most
180
- # efficient page size, i.e. min(limit, 1000)
181
- # @return [Enumerable] Enumerable that will yield up to limit results
182
- def stream(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
183
- limits = @version.read_limits(limit, page_size)
184
-
185
- page = self.page(
186
- to: to,
187
- from: from,
188
- date_sent_before: date_sent_before,
189
- date_sent: date_sent,
190
- date_sent_after: date_sent_after,
191
- page_size: limits[:page_size],
192
- )
193
-
194
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
195
- end
196
-
197
- ##
198
- # When passed a block, yields MessageInstance records from the API.
199
- # This operation lazily loads records as efficiently as possible until the limit
200
- # is reached.
201
- def each
202
- limits = @version.read_limits
203
-
204
- page = self.page(page_size: limits[:page_size], )
205
-
206
- @version.stream(page,
207
- limit: limits[:limit],
208
- page_limit: limits[:page_limit]).each {|x| yield x}
209
- end
210
-
211
- ##
212
- # Retrieve a single page of MessageInstance records from the API.
213
- # Request is executed immediately.
214
- # @param [String] to Read messages sent to only this phone number.
215
- # @param [String] from Read messages sent from only this phone number or
216
- # alphanumeric sender ID.
217
- # @param [Time] date_sent_before Filter by date sent
218
- # @param [Time] date_sent Filter by date sent
219
- # @param [Time] date_sent_after Filter by date sent
220
- # @param [String] page_token PageToken provided by the API
221
- # @param [Integer] page_number Page Number, this value is simply for client state
222
- # @param [Integer] page_size Number of records to return, defaults to 50
223
- # @return [Page] Page of MessageInstance
224
- def page(to: :unset, from: :unset, date_sent_before: :unset, date_sent: :unset, date_sent_after: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
225
- params = Twilio::Values.of({
226
- 'To' => to,
227
- 'From' => from,
228
- 'DateSent<' => Twilio.serialize_iso8601_datetime(date_sent_before),
229
- 'DateSent' => Twilio.serialize_iso8601_datetime(date_sent),
230
- 'DateSent>' => Twilio.serialize_iso8601_datetime(date_sent_after),
231
- 'PageToken' => page_token,
232
- 'Page' => page_number,
233
- 'PageSize' => page_size,
234
- })
235
-
236
- response = @version.page('GET', @uri, params: params)
237
-
238
- MessagePage.new(@version, response, @solution)
239
- end
240
-
241
- ##
242
- # Retrieve a single page of MessageInstance records from the API.
243
- # Request is executed immediately.
244
- # @param [String] target_url API-generated URL for the requested results page
245
- # @return [Page] Page of MessageInstance
246
- def get_page(target_url)
247
- response = @version.domain.request(
248
- 'GET',
249
- target_url
250
- )
251
- MessagePage.new(@version, response, @solution)
252
- end
253
-
254
- ##
255
- # Provide a user friendly representation
256
- def to_s
257
- '#<Twilio.Api.V2010.MessageList>'
258
- end
259
- end
260
-
261
- class MessagePage < Page
262
- ##
263
- # Initialize the MessagePage
264
- # @param [Version] version Version that contains the resource
265
- # @param [Response] response Response from the API
266
- # @param [Hash] solution Path solution for the resource
267
- # @return [MessagePage] MessagePage
268
- def initialize(version, response, solution)
269
- super(version, response)
270
-
271
- # Path Solution
272
- @solution = solution
273
- end
274
-
275
- ##
276
- # Build an instance of MessageInstance
277
- # @param [Hash] payload Payload response from the API
278
- # @return [MessageInstance] MessageInstance
279
- def get_instance(payload)
280
- MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], )
281
- end
282
-
283
- ##
284
- # Provide a user friendly representation
285
- def to_s
286
- '<Twilio.Api.V2010.MessagePage>'
287
- end
288
- end
289
-
290
- class MessageContext < InstanceContext
291
- ##
292
- # Initialize the MessageContext
293
- # @param [Version] version Version that contains the resource
294
- # @param [String] account_sid The SID of the
295
- # {Account}[https://www.twilio.com/docs/iam/api/account] that created the Message
296
- # resource to fetch.
297
- # @param [String] sid The Twilio-provided string that uniquely identifies the
298
- # Message resource to fetch.
299
- # @return [MessageContext] MessageContext
300
- def initialize(version, account_sid, sid)
301
- super(version)
302
-
303
- # Path Solution
304
- @solution = {account_sid: account_sid, sid: sid, }
305
- @uri = "/Accounts/#{@solution[:account_sid]}/Messages/#{@solution[:sid]}.json"
306
-
307
- # Dependents
308
- @media = nil
309
- @feedback = nil
310
- end
311
-
312
- ##
313
- # Delete the MessageInstance
314
- # @return [Boolean] true if delete succeeds, false otherwise
315
- def delete
316
- @version.delete('DELETE', @uri)
317
- end
318
-
319
- ##
320
- # Fetch the MessageInstance
321
- # @return [MessageInstance] Fetched MessageInstance
322
- def fetch
323
- payload = @version.fetch('GET', @uri)
324
-
325
- MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
326
- end
327
-
328
- ##
329
- # Update the MessageInstance
330
- # @param [String] body The text of the message you want to send. Can be up to
331
- # 1,600 characters long.
332
- # @return [MessageInstance] Updated MessageInstance
333
- def update(body: nil)
334
- data = Twilio::Values.of({'Body' => body, })
335
-
336
- payload = @version.update('POST', @uri, data: data)
337
-
338
- MessageInstance.new(@version, payload, account_sid: @solution[:account_sid], sid: @solution[:sid], )
339
- end
340
-
341
- ##
342
- # Access the media
343
- # @return [MediaList]
344
- # @return [MediaContext] if sid was passed.
345
- def media(sid=:unset)
346
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
347
-
348
- if sid != :unset
349
- return MediaContext.new(@version, @solution[:account_sid], @solution[:sid], sid, )
350
- end
351
-
352
- unless @media
353
- @media = MediaList.new(@version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
354
- end
355
-
356
- @media
357
- end
358
-
359
- ##
360
- # Access the feedback
361
- # @return [FeedbackList]
362
- # @return [FeedbackContext]
363
- def feedback
364
- unless @feedback
365
- @feedback = FeedbackList.new(
366
- @version,
367
- account_sid: @solution[:account_sid],
368
- message_sid: @solution[:sid],
369
- )
370
- end
371
-
372
- @feedback
373
- end
374
-
375
- ##
376
- # Provide a user friendly representation
377
- def to_s
378
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
379
- "#<Twilio.Api.V2010.MessageContext #{context}>"
380
- end
381
-
382
- ##
383
- # Provide a detailed, user friendly representation
384
- def inspect
385
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
386
- "#<Twilio.Api.V2010.MessageContext #{context}>"
387
- end
388
- end
389
-
390
- class MessageInstance < InstanceResource
391
- ##
392
- # Initialize the MessageInstance
393
- # @param [Version] version Version that contains the resource
394
- # @param [Hash] payload payload that contains response from Twilio
395
- # @param [String] account_sid The SID of the
396
- # {Account}[https://www.twilio.com/docs/iam/api/account] that sent the message
397
- # that created the resource.
398
- # @param [String] sid The Twilio-provided string that uniquely identifies the
399
- # Message resource to fetch.
400
- # @return [MessageInstance] MessageInstance
401
- def initialize(version, payload, account_sid: nil, sid: nil)
402
- super(version)
403
-
404
- # Marshaled Properties
405
- @properties = {
406
- 'body' => payload['body'],
407
- 'num_segments' => payload['num_segments'],
408
- 'direction' => payload['direction'],
409
- 'from' => payload['from'],
410
- 'to' => payload['to'],
411
- 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
412
- 'price' => payload['price'],
413
- 'error_message' => payload['error_message'],
414
- 'uri' => payload['uri'],
415
- 'account_sid' => payload['account_sid'],
416
- 'num_media' => payload['num_media'],
417
- 'status' => payload['status'],
418
- 'messaging_service_sid' => payload['messaging_service_sid'],
419
- 'sid' => payload['sid'],
420
- 'date_sent' => Twilio.deserialize_rfc2822(payload['date_sent']),
421
- 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
422
- 'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
423
- 'price_unit' => payload['price_unit'],
424
- 'api_version' => payload['api_version'],
425
- 'subresource_uris' => payload['subresource_uris'],
426
- }
427
-
428
- # Context
429
- @instance_context = nil
430
- @params = {'account_sid' => account_sid, 'sid' => sid || @properties['sid'], }
431
- end
432
-
433
- ##
434
- # Generate an instance context for the instance, the context is capable of
435
- # performing various actions. All instance actions are proxied to the context
436
- # @return [MessageContext] MessageContext for this MessageInstance
437
- def context
438
- unless @instance_context
439
- @instance_context = MessageContext.new(@version, @params['account_sid'], @params['sid'], )
440
- end
441
- @instance_context
442
- end
443
-
444
- ##
445
- # @return [String] The message text
446
- def body
447
- @properties['body']
448
- end
449
-
450
- ##
451
- # @return [String] The number of messages used to deliver the message body
452
- def num_segments
453
- @properties['num_segments']
454
- end
455
-
456
- ##
457
- # @return [message.Direction] The direction of the message
458
- def direction
459
- @properties['direction']
460
- end
461
-
462
- ##
463
- # @return [String] The phone number that initiated the message
464
- def from
465
- @properties['from']
466
- end
467
-
468
- ##
469
- # @return [String] The phone number that received the message
470
- def to
471
- @properties['to']
472
- end
473
-
474
- ##
475
- # @return [Time] The RFC 2822 date and time in GMT that the resource was last updated
476
- def date_updated
477
- @properties['date_updated']
478
- end
479
-
480
- ##
481
- # @return [String] The amount billed for the message
482
- def price
483
- @properties['price']
484
- end
485
-
486
- ##
487
- # @return [String] The description of the error_code
488
- def error_message
489
- @properties['error_message']
490
- end
491
-
492
- ##
493
- # @return [String] The URI of the resource, relative to `https://api.twilio.com`
494
- def uri
495
- @properties['uri']
496
- end
497
-
498
- ##
499
- # @return [String] The SID of the Account that created the resource
500
- def account_sid
501
- @properties['account_sid']
502
- end
503
-
504
- ##
505
- # @return [String] The number of media files associated with the message
506
- def num_media
507
- @properties['num_media']
508
- end
509
-
510
- ##
511
- # @return [message.Status] The status of the message
512
- def status
513
- @properties['status']
514
- end
515
-
516
- ##
517
- # @return [String] The SID of the Messaging Service used with the message.
518
- def messaging_service_sid
519
- @properties['messaging_service_sid']
520
- end
521
-
522
- ##
523
- # @return [String] The unique string that identifies the resource
524
- def sid
525
- @properties['sid']
526
- end
527
-
528
- ##
529
- # @return [Time] The RFC 2822 date and time in GMT when the message was sent
530
- def date_sent
531
- @properties['date_sent']
532
- end
533
-
534
- ##
535
- # @return [Time] The RFC 2822 date and time in GMT that the resource was created
536
- def date_created
537
- @properties['date_created']
538
- end
539
-
540
- ##
541
- # @return [String] The error code associated with the message
542
- def error_code
543
- @properties['error_code']
544
- end
545
-
546
- ##
547
- # @return [String] The currency in which price is measured
548
- def price_unit
549
- @properties['price_unit']
550
- end
551
-
552
- ##
553
- # @return [String] The API version used to process the message
554
- def api_version
555
- @properties['api_version']
556
- end
557
-
558
- ##
559
- # @return [String] A list of related resources identified by their relative URIs
560
- def subresource_uris
561
- @properties['subresource_uris']
562
- end
563
-
564
- ##
565
- # Delete the MessageInstance
566
- # @return [Boolean] true if delete succeeds, false otherwise
567
- def delete
568
- context.delete
569
- end
570
-
571
- ##
572
- # Fetch the MessageInstance
573
- # @return [MessageInstance] Fetched MessageInstance
574
- def fetch
575
- context.fetch
576
- end
577
-
578
- ##
579
- # Update the MessageInstance
580
- # @param [String] body The text of the message you want to send. Can be up to
581
- # 1,600 characters long.
582
- # @return [MessageInstance] Updated MessageInstance
583
- def update(body: nil)
584
- context.update(body: body, )
585
- end
586
-
587
- ##
588
- # Access the media
589
- # @return [media] media
590
- def media
591
- context.media
592
- end
593
-
594
- ##
595
- # Access the feedback
596
- # @return [feedback] feedback
597
- def feedback
598
- context.feedback
599
- end
600
14
 
601
- ##
602
- # Provide a user friendly representation
603
- def to_s
604
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
605
- "<Twilio.Api.V2010.MessageInstance #{values}>"
606
- end
607
15
 
608
- ##
609
- # Provide a detailed, user friendly representation
610
- def inspect
611
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
612
- "<Twilio.Api.V2010.MessageInstance #{values}>"
16
+ module Twilio
17
+ module REST
18
+ class Api < ApiBase
19
+ class V2010 < Version
20
+ class AccountContext < InstanceContext
21
+
22
+ class MessageList < ListResource
23
+
24
+ ##
25
+ # Initialize the MessageList
26
+ # @param [Version] version Version that contains the resource
27
+ # @return [MessageList] MessageList
28
+ def initialize(version, account_sid: nil)
29
+ super(version)
30
+
31
+ # Path Solution
32
+ @solution = { account_sid: account_sid }
33
+ @uri = "/Accounts/#{@solution[:account_sid]}/Messages.json"
34
+
35
+ end
36
+ ##
37
+ # Create the MessageInstance
38
+ # @param [String] to The recipient's phone number in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (for SMS/MMS) or [channel address](https://www.twilio.com/docs/messaging/channels), e.g. `whatsapp:+15552229999`.
39
+ # @param [String] status_callback The URL of the endpoint to which Twilio sends [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url). URL must contain a valid hostname and underscores are not allowed. If you include this parameter with the `messaging_service_sid`, Twilio uses this URL instead of the Status Callback URL of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource).
40
+ # @param [String] application_sid The SID of the associated [TwiML Application](https://www.twilio.com/docs/usage/api/applications). [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url) are sent to the TwiML App's `message_status_callback` URL. Note that the `status_callback` parameter of a request takes priority over the `application_sid` parameter; if both are included `application_sid` is ignored.
41
+ # @param [Float] max_price [OBSOLETE] This parameter will no longer have any effect as of 2024-06-03.
42
+ # @param [Boolean] provide_feedback Boolean indicating whether or not you intend to provide delivery confirmation feedback to Twilio (used in conjunction with the [Message Feedback subresource](https://www.twilio.com/docs/sms/api/message-feedback-resource)). Default value is `false`.
43
+ # @param [String] attempt Total number of attempts made (including this request) to send the message regardless of the provider used
44
+ # @param [String] validity_period The maximum length in seconds that the Message can remain in Twilio's outgoing message queue. If a queued Message exceeds the `validity_period`, the Message is not sent. Accepted values are integers from `1` to `36000`. Default value is `36000`. A `validity_period` greater than `5` is recommended. [Learn more about the validity period](https://www.twilio.com/blog/take-more-control-of-outbound-messages-using-validity-period-html)
45
+ # @param [Boolean] force_delivery Reserved
46
+ # @param [ContentRetention] content_retention
47
+ # @param [AddressRetention] address_retention
48
+ # @param [Boolean] smart_encoded Whether to detect Unicode characters that have a similar GSM-7 character and replace them. Can be: `true` or `false`.
49
+ # @param [Array[String]] persistent_action Rich actions for non-SMS/MMS channels. Used for [sending location in WhatsApp messages](https://www.twilio.com/docs/whatsapp/message-features#location-messages-with-whatsapp).
50
+ # @param [TrafficType] traffic_type
51
+ # @param [Boolean] shorten_urls For Messaging Services with [Link Shortening configured](https://www.twilio.com/docs/messaging/features/link-shortening) only: A Boolean indicating whether or not Twilio should shorten links in the `body` of the Message. Default value is `false`. If `true`, the `messaging_service_sid` parameter must also be provided.
52
+ # @param [ScheduleType] schedule_type
53
+ # @param [Time] send_at The time that Twilio will send the message. Must be in ISO 8601 format.
54
+ # @param [Boolean] send_as_mms If set to `true`, Twilio delivers the message as a single MMS message, regardless of the presence of media.
55
+ # @param [String] content_variables For [Content Editor/API](https://www.twilio.com/docs/content) only: Key-value pairs of [Template variables](https://www.twilio.com/docs/content/using-variables-with-content-api) and their substitution values. `content_sid` parameter must also be provided. If values are not defined in the `content_variables` parameter, the [Template's default placeholder values](https://www.twilio.com/docs/content/content-api-resources#create-templates) are used.
56
+ # @param [RiskCheck] risk_check
57
+ # @param [String] from The sender's Twilio phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](https://www.twilio.com/docs/sms/quickstart), [Wireless SIM](https://www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](https://www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g., `whatsapp:+15554449999`). The value of the `from` parameter must be a sender that is hosted within Twilio and belongs to the Account creating the Message. If you are using `messaging_service_sid`, this parameter can be empty (Twilio assigns a `from` value from the Messaging Service's Sender Pool) or you can provide a specific sender from your Sender Pool.
58
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/services) you want to associate with the Message. When this parameter is provided and the `from` parameter is omitted, Twilio selects the optimal sender from the Messaging Service's Sender Pool. You may also provide a `from` parameter if you want to use a specific Sender from the Sender Pool.
59
+ # @param [String] body The text content of the outgoing message. Can be up to 1,600 characters in length. SMS only: If the `body` contains more than 160 [GSM-7](https://www.twilio.com/docs/glossary/what-is-gsm-7-character-encoding) characters (or 70 [UCS-2](https://www.twilio.com/docs/glossary/what-is-ucs-2-character-encoding) characters), the message is segmented and charged accordingly. For long `body` text, consider using the [send_as_mms parameter](https://www.twilio.com/blog/mms-for-long-text-messages).
60
+ # @param [Array[String]] media_url The URL of media to include in the Message content. `jpeg`, `jpg`, `gif`, and `png` file types are fully supported by Twilio and content is formatted for delivery on destination devices. The media size limit is 5 MB for supported file types (`jpeg`, `jpg`, `png`, `gif`) and 500 KB for [other types](https://www.twilio.com/docs/messaging/guides/accepted-mime-types) of accepted media. To send more than one image in the message, provide multiple `media_url` parameters in the POST request. You can include up to ten `media_url` parameters per message. [International](https://support.twilio.com/hc/en-us/articles/223179808-Sending-and-receiving-MMS-messages) and [carrier](https://support.twilio.com/hc/en-us/articles/223133707-Is-MMS-supported-for-all-carriers-in-US-and-Canada-) limits apply.
61
+ # @param [String] content_sid For [Content Editor/API](https://www.twilio.com/docs/content) only: The SID of the Content Template to be used with the Message, e.g., `HXXXXXXXXXXXXXXXXXXXXXXXXXXXXX`. If this parameter is not provided, a Content Template is not used. Find the SID in the Console on the Content Editor page. For Content API users, the SID is found in Twilio's response when [creating the Template](https://www.twilio.com/docs/content/content-api-resources#create-templates) or by [fetching your Templates](https://www.twilio.com/docs/content/content-api-resources#fetch-all-content-resources).
62
+ # @return [MessageInstance] Created MessageInstance
63
+ def create(
64
+ to: nil,
65
+ status_callback: :unset,
66
+ application_sid: :unset,
67
+ max_price: :unset,
68
+ provide_feedback: :unset,
69
+ attempt: :unset,
70
+ validity_period: :unset,
71
+ force_delivery: :unset,
72
+ content_retention: :unset,
73
+ address_retention: :unset,
74
+ smart_encoded: :unset,
75
+ persistent_action: :unset,
76
+ traffic_type: :unset,
77
+ shorten_urls: :unset,
78
+ schedule_type: :unset,
79
+ send_at: :unset,
80
+ send_as_mms: :unset,
81
+ content_variables: :unset,
82
+ risk_check: :unset,
83
+ from: :unset,
84
+ messaging_service_sid: :unset,
85
+ body: :unset,
86
+ media_url: :unset,
87
+ content_sid: :unset
88
+ )
89
+
90
+ data = Twilio::Values.of({
91
+ 'To' => to,
92
+ 'StatusCallback' => status_callback,
93
+ 'ApplicationSid' => application_sid,
94
+ 'MaxPrice' => max_price,
95
+ 'ProvideFeedback' => provide_feedback,
96
+ 'Attempt' => attempt,
97
+ 'ValidityPeriod' => validity_period,
98
+ 'ForceDelivery' => force_delivery,
99
+ 'ContentRetention' => content_retention,
100
+ 'AddressRetention' => address_retention,
101
+ 'SmartEncoded' => smart_encoded,
102
+ 'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
103
+ 'TrafficType' => traffic_type,
104
+ 'ShortenUrls' => shorten_urls,
105
+ 'ScheduleType' => schedule_type,
106
+ 'SendAt' => Twilio.serialize_iso8601_datetime(send_at),
107
+ 'SendAsMms' => send_as_mms,
108
+ 'ContentVariables' => content_variables,
109
+ 'RiskCheck' => risk_check,
110
+ 'From' => from,
111
+ 'MessagingServiceSid' => messaging_service_sid,
112
+ 'Body' => body,
113
+ 'MediaUrl' => Twilio.serialize_list(media_url) { |e| e },
114
+ 'ContentSid' => content_sid,
115
+ })
116
+
117
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
118
+
119
+
120
+
121
+
122
+
123
+ payload = @version.create('POST', @uri, data: data, headers: headers)
124
+ MessageInstance.new(
125
+ @version,
126
+ payload,
127
+ account_sid: @solution[:account_sid],
128
+ )
129
+ end
130
+
131
+ ##
132
+ # Create the MessageInstanceMetadata
133
+ # @param [String] to The recipient's phone number in [E.164](https://www.twilio.com/docs/glossary/what-e164) format (for SMS/MMS) or [channel address](https://www.twilio.com/docs/messaging/channels), e.g. `whatsapp:+15552229999`.
134
+ # @param [String] status_callback The URL of the endpoint to which Twilio sends [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url). URL must contain a valid hostname and underscores are not allowed. If you include this parameter with the `messaging_service_sid`, Twilio uses this URL instead of the Status Callback URL of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource).
135
+ # @param [String] application_sid The SID of the associated [TwiML Application](https://www.twilio.com/docs/usage/api/applications). [Message status callback requests](https://www.twilio.com/docs/sms/api/message-resource#twilios-request-to-the-statuscallback-url) are sent to the TwiML App's `message_status_callback` URL. Note that the `status_callback` parameter of a request takes priority over the `application_sid` parameter; if both are included `application_sid` is ignored.
136
+ # @param [Float] max_price [OBSOLETE] This parameter will no longer have any effect as of 2024-06-03.
137
+ # @param [Boolean] provide_feedback Boolean indicating whether or not you intend to provide delivery confirmation feedback to Twilio (used in conjunction with the [Message Feedback subresource](https://www.twilio.com/docs/sms/api/message-feedback-resource)). Default value is `false`.
138
+ # @param [String] attempt Total number of attempts made (including this request) to send the message regardless of the provider used
139
+ # @param [String] validity_period The maximum length in seconds that the Message can remain in Twilio's outgoing message queue. If a queued Message exceeds the `validity_period`, the Message is not sent. Accepted values are integers from `1` to `36000`. Default value is `36000`. A `validity_period` greater than `5` is recommended. [Learn more about the validity period](https://www.twilio.com/blog/take-more-control-of-outbound-messages-using-validity-period-html)
140
+ # @param [Boolean] force_delivery Reserved
141
+ # @param [ContentRetention] content_retention
142
+ # @param [AddressRetention] address_retention
143
+ # @param [Boolean] smart_encoded Whether to detect Unicode characters that have a similar GSM-7 character and replace them. Can be: `true` or `false`.
144
+ # @param [Array[String]] persistent_action Rich actions for non-SMS/MMS channels. Used for [sending location in WhatsApp messages](https://www.twilio.com/docs/whatsapp/message-features#location-messages-with-whatsapp).
145
+ # @param [TrafficType] traffic_type
146
+ # @param [Boolean] shorten_urls For Messaging Services with [Link Shortening configured](https://www.twilio.com/docs/messaging/features/link-shortening) only: A Boolean indicating whether or not Twilio should shorten links in the `body` of the Message. Default value is `false`. If `true`, the `messaging_service_sid` parameter must also be provided.
147
+ # @param [ScheduleType] schedule_type
148
+ # @param [Time] send_at The time that Twilio will send the message. Must be in ISO 8601 format.
149
+ # @param [Boolean] send_as_mms If set to `true`, Twilio delivers the message as a single MMS message, regardless of the presence of media.
150
+ # @param [String] content_variables For [Content Editor/API](https://www.twilio.com/docs/content) only: Key-value pairs of [Template variables](https://www.twilio.com/docs/content/using-variables-with-content-api) and their substitution values. `content_sid` parameter must also be provided. If values are not defined in the `content_variables` parameter, the [Template's default placeholder values](https://www.twilio.com/docs/content/content-api-resources#create-templates) are used.
151
+ # @param [RiskCheck] risk_check
152
+ # @param [String] from The sender's Twilio phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](https://www.twilio.com/docs/sms/quickstart), [Wireless SIM](https://www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](https://www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g., `whatsapp:+15554449999`). The value of the `from` parameter must be a sender that is hosted within Twilio and belongs to the Account creating the Message. If you are using `messaging_service_sid`, this parameter can be empty (Twilio assigns a `from` value from the Messaging Service's Sender Pool) or you can provide a specific sender from your Sender Pool.
153
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/services) you want to associate with the Message. When this parameter is provided and the `from` parameter is omitted, Twilio selects the optimal sender from the Messaging Service's Sender Pool. You may also provide a `from` parameter if you want to use a specific Sender from the Sender Pool.
154
+ # @param [String] body The text content of the outgoing message. Can be up to 1,600 characters in length. SMS only: If the `body` contains more than 160 [GSM-7](https://www.twilio.com/docs/glossary/what-is-gsm-7-character-encoding) characters (or 70 [UCS-2](https://www.twilio.com/docs/glossary/what-is-ucs-2-character-encoding) characters), the message is segmented and charged accordingly. For long `body` text, consider using the [send_as_mms parameter](https://www.twilio.com/blog/mms-for-long-text-messages).
155
+ # @param [Array[String]] media_url The URL of media to include in the Message content. `jpeg`, `jpg`, `gif`, and `png` file types are fully supported by Twilio and content is formatted for delivery on destination devices. The media size limit is 5 MB for supported file types (`jpeg`, `jpg`, `png`, `gif`) and 500 KB for [other types](https://www.twilio.com/docs/messaging/guides/accepted-mime-types) of accepted media. To send more than one image in the message, provide multiple `media_url` parameters in the POST request. You can include up to ten `media_url` parameters per message. [International](https://support.twilio.com/hc/en-us/articles/223179808-Sending-and-receiving-MMS-messages) and [carrier](https://support.twilio.com/hc/en-us/articles/223133707-Is-MMS-supported-for-all-carriers-in-US-and-Canada-) limits apply.
156
+ # @param [String] content_sid For [Content Editor/API](https://www.twilio.com/docs/content) only: The SID of the Content Template to be used with the Message, e.g., `HXXXXXXXXXXXXXXXXXXXXXXXXXXXXX`. If this parameter is not provided, a Content Template is not used. Find the SID in the Console on the Content Editor page. For Content API users, the SID is found in Twilio's response when [creating the Template](https://www.twilio.com/docs/content/content-api-resources#create-templates) or by [fetching your Templates](https://www.twilio.com/docs/content/content-api-resources#fetch-all-content-resources).
157
+ # @return [MessageInstance] Created MessageInstance
158
+ def create_with_metadata(
159
+ to: nil,
160
+ status_callback: :unset,
161
+ application_sid: :unset,
162
+ max_price: :unset,
163
+ provide_feedback: :unset,
164
+ attempt: :unset,
165
+ validity_period: :unset,
166
+ force_delivery: :unset,
167
+ content_retention: :unset,
168
+ address_retention: :unset,
169
+ smart_encoded: :unset,
170
+ persistent_action: :unset,
171
+ traffic_type: :unset,
172
+ shorten_urls: :unset,
173
+ schedule_type: :unset,
174
+ send_at: :unset,
175
+ send_as_mms: :unset,
176
+ content_variables: :unset,
177
+ risk_check: :unset,
178
+ from: :unset,
179
+ messaging_service_sid: :unset,
180
+ body: :unset,
181
+ media_url: :unset,
182
+ content_sid: :unset
183
+ )
184
+
185
+ data = Twilio::Values.of({
186
+ 'To' => to,
187
+ 'StatusCallback' => status_callback,
188
+ 'ApplicationSid' => application_sid,
189
+ 'MaxPrice' => max_price,
190
+ 'ProvideFeedback' => provide_feedback,
191
+ 'Attempt' => attempt,
192
+ 'ValidityPeriod' => validity_period,
193
+ 'ForceDelivery' => force_delivery,
194
+ 'ContentRetention' => content_retention,
195
+ 'AddressRetention' => address_retention,
196
+ 'SmartEncoded' => smart_encoded,
197
+ 'PersistentAction' => Twilio.serialize_list(persistent_action) { |e| e },
198
+ 'TrafficType' => traffic_type,
199
+ 'ShortenUrls' => shorten_urls,
200
+ 'ScheduleType' => schedule_type,
201
+ 'SendAt' => Twilio.serialize_iso8601_datetime(send_at),
202
+ 'SendAsMms' => send_as_mms,
203
+ 'ContentVariables' => content_variables,
204
+ 'RiskCheck' => risk_check,
205
+ 'From' => from,
206
+ 'MessagingServiceSid' => messaging_service_sid,
207
+ 'Body' => body,
208
+ 'MediaUrl' => Twilio.serialize_list(media_url) { |e| e },
209
+ 'ContentSid' => content_sid,
210
+ })
211
+
212
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
213
+
214
+
215
+
216
+
217
+
218
+ response = @version.create_with_metadata('POST', @uri, data: data, headers: headers)
219
+ message_instance = MessageInstance.new(
220
+ @version,
221
+ response.body,
222
+ account_sid: @solution[:account_sid],
223
+ )
224
+ MessageInstanceMetadata.new(
225
+ @version,
226
+ message_instance,
227
+ response.headers,
228
+ response.status_code
229
+ )
230
+ end
231
+
232
+
233
+ ##
234
+ # Lists MessageInstance records from the API as a list.
235
+ # Unlike stream(), this operation is eager and will load `limit` records into
236
+ # memory before returning.
237
+ # @param [String] to Filter by recipient. For example: Set this parameter to `+15558881111` to retrieve a list of Message resources sent to `+15558881111`.
238
+ # @param [String] from Filter by sender. For example: Set this parameter to `+15552229999` to retrieve a list of Message resources sent by `+15552229999`.
239
+ # @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
240
+ # @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
241
+ # @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
242
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
243
+ # guarantees to never return more than limit. Default is no limit
244
+ # @param [Integer] page_size Number of records to fetch per request, when
245
+ # not set will use the default value of 50 records. If no page_size is defined
246
+ # but a limit is defined, stream() will attempt to read the limit with the most
247
+ # efficient page size, i.e. min(limit, 1000)
248
+ # @return [Array] Array of up to limit results
249
+ def list(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
250
+ self.stream(
251
+ to: to,
252
+ from: from,
253
+ date_sent: date_sent,
254
+ date_sent_before: date_sent_before,
255
+ date_sent_after: date_sent_after,
256
+ limit: limit,
257
+ page_size: page_size
258
+ ).entries
259
+ end
260
+
261
+ ##
262
+ # Streams Instance records from the API as an Enumerable.
263
+ # This operation lazily loads records as efficiently as possible until the limit
264
+ # is reached.
265
+ # @param [String] to Filter by recipient. For example: Set this parameter to `+15558881111` to retrieve a list of Message resources sent to `+15558881111`.
266
+ # @param [String] from Filter by sender. For example: Set this parameter to `+15552229999` to retrieve a list of Message resources sent by `+15552229999`.
267
+ # @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
268
+ # @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
269
+ # @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
270
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
271
+ # guarantees to never return more than limit. Default is no limit
272
+ # @param [Integer] page_size Number of records to fetch per request, when
273
+ # not set will use the default value of 50 records. If no page_size is defined
274
+ # but a limit is defined, stream() will attempt to read the limit with the most
275
+ # efficient page size, i.e. min(limit, 1000)
276
+ # @return [Enumerable] Enumerable that will yield up to limit results
277
+ def stream(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
278
+ limits = @version.read_limits(limit, page_size)
279
+
280
+ page = self.page(
281
+ to: to,
282
+ from: from,
283
+ date_sent: date_sent,
284
+ date_sent_before: date_sent_before,
285
+ date_sent_after: date_sent_after,
286
+ page_size: limits[:page_size], )
287
+
288
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
289
+ end
290
+
291
+ ##
292
+ # Lists MessagePageMetadata records from the API as a list.
293
+ # @param [String] to Filter by recipient. For example: Set this parameter to `+15558881111` to retrieve a list of Message resources sent to `+15558881111`.
294
+ # @param [String] from Filter by sender. For example: Set this parameter to `+15552229999` to retrieve a list of Message resources sent by `+15552229999`.
295
+ # @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
296
+ # @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
297
+ # @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
298
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
299
+ # guarantees to never return more than limit. Default is no limit
300
+ # @param [Integer] page_size Number of records to fetch per request, when
301
+ # not set will use the default value of 50 records. If no page_size is defined
302
+ # but a limit is defined, stream() will attempt to read the limit with the most
303
+ # efficient page size, i.e. min(limit, 1000)
304
+ # @return [Array] Array of up to limit results
305
+ def list_with_metadata(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, limit: nil, page_size: nil)
306
+ limits = @version.read_limits(limit, page_size)
307
+ params = Twilio::Values.of({
308
+ 'To' => to,
309
+ 'From' => from,
310
+ 'DateSent' => Twilio.serialize_iso8601_datetime(date_sent),
311
+ 'DateSent<' => Twilio.serialize_iso8601_datetime(date_sent_before),
312
+ 'DateSent>' => Twilio.serialize_iso8601_datetime(date_sent_after),
313
+
314
+ 'PageSize' => limits[:page_size],
315
+ });
316
+ headers = Twilio::Values.of({})
317
+
318
+ response = @version.page('GET', @uri, params: params, headers: headers)
319
+
320
+ MessagePageMetadata.new(@version, response, @solution, limits[:limit])
321
+ end
322
+
323
+ ##
324
+ # When passed a block, yields MessageInstance records from the API.
325
+ # This operation lazily loads records as efficiently as possible until the limit
326
+ # is reached.
327
+ def each
328
+ limits = @version.read_limits
329
+
330
+ page = self.page(page_size: limits[:page_size], )
331
+
332
+ @version.stream(page,
333
+ limit: limits[:limit],
334
+ page_limit: limits[:page_limit]).each {|x| yield x}
335
+ end
336
+
337
+ ##
338
+ # Retrieve a single page of MessageInstance records from the API.
339
+ # Request is executed immediately.
340
+ # @param [String] to Filter by recipient. For example: Set this parameter to `+15558881111` to retrieve a list of Message resources sent to `+15558881111`.
341
+ # @param [String] from Filter by sender. For example: Set this parameter to `+15552229999` to retrieve a list of Message resources sent by `+15552229999`.
342
+ # @param [Time] date_sent Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
343
+ # @param [Time] date_sent_before Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
344
+ # @param [Time] date_sent_after Filter by Message `sent_date`. Accepts GMT dates in the following formats: `YYYY-MM-DD` (to find Messages with a specific `sent_date`), `<=YYYY-MM-DD` (to find Messages with `sent_date`s on and before a specific date), and `>=YYYY-MM-DD` (to find Messages with `sent_dates` on and after a specific date).
345
+ # @param [String] page_token PageToken provided by the API
346
+ # @param [Integer] page_number Page Number, this value is simply for client state
347
+ # @param [Integer] page_size Number of records to return, defaults to 50
348
+ # @return [Page] Page of MessageInstance
349
+ def page(to: :unset, from: :unset, date_sent: :unset, date_sent_before: :unset, date_sent_after: :unset, page_token: :unset, page_number: :unset,page_size: :unset)
350
+ params = Twilio::Values.of({
351
+ 'To' => to,
352
+ 'From' => from,
353
+ 'DateSent' => Twilio.serialize_iso8601_datetime(date_sent),
354
+ 'DateSent<' => Twilio.serialize_iso8601_datetime(date_sent_before),
355
+ 'DateSent>' => Twilio.serialize_iso8601_datetime(date_sent_after),
356
+ 'PageToken' => page_token,
357
+ 'Page' => page_number,
358
+ 'PageSize' => page_size,
359
+ })
360
+ headers = Twilio::Values.of({})
361
+
362
+
363
+
364
+ response = @version.page('GET', @uri, params: params, headers: headers)
365
+
366
+ MessagePage.new(@version, response, @solution)
367
+ end
368
+
369
+ ##
370
+ # Retrieve a single page of MessageInstance records from the API.
371
+ # Request is executed immediately.
372
+ # @param [String] target_url API-generated URL for the requested results page
373
+ # @return [Page] Page of MessageInstance
374
+ def get_page(target_url)
375
+ response = @version.domain.request(
376
+ 'GET',
377
+ target_url
378
+ )
379
+ MessagePage.new(@version, response, @solution)
380
+ end
381
+
382
+
383
+
384
+ # Provide a user friendly representation
385
+ def to_s
386
+ '#<Twilio.Api.V2010.MessageList>'
387
+ end
388
+ end
389
+
390
+
391
+ class MessageContext < InstanceContext
392
+ ##
393
+ # Initialize the MessageContext
394
+ # @param [Version] version Version that contains the resource
395
+ # @param [String] account_sid The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Message resources to update.
396
+ # @param [String] sid The SID of the Message resource to be updated
397
+ # @return [MessageContext] MessageContext
398
+ def initialize(version, account_sid, sid)
399
+ super(version)
400
+
401
+
402
+ # Path Solution
403
+ @solution = { account_sid: account_sid, sid: sid, }
404
+ @uri = "/Accounts/#{@solution[:account_sid]}/Messages/#{@solution[:sid]}.json"
405
+
406
+ # Dependents
407
+ @feedback = nil
408
+ @media = nil
409
+ end
410
+ ##
411
+ # Delete the MessageInstance
412
+ # @return [Boolean] True if delete succeeds, false otherwise
413
+ def delete
414
+
415
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
416
+
417
+
418
+
419
+
420
+ @version.delete('DELETE', @uri, headers: headers)
421
+ end
422
+
423
+ ##
424
+ # Delete the MessageInstanceMetadata
425
+ # @return [Boolean] True if delete succeeds, false otherwise
426
+ def delete_with_metadata
427
+
428
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
429
+
430
+
431
+
432
+ response = @version.delete_with_metadata('DELETE', @uri, headers: headers)
433
+ message_instance = MessageInstance.new(
434
+ @version,
435
+ response.body,
436
+ account_sid: @solution[:account_sid],
437
+ sid: @solution[:sid],
438
+ )
439
+ MessageInstanceMetadata.new(@version, message_instance, response.headers, response.status_code)
440
+ end
441
+
442
+ ##
443
+ # Fetch the MessageInstance
444
+ # @return [MessageInstance] Fetched MessageInstance
445
+ def fetch
446
+
447
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
448
+
449
+
450
+
451
+
452
+
453
+ payload = @version.fetch('GET', @uri, headers: headers)
454
+ MessageInstance.new(
455
+ @version,
456
+ payload,
457
+ account_sid: @solution[:account_sid],
458
+ sid: @solution[:sid],
459
+ )
460
+ end
461
+
462
+ ##
463
+ # Fetch the MessageInstanceMetadata
464
+ # @return [MessageInstance] Fetched MessageInstance
465
+ def fetch_with_metadata
466
+
467
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
468
+
469
+
470
+
471
+
472
+
473
+ response = @version.fetch_with_metadata('GET', @uri, headers: headers)
474
+ message_instance = MessageInstance.new(
475
+ @version,
476
+ response.body,
477
+ account_sid: @solution[:account_sid],
478
+ sid: @solution[:sid],
479
+ )
480
+ MessageInstanceMetadata.new(
481
+ @version,
482
+ message_instance,
483
+ response.headers,
484
+ response.status_code
485
+ )
486
+ end
487
+
488
+ ##
489
+ # Update the MessageInstance
490
+ # @param [String] body The new `body` of the Message resource. To redact the text content of a Message, this parameter's value must be an empty string
491
+ # @param [UpdateStatus] status
492
+ # @return [MessageInstance] Updated MessageInstance
493
+ def update(
494
+ body: :unset,
495
+ status: :unset
496
+ )
497
+
498
+ data = Twilio::Values.of({
499
+ 'Body' => body,
500
+ 'Status' => status,
501
+ })
502
+
503
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
504
+
505
+
506
+
507
+
508
+
509
+ payload = @version.update('POST', @uri, data: data, headers: headers)
510
+ MessageInstance.new(
511
+ @version,
512
+ payload,
513
+ account_sid: @solution[:account_sid],
514
+ sid: @solution[:sid],
515
+ )
516
+ end
517
+
518
+ ##
519
+ # Update the MessageInstanceMetadata
520
+ # @param [String] body The new `body` of the Message resource. To redact the text content of a Message, this parameter's value must be an empty string
521
+ # @param [UpdateStatus] status
522
+ # @return [MessageInstance] Updated MessageInstance
523
+ def update_with_metadata(
524
+ body: :unset,
525
+ status: :unset
526
+ )
527
+
528
+ data = Twilio::Values.of({
529
+ 'Body' => body,
530
+ 'Status' => status,
531
+ })
532
+
533
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
534
+
535
+
536
+
537
+
538
+
539
+ response = @version.update_with_metadata('POST', @uri, data: data, headers: headers)
540
+ message_instance = MessageInstance.new(
541
+ @version,
542
+ response.body,
543
+ account_sid: @solution[:account_sid],
544
+ sid: @solution[:sid],
545
+ )
546
+ MessageInstanceMetadata.new(
547
+ @version,
548
+ message_instance,
549
+ response.headers,
550
+ response.status_code
551
+ )
552
+ end
553
+
554
+ ##
555
+ # Access the feedback
556
+ # @return [FeedbackList]
557
+ # @return [FeedbackContext]
558
+ def feedback
559
+ unless @feedback
560
+ @feedback = FeedbackList.new(
561
+ @version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
562
+ end
563
+ @feedback
564
+ end
565
+ ##
566
+ # Access the media
567
+ # @return [MediaList]
568
+ # @return [MediaContext] if sid was passed.
569
+ def media(sid=:unset)
570
+
571
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
572
+
573
+ if sid != :unset
574
+ return MediaContext.new(@version, @solution[:account_sid], @solution[:sid],sid )
575
+ end
576
+
577
+ unless @media
578
+ @media = MediaList.new(
579
+ @version, account_sid: @solution[:account_sid], message_sid: @solution[:sid], )
580
+ end
581
+
582
+ @media
583
+ end
584
+
585
+ ##
586
+ # Provide a user friendly representation
587
+ def to_s
588
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
589
+ "#<Twilio.Api.V2010.MessageContext #{context}>"
590
+ end
591
+
592
+ ##
593
+ # Provide a detailed, user friendly representation
594
+ def inspect
595
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
596
+ "#<Twilio.Api.V2010.MessageContext #{context}>"
597
+ end
598
+ end
599
+
600
+ class MessageInstanceMetadata < InstanceResourceMetadata
601
+ ##
602
+ # Initializes a new MessageInstanceMetadata.
603
+ # @param [Version] version Version that contains the resource
604
+ # @param [}MessageInstance] message_instance The instance associated with the metadata.
605
+ # @param [Hash] headers Header object with response headers.
606
+ # @param [Integer] status_code The HTTP status code of the response.
607
+ # @return [MessageInstanceMetadata] The initialized instance with metadata.
608
+ def initialize(version, message_instance, headers, status_code)
609
+ super(version, headers, status_code)
610
+ @message_instance = message_instance
611
+ end
612
+
613
+ def message
614
+ @message_instance
615
+ end
616
+
617
+ def headers
618
+ @headers
619
+ end
620
+
621
+ def status_code
622
+ @status_code
623
+ end
624
+
625
+ def to_s
626
+ "<Twilio.Api.V2010.MessageInstanceMetadata status=#{@status_code}>"
627
+ end
628
+ end
629
+
630
+ class MessageListResponse < InstanceListResource
631
+ # @param [Array<MessageInstance>] instance
632
+ # @param [Hash{String => Object}] headers
633
+ # @param [Integer] status_code
634
+ def initialize(version, payload, key)
635
+ @message_instance = payload.body[key].map do |data|
636
+ MessageInstance.new(version, data)
637
+ end
638
+ @headers = payload.headers
639
+ @status_code = payload.status_code
640
+ end
641
+
642
+ def message_instance
643
+ @instance
644
+ end
645
+ end
646
+
647
+ class MessagePage < Page
648
+ ##
649
+ # Initialize the MessagePage
650
+ # @param [Version] version Version that contains the resource
651
+ # @param [Response] response Response from the API
652
+ # @param [Hash] solution Path solution for the resource
653
+ # @return [MessagePage] MessagePage
654
+ def initialize(version, response, solution)
655
+ super(version, response)
656
+
657
+
658
+ # Path Solution
659
+ @solution = solution
660
+ end
661
+
662
+ ##
663
+ # Build an instance of MessageInstance
664
+ # @param [Hash] payload Payload response from the API
665
+ # @return [MessageInstance] MessageInstance
666
+ def get_instance(payload)
667
+ MessageInstance.new(@version, payload, account_sid: @solution[:account_sid])
668
+ end
669
+
670
+ ##
671
+ # Provide a user friendly representation
672
+ def to_s
673
+ '<Twilio.Api.V2010.MessagePage>'
674
+ end
675
+ end
676
+
677
+ class MessagePageMetadata < PageMetadata
678
+ attr_reader :message_page
679
+
680
+ def initialize(version, response, solution, limit)
681
+ super(version, response)
682
+ @message_page = []
683
+ @limit = limit
684
+ key = get_key(response.body)
685
+ records = 0
686
+ while( limit != :unset && records < limit )
687
+ @message_page << MessageListResponse.new(version, @payload, key, limit - records)
688
+ @payload = self.next_page
689
+ break unless @payload
690
+ records += @payload.body[key].size
691
+ end
692
+ # Path Solution
693
+ @solution = solution
694
+ end
695
+
696
+ def each
697
+ @message_page.each do |record|
698
+ yield record
699
+ end
700
+ end
701
+
702
+ def to_s
703
+ '<Twilio::REST::Api::V2010PageMetadata>';
704
+ end
705
+ end
706
+ class MessageListResponse < InstanceListResource
707
+
708
+ # @param [Array<MessageInstance>] instance
709
+ # @param [Hash{String => Object}] headers
710
+ # @param [Integer] status_code
711
+ def initialize(version, payload, key, limit = :unset)
712
+ data_list = payload.body[key]
713
+ if limit != :unset
714
+ data_list = data_list[0, limit]
715
+ end
716
+ @message = data_list.map do |data|
717
+ MessageInstance.new(version, data)
718
+ end
719
+ @headers = payload.headers
720
+ @status_code = payload.status_code
721
+ end
722
+
723
+ def message
724
+ @message
725
+ end
726
+
727
+ def headers
728
+ @headers
729
+ end
730
+
731
+ def status_code
732
+ @status_code
733
+ end
734
+ end
735
+
736
+ class MessageInstance < InstanceResource
737
+ ##
738
+ # Initialize the MessageInstance
739
+ # @param [Version] version Version that contains the resource
740
+ # @param [Hash] payload payload that contains response from Twilio
741
+ # @param [String] account_sid The SID of the
742
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Message
743
+ # resource.
744
+ # @param [String] sid The SID of the Call resource to fetch.
745
+ # @return [MessageInstance] MessageInstance
746
+ def initialize(version, payload , account_sid: nil, sid: nil)
747
+ super(version)
748
+
749
+
750
+ # Marshaled Properties
751
+ @properties = {
752
+ 'body' => payload['body'],
753
+ 'num_segments' => payload['num_segments'],
754
+ 'direction' => payload['direction'],
755
+ 'from' => payload['from'],
756
+ 'to' => payload['to'],
757
+ 'date_updated' => Twilio.deserialize_rfc2822(payload['date_updated']),
758
+ 'price' => payload['price'],
759
+ 'error_message' => payload['error_message'],
760
+ 'uri' => payload['uri'],
761
+ 'account_sid' => payload['account_sid'],
762
+ 'num_media' => payload['num_media'],
763
+ 'status' => payload['status'],
764
+ 'messaging_service_sid' => payload['messaging_service_sid'],
765
+ 'sid' => payload['sid'],
766
+ 'date_sent' => Twilio.deserialize_rfc2822(payload['date_sent']),
767
+ 'date_created' => Twilio.deserialize_rfc2822(payload['date_created']),
768
+ 'error_code' => payload['error_code'] == nil ? payload['error_code'] : payload['error_code'].to_i,
769
+ 'price_unit' => payload['price_unit'],
770
+ 'api_version' => payload['api_version'],
771
+ 'subresource_uris' => payload['subresource_uris'],
772
+ }
773
+
774
+ # Context
775
+ @instance_context = nil
776
+ @params = { 'account_sid' => account_sid ,'sid' => sid || @properties['sid'] , }
777
+ end
778
+
779
+ ##
780
+ # Generate an instance context for the instance, the context is capable of
781
+ # performing various actions. All instance actions are proxied to the context
782
+ # @return [MessageContext] CallContext for this CallInstance
783
+ def context
784
+ unless @instance_context
785
+ @instance_context = MessageContext.new(@version , @params['account_sid'], @params['sid'])
786
+ end
787
+ @instance_context
788
+ end
789
+
790
+ ##
791
+ # @return [String] The text content of the message
792
+ def body
793
+ @properties['body']
794
+ end
795
+
796
+ ##
797
+ # @return [String] The number of segments that make up the complete message. SMS message bodies that exceed the [character limit](https://www.twilio.com/docs/glossary/what-sms-character-limit) are segmented and charged as multiple messages. Note: For messages sent via a Messaging Service, `num_segments` is initially `0`, since a sender hasn't yet been assigned.
798
+ def num_segments
799
+ @properties['num_segments']
800
+ end
801
+
802
+ ##
803
+ # @return [Direction]
804
+ def direction
805
+ @properties['direction']
806
+ end
807
+
808
+ ##
809
+ # @return [String] The sender's phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format), [alphanumeric sender ID](https://www.twilio.com/docs/sms/quickstart), [Wireless SIM](https://www.twilio.com/docs/iot/wireless/programmable-wireless-send-machine-machine-sms-commands), [short code](https://www.twilio.com/en-us/messaging/channels/sms/short-codes), or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g., `whatsapp:+15554449999`). For incoming messages, this is the number or channel address of the sender. For outgoing messages, this value is a Twilio phone number, alphanumeric sender ID, short code, or channel address from which the message is sent.
810
+ def from
811
+ @properties['from']
812
+ end
813
+
814
+ ##
815
+ # @return [String] The recipient's phone number (in [E.164](https://en.wikipedia.org/wiki/E.164) format) or [channel address](https://www.twilio.com/docs/messaging/channels) (e.g. `whatsapp:+15552229999`)
816
+ def to
817
+ @properties['to']
818
+ end
819
+
820
+ ##
821
+ # @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was last updated
822
+ def date_updated
823
+ @properties['date_updated']
824
+ end
825
+
826
+ ##
827
+ # @return [String] The amount billed for the message in the currency specified by `price_unit`. The `price` is populated after the message has been sent/received, and may not be immediately availalble. View the [Pricing page](https://www.twilio.com/en-us/pricing) for more details.
828
+ def price
829
+ @properties['price']
830
+ end
831
+
832
+ ##
833
+ # @return [String] The description of the `error_code` if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.
834
+ def error_message
835
+ @properties['error_message']
836
+ end
837
+
838
+ ##
839
+ # @return [String] The URI of the Message resource, relative to `https://api.twilio.com`.
840
+ def uri
841
+ @properties['uri']
842
+ end
843
+
844
+ ##
845
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) associated with the Message resource
846
+ def account_sid
847
+ @properties['account_sid']
848
+ end
849
+
850
+ ##
851
+ # @return [String] The number of media files associated with the Message resource.
852
+ def num_media
853
+ @properties['num_media']
854
+ end
855
+
856
+ ##
857
+ # @return [Status]
858
+ def status
859
+ @properties['status']
860
+ end
861
+
862
+ ##
863
+ # @return [String] The SID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) associated with the Message resource. A unique default value is assigned if a Messaging Service is not used.
864
+ def messaging_service_sid
865
+ @properties['messaging_service_sid']
866
+ end
867
+
868
+ ##
869
+ # @return [String] The unique, Twilio-provided string that identifies the Message resource.
870
+ def sid
871
+ @properties['sid']
872
+ end
873
+
874
+ ##
875
+ # @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message was sent. For an outgoing message, this is when Twilio sent the message. For an incoming message, this is when Twilio sent the HTTP request to your incoming message webhook URL.
876
+ def date_sent
877
+ @properties['date_sent']
878
+ end
879
+
880
+ ##
881
+ # @return [Time] The [RFC 2822](https://datatracker.ietf.org/doc/html/rfc2822#section-3.3) timestamp (in GMT) of when the Message resource was created
882
+ def date_created
883
+ @properties['date_created']
884
+ end
885
+
886
+ ##
887
+ # @return [String] The [error code](https://www.twilio.com/docs/api/errors) returned if the Message `status` is `failed` or `undelivered`. If no error was encountered, the value is `null`. The value returned in this field for a specific error cause is subject to change as Twilio improves errors. Users should not use the `error_code` and `error_message` fields programmatically.
888
+ def error_code
889
+ @properties['error_code']
890
+ end
891
+
892
+ ##
893
+ # @return [String] The currency in which `price` is measured, in [ISO 4127](https://www.iso.org/iso/home/standards/currency_codes.htm) format (e.g. `usd`, `eur`, `jpy`).
894
+ def price_unit
895
+ @properties['price_unit']
896
+ end
897
+
898
+ ##
899
+ # @return [String] The API version used to process the Message
900
+ def api_version
901
+ @properties['api_version']
902
+ end
903
+
904
+ ##
905
+ # @return [Hash] A list of related resources identified by their URIs relative to `https://api.twilio.com`
906
+ def subresource_uris
907
+ @properties['subresource_uris']
908
+ end
909
+
910
+ ##
911
+ # Delete the MessageInstance
912
+ # @return [Boolean] True if delete succeeds, false otherwise
913
+ def delete
914
+
915
+ context.delete
916
+ end
917
+
918
+ ##
919
+ # Fetch the MessageInstance
920
+ # @return [MessageInstance] Fetched MessageInstance
921
+ def fetch
922
+
923
+ context.fetch
924
+ end
925
+
926
+ ##
927
+ # Update the MessageInstance
928
+ # @param [String] body The new `body` of the Message resource. To redact the text content of a Message, this parameter's value must be an empty string
929
+ # @param [UpdateStatus] status
930
+ # @return [MessageInstance] Updated MessageInstance
931
+ def update(
932
+ body: :unset,
933
+ status: :unset
934
+ )
935
+
936
+ context.update(
937
+ body: body,
938
+ status: status,
939
+ )
940
+ end
941
+
942
+ ##
943
+ # Access the feedback
944
+ # @return [feedback] feedback
945
+ def feedback
946
+ context.feedback
947
+ end
948
+
949
+ ##
950
+ # Access the media
951
+ # @return [media] media
952
+ def media
953
+ context.media
954
+ end
955
+
956
+ ##
957
+ # Provide a user friendly representation
958
+ def to_s
959
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
960
+ "<Twilio.Api.V2010.MessageInstance #{values}>"
961
+ end
962
+
963
+ ##
964
+ # Provide a detailed, user friendly representation
965
+ def inspect
966
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
967
+ "<Twilio.Api.V2010.MessageInstance #{values}>"
968
+ end
969
+ end
970
+
971
+ end
613
972
  end
614
- end
615
973
  end
616
- end
617
974
  end
618
- end
619
- end
975
+ end
976
+
977
+