twilio-ruby 5.77.0 → 7.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (728) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test-and-deploy.yml +11 -1
  3. data/.gitignore +3 -0
  4. data/CHANGES.md +722 -0
  5. data/CONTRIBUTING.md +10 -2
  6. data/Gemfile +3 -0
  7. data/LICENSE +1 -1
  8. data/Makefile +6 -0
  9. data/README.md +15 -9
  10. data/UPGRADE.md +21 -0
  11. data/cluster_spec.rb +77 -0
  12. data/lib/twilio-ruby/base/client_base.rb +124 -0
  13. data/lib/twilio-ruby/framework/request.rb +8 -1
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/http/http_client.rb +13 -5
  16. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  17. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +201 -178
  18. data/lib/twilio-ruby/rest/accounts/v1/bulk_consents.rb +133 -0
  19. data/lib/twilio-ruby/rest/accounts/v1/bulk_contacts.rb +133 -0
  20. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +380 -332
  21. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +380 -332
  22. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +122 -114
  23. data/lib/twilio-ruby/rest/accounts/v1/safelist.rb +176 -0
  24. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +219 -192
  25. data/lib/twilio-ruby/rest/accounts/v1.rb +63 -42
  26. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  27. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  29. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +560 -530
  30. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +624 -605
  31. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +316 -320
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +395 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +395 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +395 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +395 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +395 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +395 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +395 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +435 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +139 -118
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +403 -417
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +294 -342
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +503 -511
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +844 -641
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +844 -641
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/transcription.rb +307 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +159 -153
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +233 -240
  50. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +955 -1050
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +668 -756
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +458 -458
  53. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +494 -493
  54. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +433 -407
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +323 -352
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +403 -418
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +539 -554
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +539 -553
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +539 -553
  60. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +850 -903
  61. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +342 -302
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +170 -166
  63. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +345 -350
  64. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +624 -641
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +160 -138
  66. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +160 -138
  67. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +403 -399
  68. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +375 -358
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -338
  70. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +435 -390
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload/data.rb +200 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +384 -380
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +373 -385
  74. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +369 -372
  75. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +512 -513
  76. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +422 -408
  77. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +342 -306
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +384 -368
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +408 -373
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +353 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_ip_access_control_list_mapping.rb +353 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +141 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations/auth_registrations_credential_list_mapping.rb +353 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +127 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +95 -103
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +346 -339
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +346 -338
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +658 -645
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +421 -421
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +408 -374
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +142 -150
  92. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +174 -154
  93. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +369 -350
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +315 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +315 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +315 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +315 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +315 -339
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +315 -339
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +315 -339
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +315 -339
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +382 -416
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +494 -484
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +113 -104
  105. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +175 -161
  106. data/lib/twilio-ruby/rest/api/v2010/account.rb +986 -943
  107. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  108. data/lib/twilio-ruby/rest/api.rb +25 -34
  109. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  110. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_knowledge.rb +355 -0
  111. data/lib/twilio-ruby/rest/assistants/v1/assistant/assistants_tool.rb +362 -0
  112. data/lib/twilio-ruby/rest/assistants/v1/assistant/feedback.rb +303 -0
  113. data/lib/twilio-ruby/rest/assistants/v1/assistant/message.rb +201 -0
  114. data/lib/twilio-ruby/rest/assistants/v1/assistant.rb +668 -0
  115. data/lib/twilio-ruby/rest/assistants/v1/knowledge/chunk.rb +229 -0
  116. data/lib/twilio-ruby/rest/assistants/v1/knowledge/knowledge_status.rb +209 -0
  117. data/lib/twilio-ruby/rest/assistants/v1/knowledge.rb +591 -0
  118. data/lib/twilio-ruby/rest/assistants/v1/policy.rb +264 -0
  119. data/lib/twilio-ruby/rest/assistants/v1/session/message.rb +264 -0
  120. data/lib/twilio-ruby/rest/assistants/v1/session.rb +328 -0
  121. data/lib/twilio-ruby/rest/assistants/v1/tool.rb +586 -0
  122. data/lib/twilio-ruby/rest/assistants/v1.rb +100 -0
  123. data/lib/twilio-ruby/rest/assistants.rb +6 -0
  124. data/lib/twilio-ruby/rest/assistants_base.rb +38 -0
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +302 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +301 -279
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +276 -248
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +249 -235
  129. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +248 -216
  130. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  131. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  132. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  133. data/lib/twilio-ruby/rest/chat/v1/credential.rb +428 -403
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +381 -391
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -440
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -437
  137. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +543 -515
  138. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +405 -367
  139. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  140. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +474 -440
  141. data/lib/twilio-ruby/rest/chat/v1/service.rb +870 -894
  142. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  143. data/lib/twilio-ruby/rest/chat/v2/credential.rb +428 -401
  144. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +376 -370
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +381 -386
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +492 -527
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +519 -533
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +449 -467
  149. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +612 -605
  150. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +405 -369
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +369 -381
  152. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +412 -419
  153. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +516 -491
  154. data/lib/twilio-ruby/rest/chat/v2/service.rb +773 -778
  155. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  156. data/lib/twilio-ruby/rest/chat/v3/channel.rb +291 -267
  157. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  158. data/lib/twilio-ruby/rest/chat.rb +4 -48
  159. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  160. data/lib/twilio-ruby/rest/client.rb +333 -584
  161. data/lib/twilio-ruby/rest/content/v1/content/approval_create.rb +185 -0
  162. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +202 -188
  163. data/lib/twilio-ruby/rest/content/v1/content.rb +941 -336
  164. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +244 -232
  165. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +258 -246
  166. data/lib/twilio-ruby/rest/content/v1.rb +54 -52
  167. data/lib/twilio-ruby/rest/content/v2/content.rb +316 -0
  168. data/lib/twilio-ruby/rest/content/v2/content_and_approvals.rb +309 -0
  169. data/lib/twilio-ruby/rest/content/v2.rb +46 -0
  170. data/lib/twilio-ruby/rest/content.rb +2 -46
  171. data/lib/twilio-ruby/rest/content_base.rb +43 -0
  172. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +481 -444
  173. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +259 -227
  174. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +284 -252
  175. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +337 -344
  176. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +543 -510
  177. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +504 -495
  178. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +434 -403
  179. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +626 -590
  180. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +434 -409
  181. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +305 -304
  182. data/lib/twilio-ruby/rest/conversations/v1/role.rb +393 -356
  183. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +369 -373
  184. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +305 -289
  185. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +251 -235
  186. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +312 -279
  187. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +344 -371
  188. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +550 -550
  189. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +513 -530
  190. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +443 -438
  191. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +638 -626
  192. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +311 -317
  193. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +405 -380
  194. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +453 -455
  195. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +490 -474
  196. data/lib/twilio-ruby/rest/conversations/v1/service.rb +483 -447
  197. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +452 -435
  198. data/lib/twilio-ruby/rest/conversations/v1/user.rb +478 -441
  199. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  200. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  201. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  202. data/lib/twilio-ruby/rest/events/v1/event_type.rb +319 -288
  203. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  204. data/lib/twilio-ruby/rest/events/v1/schema.rb +230 -218
  205. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +117 -100
  206. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +123 -103
  207. data/lib/twilio-ruby/rest/events/v1/sink.rb +443 -408
  208. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +374 -339
  209. data/lib/twilio-ruby/rest/events/v1/subscription.rb +425 -387
  210. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  211. data/lib/twilio-ruby/rest/events.rb +5 -34
  212. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +439 -387
  214. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +372 -330
  215. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +547 -496
  216. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +572 -570
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +321 -306
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +221 -208
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +435 -384
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +350 -303
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +435 -380
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +352 -403
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +209 -190
  224. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +157 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +137 -124
  226. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +188 -166
  227. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +247 -229
  228. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +343 -319
  229. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +404 -398
  230. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +264 -225
  231. data/lib/twilio-ruby/rest/flex_api/v1/plugin/plugin_versions.rb +397 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/plugin.rb +446 -0
  233. data/lib/twilio-ruby/rest/flex_api/v1/plugin_archive.rb +247 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration/configured_plugin.rb +393 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration.rb +386 -0
  236. data/lib/twilio-ruby/rest/flex_api/v1/plugin_configuration_archive.rb +233 -0
  237. data/lib/twilio-ruby/rest/flex_api/v1/plugin_release.rb +332 -0
  238. data/lib/twilio-ruby/rest/flex_api/v1/plugin_version_archive.rb +256 -0
  239. data/lib/twilio-ruby/rest/flex_api/v1/provisioning_status.rb +188 -0
  240. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +387 -331
  241. data/lib/twilio-ruby/rest/flex_api/v1.rb +313 -214
  242. data/lib/twilio-ruby/rest/flex_api/v2/flex_user.rb +370 -0
  243. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +145 -127
  244. data/lib/twilio-ruby/rest/flex_api/v2.rb +70 -28
  245. data/lib/twilio-ruby/rest/flex_api.rb +21 -117
  246. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  247. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +247 -227
  248. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  249. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  250. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  251. data/lib/twilio-ruby/rest/iam/v1/api_key.rb +270 -0
  252. data/lib/twilio-ruby/rest/iam/v1/get_api_keys.rb +223 -0
  253. data/lib/twilio-ruby/rest/iam/v1/key.rb +177 -0
  254. data/lib/twilio-ruby/rest/iam/v1.rb +61 -0
  255. data/lib/twilio-ruby/rest/iam.rb +6 -0
  256. data/lib/twilio-ruby/rest/iam_base.rb +38 -0
  257. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +315 -315
  258. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +353 -0
  259. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +270 -255
  260. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +242 -225
  261. data/lib/twilio-ruby/rest/insights/v1/call.rb +263 -236
  262. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +534 -439
  263. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +484 -467
  264. data/lib/twilio-ruby/rest/insights/v1/conference.rb +498 -502
  265. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  266. data/lib/twilio-ruby/rest/insights/v1/room.rb +491 -489
  267. data/lib/twilio-ruby/rest/insights/v1/setting.rb +249 -205
  268. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  269. data/lib/twilio-ruby/rest/insights.rb +6 -34
  270. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  271. data/lib/twilio-ruby/rest/intelligence/v2/custom_operator.rb +447 -0
  272. data/lib/twilio-ruby/rest/intelligence/v2/operator.rb +356 -0
  273. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachment.rb +217 -0
  274. data/lib/twilio-ruby/rest/intelligence/v2/operator_attachments.rb +197 -0
  275. data/lib/twilio-ruby/rest/intelligence/v2/operator_type.rb +358 -0
  276. data/lib/twilio-ruby/rest/intelligence/v2/prebuilt_operator.rb +356 -0
  277. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +517 -0
  278. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +227 -0
  279. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +389 -0
  280. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +262 -0
  281. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +525 -0
  282. data/lib/twilio-ruby/rest/intelligence/v2.rb +176 -0
  283. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  284. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  285. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +428 -364
  286. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +381 -359
  287. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -397
  288. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -409
  289. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +543 -488
  290. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +405 -347
  291. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  292. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +474 -418
  293. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +870 -779
  294. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  295. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +428 -364
  296. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +376 -343
  297. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +381 -359
  298. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +492 -451
  299. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +519 -479
  300. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +449 -411
  301. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +612 -555
  302. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +405 -347
  303. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +369 -351
  304. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +404 -384
  305. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +516 -467
  306. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +773 -689
  307. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  308. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  309. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  310. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +246 -239
  311. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  312. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +376 -335
  313. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  314. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  315. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  316. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on/available_add_on_extension.rb +309 -0
  317. data/lib/twilio-ruby/rest/marketplace/v1/available_add_on.rb +336 -0
  318. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_extension.rb +352 -0
  319. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on/installed_add_on_usage.rb +157 -0
  320. data/lib/twilio-ruby/rest/marketplace/v1/installed_add_on.rb +465 -0
  321. data/lib/twilio-ruby/rest/marketplace/v1/module_data_management.rb +310 -0
  322. data/lib/twilio-ruby/rest/marketplace/v1/referral_conversion.rb +199 -0
  323. data/lib/twilio-ruby/rest/marketplace/v1.rb +85 -0
  324. data/lib/twilio-ruby/rest/marketplace.rb +6 -0
  325. data/lib/twilio-ruby/rest/marketplace_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +124 -119
  327. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +361 -346
  328. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +499 -466
  329. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +192 -0
  330. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +285 -0
  331. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +282 -232
  332. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +231 -218
  333. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +161 -144
  334. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +209 -210
  335. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +197 -0
  336. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +356 -335
  337. data/lib/twilio-ruby/rest/messaging/v1/service/channel_sender.rb +370 -0
  338. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +363 -341
  339. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +363 -336
  340. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +613 -521
  341. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +124 -115
  342. data/lib/twilio-ruby/rest/messaging/v1/service.rb +774 -763
  343. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +793 -713
  344. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +109 -94
  345. data/lib/twilio-ruby/rest/messaging/v1.rb +187 -165
  346. data/lib/twilio-ruby/rest/messaging.rb +10 -53
  347. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  348. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +355 -307
  349. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +348 -300
  350. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +202 -185
  351. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +342 -320
  352. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +374 -335
  353. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +367 -328
  354. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +420 -383
  355. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -85
  356. data/lib/twilio-ruby/rest/microvisor.rb +4 -50
  357. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  358. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +401 -395
  359. data/lib/twilio-ruby/rest/monitor/v1/event.rb +384 -390
  360. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  361. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  362. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  363. data/lib/twilio-ruby/rest/notify/v1/credential.rb +428 -408
  364. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +442 -452
  365. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +316 -362
  366. data/lib/twilio-ruby/rest/notify/v1/service.rb +633 -622
  367. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  368. data/lib/twilio-ruby/rest/notify.rb +3 -34
  369. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  370. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +241 -0
  371. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -94
  372. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in.rb +294 -0
  373. data/lib/twilio-ruby/rest/numbers/v1/porting_port_in_phone_number.rb +322 -0
  374. data/lib/twilio-ruby/rest/numbers/v1/porting_portability.rb +256 -0
  375. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration.rb +149 -0
  376. data/lib/twilio-ruby/rest/numbers/v1/porting_webhook_configuration_delete.rb +168 -0
  377. data/lib/twilio-ruby/rest/numbers/v1/signing_request_configuration.rb +273 -0
  378. data/lib/twilio-ruby/rest/numbers/v1/webhook.rb +161 -0
  379. data/lib/twilio-ruby/rest/numbers/v1.rb +148 -28
  380. data/lib/twilio-ruby/rest/numbers/v2/authorization_document/dependent_hosted_number_order.rb +344 -0
  381. data/lib/twilio-ruby/rest/numbers/v2/authorization_document.rb +408 -0
  382. data/lib/twilio-ruby/rest/numbers/v2/bulk_hosted_number_order.rb +266 -0
  383. data/lib/twilio-ruby/rest/numbers/v2/bundle_clone.rb +277 -0
  384. data/lib/twilio-ruby/rest/numbers/v2/hosted_number_order.rb +507 -0
  385. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +281 -261
  386. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +329 -298
  387. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +340 -309
  388. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +197 -181
  389. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  390. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +400 -351
  391. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +293 -266
  392. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +342 -307
  393. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +428 -371
  394. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +293 -266
  395. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +178 -181
  396. data/lib/twilio-ruby/rest/numbers/v2.rb +93 -28
  397. data/lib/twilio-ruby/rest/numbers.rb +2 -47
  398. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  399. data/lib/twilio-ruby/rest/oauth/v1/authorize.rb +144 -0
  400. data/lib/twilio-ruby/rest/oauth/v1/token.rb +176 -151
  401. data/lib/twilio-ruby/rest/oauth/v1.rb +39 -56
  402. data/lib/twilio-ruby/rest/oauth.rb +3 -65
  403. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  404. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +371 -396
  405. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +451 -446
  406. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +617 -625
  407. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  408. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  409. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  410. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +345 -330
  411. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +436 -398
  412. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  413. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +383 -374
  414. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +448 -399
  415. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +439 -407
  416. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +383 -374
  417. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +424 -398
  418. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +442 -404
  419. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +383 -374
  420. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +424 -398
  421. data/lib/twilio-ruby/rest/preview/sync/service.rb +502 -452
  422. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  423. data/lib/twilio-ruby/rest/preview/wireless/command.rb +390 -364
  424. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +455 -398
  425. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +233 -205
  426. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +577 -523
  427. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  428. data/lib/twilio-ruby/rest/preview.rb +11 -79
  429. data/lib/twilio-ruby/rest/preview_base.rb +53 -0
  430. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +300 -275
  431. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +108 -119
  432. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +293 -268
  433. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +108 -119
  434. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +300 -275
  435. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +223 -197
  436. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +122 -135
  437. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  438. data/lib/twilio-ruby/rest/pricing/v2/country.rb +292 -270
  439. data/lib/twilio-ruby/rest/pricing/v2/number.rb +235 -217
  440. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +300 -275
  441. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +241 -220
  442. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +122 -138
  443. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  444. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  445. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  446. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +426 -403
  447. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +411 -418
  448. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +433 -449
  449. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +426 -442
  450. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +529 -506
  451. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +406 -370
  452. data/lib/twilio-ruby/rest/proxy/v1/service.rb +566 -596
  453. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  454. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  455. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +265 -227
  457. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +265 -223
  458. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +265 -227
  459. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  460. data/lib/twilio-ruby/rest/routes.rb +4 -34
  461. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  462. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  463. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +419 -380
  464. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +209 -208
  465. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +412 -384
  466. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +342 -338
  467. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +362 -383
  468. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +410 -396
  469. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +461 -447
  470. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +224 -234
  471. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  472. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +419 -380
  473. data/lib/twilio-ruby/rest/serverless/v1/service.rb +530 -493
  474. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  475. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  476. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  477. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +209 -199
  478. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +224 -218
  479. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +364 -355
  480. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +429 -394
  481. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +209 -200
  482. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +224 -221
  483. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +364 -361
  484. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +477 -449
  485. data/lib/twilio-ruby/rest/studio/v1/flow.rb +385 -355
  486. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  487. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +209 -200
  488. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +224 -221
  489. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +364 -361
  490. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +470 -442
  491. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +344 -320
  492. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +237 -0
  493. data/lib/twilio-ruby/rest/studio/v2/flow.rb +528 -472
  494. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +124 -99
  495. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  496. data/lib/twilio-ruby/rest/studio.rb +3 -41
  497. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  498. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +396 -382
  499. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +477 -483
  500. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +401 -409
  501. data/lib/twilio-ruby/rest/supersim/v1/network.rb +303 -297
  502. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +342 -332
  503. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +385 -351
  504. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -237
  505. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  506. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  507. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +465 -453
  508. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +361 -361
  509. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +306 -344
  510. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -147
  511. data/lib/twilio-ruby/rest/supersim.rb +10 -34
  512. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  513. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +383 -371
  514. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +464 -423
  515. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +473 -490
  516. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +383 -370
  517. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +479 -445
  518. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +476 -495
  519. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +383 -368
  520. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +479 -444
  521. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -132
  522. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +428 -400
  523. data/lib/twilio-ruby/rest/sync/v1/service.rb +584 -567
  524. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  525. data/lib/twilio-ruby/rest/sync.rb +2 -34
  526. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +414 -395
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +445 -464
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +709 -749
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +659 -661
  531. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +418 -382
  532. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_bulk_real_time_statistics.rb +164 -0
  533. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +362 -369
  534. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +282 -275
  535. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +233 -236
  536. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +240 -258
  537. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +583 -572
  538. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +691 -732
  539. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +394 -388
  540. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +238 -239
  541. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +284 -265
  542. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +218 -193
  543. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +254 -234
  544. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +630 -637
  545. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +362 -375
  546. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +248 -241
  547. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +233 -244
  548. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +532 -510
  549. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +356 -356
  550. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +234 -206
  551. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +244 -234
  552. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +729 -730
  553. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  554. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  555. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  556. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +349 -320
  557. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +349 -317
  558. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +449 -419
  559. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +482 -451
  560. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +229 -191
  561. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +632 -630
  562. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  563. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  564. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  565. data/lib/twilio-ruby/rest/trusthub/v1/compliance_inquiries.rb +249 -0
  566. data/lib/twilio-ruby/rest/trusthub/v1/compliance_registration_inquiries.rb +357 -0
  567. data/lib/twilio-ruby/rest/trusthub/v1/compliance_tollfree_inquiries.rb +220 -0
  568. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +364 -352
  569. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +348 -323
  570. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +338 -321
  571. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +541 -513
  572. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +392 -346
  573. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +285 -261
  574. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +278 -252
  575. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +406 -359
  576. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +285 -261
  577. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +364 -352
  578. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +348 -323
  579. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +338 -321
  580. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +541 -513
  581. data/lib/twilio-ruby/rest/trusthub/v1.rb +168 -139
  582. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  583. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  584. data/lib/twilio-ruby/rest/verify/v2/form.rb +196 -183
  585. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +228 -207
  586. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +277 -254
  587. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +194 -192
  588. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +503 -531
  589. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +454 -453
  590. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +252 -283
  591. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +429 -414
  592. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +388 -363
  593. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +410 -388
  594. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +429 -384
  595. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +390 -372
  596. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +224 -205
  597. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +456 -412
  598. data/lib/twilio-ruby/rest/verify/v2/service.rb +816 -780
  599. data/lib/twilio-ruby/rest/verify/v2/template.rb +222 -205
  600. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +375 -387
  601. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +242 -226
  602. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  603. data/lib/twilio-ruby/rest/verify.rb +7 -34
  604. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  605. data/lib/twilio-ruby/rest/video/v1/composition.rb +484 -507
  606. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +534 -647
  607. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +286 -261
  608. data/lib/twilio-ruby/rest/video/v1/recording.rb +431 -426
  609. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +286 -261
  610. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +262 -0
  611. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +334 -0
  612. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +186 -0
  613. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +341 -0
  614. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  615. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +175 -0
  616. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  617. data/lib/twilio-ruby/rest/video/v1/room.rb +613 -602
  618. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  619. data/lib/twilio-ruby/rest/video.rb +7 -34
  620. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  621. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +161 -176
  622. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +510 -486
  623. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +449 -434
  624. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +400 -352
  625. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +138 -121
  626. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  627. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +376 -397
  628. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +220 -190
  629. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +123 -121
  630. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +386 -339
  631. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +369 -319
  632. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  633. data/lib/twilio-ruby/rest/voice.rb +7 -34
  634. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  635. data/lib/twilio-ruby/rest/wireless/v1/command.rb +415 -406
  636. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +472 -436
  637. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  638. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +240 -243
  639. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +641 -647
  640. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +227 -221
  641. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  642. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  643. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  644. data/lib/twilio-ruby/rest.rb +1 -0
  645. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  646. data/lib/twilio-ruby/twiml/voice_response.rb +97 -18
  647. data/lib/twilio-ruby/version.rb +1 -1
  648. data/sonar-project.properties +1 -1
  649. data/twilio-ruby.gemspec +2 -1
  650. metadata +148 -80
  651. data/conf/cacert.pem +0 -3376
  652. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  653. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  654. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  655. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  656. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  657. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  658. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  659. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  660. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  661. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +0 -301
  662. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +0 -314
  663. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  664. 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
  665. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  666. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +0 -348
  667. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  668. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +0 -220
  669. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +0 -214
  670. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +0 -399
  671. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +0 -418
  672. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +0 -392
  673. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +0 -469
  674. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +0 -218
  675. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +0 -386
  676. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +0 -456
  677. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +0 -255
  678. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +0 -237
  679. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +0 -507
  680. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +0 -420
  681. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +0 -650
  682. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +0 -194
  683. data/lib/twilio-ruby/rest/autopilot/v1.rb +0 -52
  684. data/lib/twilio-ruby/rest/autopilot.rb +0 -53
  685. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  686. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +0 -144
  687. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -321
  688. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +0 -397
  689. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +0 -399
  690. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +0 -221
  691. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +0 -403
  692. data/lib/twilio-ruby/rest/media/v1.rb +0 -76
  693. data/lib/twilio-ruby/rest/media.rb +0 -65
  694. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  695. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +0 -257
  696. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +0 -153
  697. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +0 -162
  698. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +0 -242
  699. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +0 -193
  700. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +0 -382
  701. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +0 -365
  702. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +0 -425
  703. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +0 -376
  704. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +0 -469
  705. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +0 -45
  706. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +0 -212
  707. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +0 -212
  708. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +0 -206
  709. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +0 -386
  710. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +0 -407
  711. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +0 -380
  712. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +0 -437
  713. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +0 -212
  714. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +0 -373
  715. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +0 -428
  716. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +0 -241
  717. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +0 -225
  718. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +0 -495
  719. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +0 -629
  720. data/lib/twilio-ruby/rest/preview/understand.rb +0 -45
  721. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  722. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  723. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  724. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  725. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  726. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  727. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  728. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,600 +1,636 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
6
  #
7
- # frozen_string_literal: true
7
+ # Twilio - Conversations
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
13
+ #
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Conversations < Domain
12
- class V1 < Version
13
- class ConversationList < ListResource
14
- ##
15
- # Initialize the ConversationList
16
- # @param [Version] version Version that contains the resource
17
- # @return [ConversationList] ConversationList
18
- def initialize(version)
19
- super(version)
20
-
21
- # Path Solution
22
- @solution = {}
23
- @uri = "/Conversations"
24
- end
25
-
26
- ##
27
- # Create the ConversationInstance
28
- # @param [String] friendly_name The human-readable name of this conversation,
29
- # limited to 256 characters. Optional.
30
- # @param [String] unique_name An application-defined string that uniquely
31
- # identifies the resource. It can be used to address the resource in place of the
32
- # resource's `sid` in the URL.
33
- # @param [Time] date_created The date that this resource was created.
34
- # @param [Time] date_updated The date that this resource was last updated.
35
- # @param [String] messaging_service_sid The unique ID of the {Messaging
36
- # Service}[https://www.twilio.com/docs/sms/services/api] this conversation belongs
37
- # to.
38
- # @param [String] attributes An optional string metadata field you can use to
39
- # store any data you wish. The string value must contain structurally valid JSON
40
- # if specified. **Note** that if the attributes are not set "{}" will be
41
- # returned.
42
- # @param [conversation.State] state Current state of this conversation. Can be
43
- # either `active`, `inactive` or `closed` and defaults to `active`
44
- # @param [String] timers_inactive ISO8601 duration when conversation will be
45
- # switched to `inactive` state. Minimum value for this timer is 1 minute.
46
- # @param [String] timers_closed ISO8601 duration when conversation will be
47
- # switched to `closed` state. Minimum value for this timer is 10 minutes.
48
- # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
49
- # X-Twilio-Webhook-Enabled HTTP request header
50
- # @return [ConversationInstance] Created ConversationInstance
51
- def create(friendly_name: :unset, unique_name: :unset, date_created: :unset, date_updated: :unset, messaging_service_sid: :unset, attributes: :unset, state: :unset, timers_inactive: :unset, timers_closed: :unset, x_twilio_webhook_enabled: :unset)
52
- data = Twilio::Values.of({
53
- 'FriendlyName' => friendly_name,
54
- 'UniqueName' => unique_name,
55
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
56
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
57
- 'MessagingServiceSid' => messaging_service_sid,
58
- 'Attributes' => attributes,
59
- 'State' => state,
60
- 'Timers.Inactive' => timers_inactive,
61
- 'Timers.Closed' => timers_closed,
62
- })
63
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
64
-
65
- payload = @version.create('POST', @uri, data: data, headers: headers)
66
-
67
- ConversationInstance.new(@version, payload, )
68
- end
69
-
70
- ##
71
- # Lists ConversationInstance records from the API as a list.
72
- # Unlike stream(), this operation is eager and will load `limit` records into
73
- # memory before returning.
74
- # @param [String] start_date Start date or time in ISO8601 format for filtering
75
- # list of Conversations. If a date is provided, the start time of the date is used
76
- # (YYYY-MM-DDT00:00:00Z). Can be combined with other filters.
77
- # @param [String] end_date End date or time in ISO8601 format for filtering list
78
- # of Conversations. If a date is provided, the end time of the date is used
79
- # (YYYY-MM-DDT23:59:59Z). Can be combined with other filters.
80
- # @param [conversation.State] state State for sorting and filtering list of
81
- # Conversations. Can be `active`, `inactive` or `closed`
82
- # @param [Integer] limit Upper limit for the number of records to return. stream()
83
- # guarantees to never return more than limit. Default is no limit
84
- # @param [Integer] page_size Number of records to fetch per request, when
85
- # not set will use the default value of 50 records. If no page_size is defined
86
- # but a limit is defined, stream() will attempt to read the limit with the most
87
- # efficient page size, i.e. min(limit, 1000)
88
- # @return [Array] Array of up to limit results
89
- def list(start_date: :unset, end_date: :unset, state: :unset, limit: nil, page_size: nil)
90
- self.stream(
91
- start_date: start_date,
92
- end_date: end_date,
93
- state: state,
94
- limit: limit,
95
- page_size: page_size
96
- ).entries
97
- end
98
-
99
- ##
100
- # Streams ConversationInstance records from the API as an Enumerable.
101
- # This operation lazily loads records as efficiently as possible until the limit
102
- # is reached.
103
- # @param [String] start_date Start date or time in ISO8601 format for filtering
104
- # list of Conversations. If a date is provided, the start time of the date is used
105
- # (YYYY-MM-DDT00:00:00Z). Can be combined with other filters.
106
- # @param [String] end_date End date or time in ISO8601 format for filtering list
107
- # of Conversations. If a date is provided, the end time of the date is used
108
- # (YYYY-MM-DDT23:59:59Z). Can be combined with other filters.
109
- # @param [conversation.State] state State for sorting and filtering list of
110
- # Conversations. Can be `active`, `inactive` or `closed`
111
- # @param [Integer] limit Upper limit for the number of records to return. stream()
112
- # guarantees to never return more than limit. Default is no limit.
113
- # @param [Integer] page_size Number of records to fetch per request, when
114
- # not set will use the default value of 50 records. If no page_size is defined
115
- # but a limit is defined, stream() will attempt to read the limit with the most
116
- # efficient page size, i.e. min(limit, 1000)
117
- # @return [Enumerable] Enumerable that will yield up to limit results
118
- def stream(start_date: :unset, end_date: :unset, state: :unset, limit: nil, page_size: nil)
119
- limits = @version.read_limits(limit, page_size)
120
-
121
- page = self.page(
122
- start_date: start_date,
123
- end_date: end_date,
124
- state: state,
125
- page_size: limits[:page_size],
126
- )
127
-
128
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
129
- end
130
-
131
- ##
132
- # When passed a block, yields ConversationInstance records from the API.
133
- # This operation lazily loads records as efficiently as possible until the limit
134
- # is reached.
135
- def each
136
- limits = @version.read_limits
137
-
138
- page = self.page(page_size: limits[:page_size], )
139
-
140
- @version.stream(page,
17
+ module REST
18
+ class Conversations < ConversationsBase
19
+ class V1 < Version
20
+ class ConversationList < ListResource
21
+
22
+ ##
23
+ # Initialize the ConversationList
24
+ # @param [Version] version Version that contains the resource
25
+ # @return [ConversationList] ConversationList
26
+ def initialize(version)
27
+ super(version)
28
+ # Path Solution
29
+ @solution = { }
30
+ @uri = "/Conversations"
31
+
32
+ end
33
+ ##
34
+ # Create the ConversationInstance
35
+ # @param [String] friendly_name The human-readable name of this conversation, limited to 256 characters. Optional.
36
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
37
+ # @param [Time] date_created The date that this resource was created.
38
+ # @param [Time] date_updated The date that this resource was last updated.
39
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
40
+ # @param [String] attributes An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
41
+ # @param [State] state
42
+ # @param [String] timers_inactive ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.
43
+ # @param [String] timers_closed ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.
44
+ # @param [String] bindings_email_address The default email address that will be used when sending outbound emails in this conversation.
45
+ # @param [String] bindings_email_name The default name that will be used when sending outbound emails in this conversation.
46
+ # @param [ConversationEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
47
+ # @return [ConversationInstance] Created ConversationInstance
48
+ def create(
49
+ friendly_name: :unset,
50
+ unique_name: :unset,
51
+ date_created: :unset,
52
+ date_updated: :unset,
53
+ messaging_service_sid: :unset,
54
+ attributes: :unset,
55
+ state: :unset,
56
+ timers_inactive: :unset,
57
+ timers_closed: :unset,
58
+ bindings_email_address: :unset,
59
+ bindings_email_name: :unset,
60
+ x_twilio_webhook_enabled: :unset
61
+ )
62
+
63
+ data = Twilio::Values.of({
64
+ 'FriendlyName' => friendly_name,
65
+ 'UniqueName' => unique_name,
66
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
67
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
68
+ 'MessagingServiceSid' => messaging_service_sid,
69
+ 'Attributes' => attributes,
70
+ 'State' => state,
71
+ 'Timers.Inactive' => timers_inactive,
72
+ 'Timers.Closed' => timers_closed,
73
+ 'Bindings.Email.Address' => bindings_email_address,
74
+ 'Bindings.Email.Name' => bindings_email_name,
75
+ })
76
+
77
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
78
+
79
+ payload = @version.create('POST', @uri, data: data, headers: headers)
80
+ ConversationInstance.new(
81
+ @version,
82
+ payload,
83
+ )
84
+ end
85
+
86
+
87
+ ##
88
+ # Lists ConversationInstance records from the API as a list.
89
+ # Unlike stream(), this operation is eager and will load `limit` records into
90
+ # memory before returning.
91
+ # @param [String] start_date Specifies the beginning of the date range for filtering Conversations based on their creation date. Conversations that were created on or after this date will be included in the results. The date must be in ISO8601 format, specifically starting at the beginning of the specified date (YYYY-MM-DDT00:00:00Z), for precise filtering. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
92
+ # @param [String] end_date Defines the end of the date range for filtering conversations by their creation date. Only conversations that were created on or before this date will appear in the results. The date must be in ISO8601 format, specifically capturing up to the end of the specified date (YYYY-MM-DDT23:59:59Z), to ensure that conversations from the entire end day are included. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
93
+ # @param [State] state State for sorting and filtering list of Conversations. Can be `active`, `inactive` or `closed`
94
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
95
+ # guarantees to never return more than limit. Default is no limit
96
+ # @param [Integer] page_size Number of records to fetch per request, when
97
+ # not set will use the default value of 50 records. If no page_size is defined
98
+ # but a limit is defined, stream() will attempt to read the limit with the most
99
+ # efficient page size, i.e. min(limit, 1000)
100
+ # @return [Array] Array of up to limit results
101
+ def list(start_date: :unset, end_date: :unset, state: :unset, limit: nil, page_size: nil)
102
+ self.stream(
103
+ start_date: start_date,
104
+ end_date: end_date,
105
+ state: state,
106
+ limit: limit,
107
+ page_size: page_size
108
+ ).entries
109
+ end
110
+
111
+ ##
112
+ # Streams Instance records from the API as an Enumerable.
113
+ # This operation lazily loads records as efficiently as possible until the limit
114
+ # is reached.
115
+ # @param [String] start_date Specifies the beginning of the date range for filtering Conversations based on their creation date. Conversations that were created on or after this date will be included in the results. The date must be in ISO8601 format, specifically starting at the beginning of the specified date (YYYY-MM-DDT00:00:00Z), for precise filtering. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
116
+ # @param [String] end_date Defines the end of the date range for filtering conversations by their creation date. Only conversations that were created on or before this date will appear in the results. The date must be in ISO8601 format, specifically capturing up to the end of the specified date (YYYY-MM-DDT23:59:59Z), to ensure that conversations from the entire end day are included. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
117
+ # @param [State] state State for sorting and filtering list of Conversations. Can be `active`, `inactive` or `closed`
118
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
119
+ # guarantees to never return more than limit. Default is no limit
120
+ # @param [Integer] page_size Number of records to fetch per request, when
121
+ # not set will use the default value of 50 records. If no page_size is defined
122
+ # but a limit is defined, stream() will attempt to read the limit with the most
123
+ # efficient page size, i.e. min(limit, 1000)
124
+ # @return [Enumerable] Enumerable that will yield up to limit results
125
+ def stream(start_date: :unset, end_date: :unset, state: :unset, limit: nil, page_size: nil)
126
+ limits = @version.read_limits(limit, page_size)
127
+
128
+ page = self.page(
129
+ start_date: start_date,
130
+ end_date: end_date,
131
+ state: state,
132
+ page_size: limits[:page_size], )
133
+
134
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
135
+ end
136
+
137
+ ##
138
+ # When passed a block, yields ConversationInstance records from the API.
139
+ # This operation lazily loads records as efficiently as possible until the limit
140
+ # is reached.
141
+ def each
142
+ limits = @version.read_limits
143
+
144
+ page = self.page(page_size: limits[:page_size], )
145
+
146
+ @version.stream(page,
141
147
  limit: limits[:limit],
142
148
  page_limit: limits[:page_limit]).each {|x| yield x}
143
- end
144
-
145
- ##
146
- # Retrieve a single page of ConversationInstance records from the API.
147
- # Request is executed immediately.
148
- # @param [String] start_date Start date or time in ISO8601 format for filtering
149
- # list of Conversations. If a date is provided, the start time of the date is used
150
- # (YYYY-MM-DDT00:00:00Z). Can be combined with other filters.
151
- # @param [String] end_date End date or time in ISO8601 format for filtering list
152
- # of Conversations. If a date is provided, the end time of the date is used
153
- # (YYYY-MM-DDT23:59:59Z). Can be combined with other filters.
154
- # @param [conversation.State] state State for sorting and filtering list of
155
- # Conversations. Can be `active`, `inactive` or `closed`
156
- # @param [String] page_token PageToken provided by the API
157
- # @param [Integer] page_number Page Number, this value is simply for client state
158
- # @param [Integer] page_size Number of records to return, defaults to 50
159
- # @return [Page] Page of ConversationInstance
160
- def page(start_date: :unset, end_date: :unset, state: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
161
- params = Twilio::Values.of({
162
- 'StartDate' => start_date,
163
- 'EndDate' => end_date,
164
- 'State' => state,
165
- 'PageToken' => page_token,
166
- 'Page' => page_number,
167
- 'PageSize' => page_size,
168
- })
169
-
170
- response = @version.page('GET', @uri, params: params)
171
-
172
- ConversationPage.new(@version, response, @solution)
173
- end
174
-
175
- ##
176
- # Retrieve a single page of ConversationInstance records from the API.
177
- # Request is executed immediately.
178
- # @param [String] target_url API-generated URL for the requested results page
179
- # @return [Page] Page of ConversationInstance
180
- def get_page(target_url)
181
- response = @version.domain.request(
182
- 'GET',
183
- target_url
184
- )
185
- ConversationPage.new(@version, response, @solution)
186
- end
187
-
188
- ##
189
- # Provide a user friendly representation
190
- def to_s
191
- '#<Twilio.Conversations.V1.ConversationList>'
192
- end
193
- end
194
-
195
- class ConversationPage < Page
196
- ##
197
- # Initialize the ConversationPage
198
- # @param [Version] version Version that contains the resource
199
- # @param [Response] response Response from the API
200
- # @param [Hash] solution Path solution for the resource
201
- # @return [ConversationPage] ConversationPage
202
- def initialize(version, response, solution)
203
- super(version, response)
204
-
205
- # Path Solution
206
- @solution = solution
207
- end
208
-
209
- ##
210
- # Build an instance of ConversationInstance
211
- # @param [Hash] payload Payload response from the API
212
- # @return [ConversationInstance] ConversationInstance
213
- def get_instance(payload)
214
- ConversationInstance.new(@version, payload, )
215
- end
216
-
217
- ##
218
- # Provide a user friendly representation
219
- def to_s
220
- '<Twilio.Conversations.V1.ConversationPage>'
221
- end
222
- end
223
-
224
- class ConversationContext < InstanceContext
225
- ##
226
- # Initialize the ConversationContext
227
- # @param [Version] version Version that contains the resource
228
- # @param [String] sid A 34 character string that uniquely identifies this
229
- # resource. Can also be the `unique_name` of the Conversation.
230
- # @return [ConversationContext] ConversationContext
231
- def initialize(version, sid)
232
- super(version)
233
-
234
- # Path Solution
235
- @solution = {sid: sid, }
236
- @uri = "/Conversations/#{@solution[:sid]}"
237
-
238
- # Dependents
239
- @participants = nil
240
- @messages = nil
241
- @webhooks = nil
242
- end
243
-
244
- ##
245
- # Update the ConversationInstance
246
- # @param [String] friendly_name The human-readable name of this conversation,
247
- # limited to 256 characters. Optional.
248
- # @param [Time] date_created The date that this resource was created.
249
- # @param [Time] date_updated The date that this resource was last updated.
250
- # @param [String] attributes An optional string metadata field you can use to
251
- # store any data you wish. The string value must contain structurally valid JSON
252
- # if specified. **Note** that if the attributes are not set "{}" will be
253
- # returned.
254
- # @param [String] messaging_service_sid The unique ID of the {Messaging
255
- # Service}[https://www.twilio.com/docs/sms/services/api] this conversation belongs
256
- # to.
257
- # @param [conversation.State] state Current state of this conversation. Can be
258
- # either `active`, `inactive` or `closed` and defaults to `active`
259
- # @param [String] timers_inactive ISO8601 duration when conversation will be
260
- # switched to `inactive` state. Minimum value for this timer is 1 minute.
261
- # @param [String] timers_closed ISO8601 duration when conversation will be
262
- # switched to `closed` state. Minimum value for this timer is 10 minutes.
263
- # @param [String] unique_name An application-defined string that uniquely
264
- # identifies the resource. It can be used to address the resource in place of the
265
- # resource's `sid` in the URL.
266
- # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
267
- # X-Twilio-Webhook-Enabled HTTP request header
268
- # @return [ConversationInstance] Updated ConversationInstance
269
- def update(friendly_name: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, messaging_service_sid: :unset, state: :unset, timers_inactive: :unset, timers_closed: :unset, unique_name: :unset, x_twilio_webhook_enabled: :unset)
270
- data = Twilio::Values.of({
271
- 'FriendlyName' => friendly_name,
272
- 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
273
- 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
274
- 'Attributes' => attributes,
275
- 'MessagingServiceSid' => messaging_service_sid,
276
- 'State' => state,
277
- 'Timers.Inactive' => timers_inactive,
278
- 'Timers.Closed' => timers_closed,
279
- 'UniqueName' => unique_name,
280
- })
281
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
282
-
283
- payload = @version.update('POST', @uri, data: data, headers: headers)
284
-
285
- ConversationInstance.new(@version, payload, sid: @solution[:sid], )
286
- end
287
-
288
- ##
289
- # Delete the ConversationInstance
290
- # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
291
- # X-Twilio-Webhook-Enabled HTTP request header
292
- # @return [Boolean] true if delete succeeds, false otherwise
293
- def delete(x_twilio_webhook_enabled: :unset)
294
- headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
295
-
296
- @version.delete('DELETE', @uri, headers: headers)
297
- end
298
-
299
- ##
300
- # Fetch the ConversationInstance
301
- # @return [ConversationInstance] Fetched ConversationInstance
302
- def fetch
303
- payload = @version.fetch('GET', @uri)
304
-
305
- ConversationInstance.new(@version, payload, sid: @solution[:sid], )
306
- end
307
-
308
- ##
309
- # Access the participants
310
- # @return [ParticipantList]
311
- # @return [ParticipantContext] if sid was passed.
312
- def participants(sid=:unset)
313
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
314
-
315
- if sid != :unset
316
- return ParticipantContext.new(@version, @solution[:sid], sid, )
317
- end
318
-
319
- unless @participants
320
- @participants = ParticipantList.new(@version, conversation_sid: @solution[:sid], )
321
- end
322
-
323
- @participants
324
- end
325
-
326
- ##
327
- # Access the messages
328
- # @return [MessageList]
329
- # @return [MessageContext] if sid was passed.
330
- def messages(sid=:unset)
331
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
332
-
333
- if sid != :unset
334
- return MessageContext.new(@version, @solution[:sid], sid, )
335
- end
336
-
337
- unless @messages
338
- @messages = MessageList.new(@version, conversation_sid: @solution[:sid], )
339
- end
340
-
341
- @messages
342
- end
343
-
344
- ##
345
- # Access the webhooks
346
- # @return [WebhookList]
347
- # @return [WebhookContext] if sid was passed.
348
- def webhooks(sid=:unset)
349
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
350
-
351
- if sid != :unset
352
- return WebhookContext.new(@version, @solution[:sid], sid, )
353
- end
354
-
355
- unless @webhooks
356
- @webhooks = WebhookList.new(@version, conversation_sid: @solution[:sid], )
357
- end
358
-
359
- @webhooks
360
- end
361
-
362
- ##
363
- # Provide a user friendly representation
364
- def to_s
365
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
366
- "#<Twilio.Conversations.V1.ConversationContext #{context}>"
367
- end
368
-
369
- ##
370
- # Provide a detailed, user friendly representation
371
- def inspect
372
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
373
- "#<Twilio.Conversations.V1.ConversationContext #{context}>"
374
- end
375
- end
149
+ end
150
+
151
+ ##
152
+ # Retrieve a single page of ConversationInstance records from the API.
153
+ # Request is executed immediately.
154
+ # @param [String] start_date Specifies the beginning of the date range for filtering Conversations based on their creation date. Conversations that were created on or after this date will be included in the results. The date must be in ISO8601 format, specifically starting at the beginning of the specified date (YYYY-MM-DDT00:00:00Z), for precise filtering. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
155
+ # @param [String] end_date Defines the end of the date range for filtering conversations by their creation date. Only conversations that were created on or before this date will appear in the results. The date must be in ISO8601 format, specifically capturing up to the end of the specified date (YYYY-MM-DDT23:59:59Z), to ensure that conversations from the entire end day are included. This parameter can be combined with other filters. If this filter is used, the returned list is sorted by latest conversation creation date in descending order.
156
+ # @param [State] state State for sorting and filtering list of Conversations. Can be `active`, `inactive` or `closed`
157
+ # @param [String] page_token PageToken provided by the API
158
+ # @param [Integer] page_number Page Number, this value is simply for client state
159
+ # @param [Integer] page_size Number of records to return, defaults to 50
160
+ # @return [Page] Page of ConversationInstance
161
+ def page(start_date: :unset, end_date: :unset, state: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
162
+ params = Twilio::Values.of({
163
+ 'StartDate' => start_date,
164
+ 'EndDate' => end_date,
165
+ 'State' => state,
166
+ 'PageToken' => page_token,
167
+ 'Page' => page_number,
168
+ 'PageSize' => page_size,
169
+ })
170
+
171
+ response = @version.page('GET', @uri, params: params)
172
+
173
+ ConversationPage.new(@version, response, @solution)
174
+ end
175
+
176
+ ##
177
+ # Retrieve a single page of ConversationInstance records from the API.
178
+ # Request is executed immediately.
179
+ # @param [String] target_url API-generated URL for the requested results page
180
+ # @return [Page] Page of ConversationInstance
181
+ def get_page(target_url)
182
+ response = @version.domain.request(
183
+ 'GET',
184
+ target_url
185
+ )
186
+ ConversationPage.new(@version, response, @solution)
187
+ end
188
+
189
+
190
+
191
+ # Provide a user friendly representation
192
+ def to_s
193
+ '#<Twilio.Conversations.V1.ConversationList>'
194
+ end
195
+ end
196
+
197
+
198
+ class ConversationContext < InstanceContext
199
+ ##
200
+ # Initialize the ConversationContext
201
+ # @param [Version] version Version that contains the resource
202
+ # @param [String] sid A 34 character string that uniquely identifies this resource. Can also be the `unique_name` of the Conversation.
203
+ # @return [ConversationContext] ConversationContext
204
+ def initialize(version, sid)
205
+ super(version)
206
+
207
+ # Path Solution
208
+ @solution = { sid: sid, }
209
+ @uri = "/Conversations/#{@solution[:sid]}"
210
+
211
+ # Dependents
212
+ @webhooks = nil
213
+ @messages = nil
214
+ @participants = nil
215
+ end
216
+ ##
217
+ # Delete the ConversationInstance
218
+ # @param [ConversationEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
219
+ # @return [Boolean] True if delete succeeds, false otherwise
220
+ def delete(
221
+ x_twilio_webhook_enabled: :unset
222
+ )
223
+
224
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
225
+
226
+ @version.delete('DELETE', @uri, headers: headers)
227
+ end
228
+
229
+ ##
230
+ # Fetch the ConversationInstance
231
+ # @return [ConversationInstance] Fetched ConversationInstance
232
+ def fetch
233
+
234
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', })
235
+
236
+ payload = @version.fetch('GET', @uri, headers: headers)
237
+ ConversationInstance.new(
238
+ @version,
239
+ payload,
240
+ sid: @solution[:sid],
241
+ )
242
+ end
243
+
244
+ ##
245
+ # Update the ConversationInstance
246
+ # @param [String] friendly_name The human-readable name of this conversation, limited to 256 characters. Optional.
247
+ # @param [Time] date_created The date that this resource was created.
248
+ # @param [Time] date_updated The date that this resource was last updated.
249
+ # @param [String] attributes An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
250
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
251
+ # @param [State] state
252
+ # @param [String] timers_inactive ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.
253
+ # @param [String] timers_closed ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.
254
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
255
+ # @param [String] bindings_email_address The default email address that will be used when sending outbound emails in this conversation.
256
+ # @param [String] bindings_email_name The default name that will be used when sending outbound emails in this conversation.
257
+ # @param [ConversationEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
258
+ # @return [ConversationInstance] Updated ConversationInstance
259
+ def update(
260
+ friendly_name: :unset,
261
+ date_created: :unset,
262
+ date_updated: :unset,
263
+ attributes: :unset,
264
+ messaging_service_sid: :unset,
265
+ state: :unset,
266
+ timers_inactive: :unset,
267
+ timers_closed: :unset,
268
+ unique_name: :unset,
269
+ bindings_email_address: :unset,
270
+ bindings_email_name: :unset,
271
+ x_twilio_webhook_enabled: :unset
272
+ )
273
+
274
+ data = Twilio::Values.of({
275
+ 'FriendlyName' => friendly_name,
276
+ 'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
277
+ 'DateUpdated' => Twilio.serialize_iso8601_datetime(date_updated),
278
+ 'Attributes' => attributes,
279
+ 'MessagingServiceSid' => messaging_service_sid,
280
+ 'State' => state,
281
+ 'Timers.Inactive' => timers_inactive,
282
+ 'Timers.Closed' => timers_closed,
283
+ 'UniqueName' => unique_name,
284
+ 'Bindings.Email.Address' => bindings_email_address,
285
+ 'Bindings.Email.Name' => bindings_email_name,
286
+ })
287
+
288
+ headers = Twilio::Values.of({'Content-Type' => 'application/x-www-form-urlencoded', 'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
289
+
290
+ payload = @version.update('POST', @uri, data: data, headers: headers)
291
+ ConversationInstance.new(
292
+ @version,
293
+ payload,
294
+ sid: @solution[:sid],
295
+ )
296
+ end
297
+
298
+ ##
299
+ # Access the webhooks
300
+ # @return [WebhookList]
301
+ # @return [WebhookContext] if sid was passed.
302
+ def webhooks(sid=:unset)
303
+
304
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
305
+
306
+ if sid != :unset
307
+ return WebhookContext.new(@version, @solution[:sid],sid )
308
+ end
309
+
310
+ unless @webhooks
311
+ @webhooks = WebhookList.new(
312
+ @version, conversation_sid: @solution[:sid], )
313
+ end
314
+
315
+ @webhooks
316
+ end
317
+ ##
318
+ # Access the messages
319
+ # @return [MessageList]
320
+ # @return [MessageContext] if sid was passed.
321
+ def messages(sid=:unset)
322
+
323
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
324
+
325
+ if sid != :unset
326
+ return MessageContext.new(@version, @solution[:sid],sid )
327
+ end
328
+
329
+ unless @messages
330
+ @messages = MessageList.new(
331
+ @version, conversation_sid: @solution[:sid], )
332
+ end
333
+
334
+ @messages
335
+ end
336
+ ##
337
+ # Access the participants
338
+ # @return [ParticipantList]
339
+ # @return [ParticipantContext] if sid was passed.
340
+ def participants(sid=:unset)
341
+
342
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
343
+
344
+ if sid != :unset
345
+ return ParticipantContext.new(@version, @solution[:sid],sid )
346
+ end
347
+
348
+ unless @participants
349
+ @participants = ParticipantList.new(
350
+ @version, conversation_sid: @solution[:sid], )
351
+ end
352
+
353
+ @participants
354
+ end
355
+
356
+ ##
357
+ # Provide a user friendly representation
358
+ def to_s
359
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
360
+ "#<Twilio.Conversations.V1.ConversationContext #{context}>"
361
+ end
362
+
363
+ ##
364
+ # Provide a detailed, user friendly representation
365
+ def inspect
366
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
367
+ "#<Twilio.Conversations.V1.ConversationContext #{context}>"
368
+ end
369
+ end
370
+
371
+ class ConversationPage < Page
372
+ ##
373
+ # Initialize the ConversationPage
374
+ # @param [Version] version Version that contains the resource
375
+ # @param [Response] response Response from the API
376
+ # @param [Hash] solution Path solution for the resource
377
+ # @return [ConversationPage] ConversationPage
378
+ def initialize(version, response, solution)
379
+ super(version, response)
380
+
381
+ # Path Solution
382
+ @solution = solution
383
+ end
384
+
385
+ ##
386
+ # Build an instance of ConversationInstance
387
+ # @param [Hash] payload Payload response from the API
388
+ # @return [ConversationInstance] ConversationInstance
389
+ def get_instance(payload)
390
+ ConversationInstance.new(@version, payload)
391
+ end
392
+
393
+ ##
394
+ # Provide a user friendly representation
395
+ def to_s
396
+ '<Twilio.Conversations.V1.ConversationPage>'
397
+ end
398
+ end
399
+ class ConversationInstance < InstanceResource
400
+ ##
401
+ # Initialize the ConversationInstance
402
+ # @param [Version] version Version that contains the resource
403
+ # @param [Hash] payload payload that contains response from Twilio
404
+ # @param [String] account_sid The SID of the
405
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Conversation
406
+ # resource.
407
+ # @param [String] sid The SID of the Call resource to fetch.
408
+ # @return [ConversationInstance] ConversationInstance
409
+ def initialize(version, payload , sid: nil)
410
+ super(version)
411
+
412
+ # Marshaled Properties
413
+ @properties = {
414
+ 'account_sid' => payload['account_sid'],
415
+ 'chat_service_sid' => payload['chat_service_sid'],
416
+ 'messaging_service_sid' => payload['messaging_service_sid'],
417
+ 'sid' => payload['sid'],
418
+ 'friendly_name' => payload['friendly_name'],
419
+ 'unique_name' => payload['unique_name'],
420
+ 'attributes' => payload['attributes'],
421
+ 'state' => payload['state'],
422
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
423
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
424
+ 'timers' => payload['timers'],
425
+ 'url' => payload['url'],
426
+ 'links' => payload['links'],
427
+ 'bindings' => payload['bindings'],
428
+ }
429
+
430
+ # Context
431
+ @instance_context = nil
432
+ @params = { 'sid' => sid || @properties['sid'] , }
433
+ end
434
+
435
+ ##
436
+ # Generate an instance context for the instance, the context is capable of
437
+ # performing various actions. All instance actions are proxied to the context
438
+ # @return [ConversationContext] CallContext for this CallInstance
439
+ def context
440
+ unless @instance_context
441
+ @instance_context = ConversationContext.new(@version , @params['sid'])
442
+ end
443
+ @instance_context
444
+ end
445
+
446
+ ##
447
+ # @return [String] The unique ID of the [Account](https://www.twilio.com/docs/iam/api/account) responsible for this conversation.
448
+ def account_sid
449
+ @properties['account_sid']
450
+ end
451
+
452
+ ##
453
+ # @return [String] The unique ID of the [Conversation Service](https://www.twilio.com/docs/conversations/api/service-resource) this conversation belongs to.
454
+ def chat_service_sid
455
+ @properties['chat_service_sid']
456
+ end
457
+
458
+ ##
459
+ # @return [String] The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
460
+ def messaging_service_sid
461
+ @properties['messaging_service_sid']
462
+ end
463
+
464
+ ##
465
+ # @return [String] A 34 character string that uniquely identifies this resource.
466
+ def sid
467
+ @properties['sid']
468
+ end
469
+
470
+ ##
471
+ # @return [String] The human-readable name of this conversation, limited to 256 characters. Optional.
472
+ def friendly_name
473
+ @properties['friendly_name']
474
+ end
475
+
476
+ ##
477
+ # @return [String] An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
478
+ def unique_name
479
+ @properties['unique_name']
480
+ end
481
+
482
+ ##
483
+ # @return [String] An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \"{}\" will be returned.
484
+ def attributes
485
+ @properties['attributes']
486
+ end
487
+
488
+ ##
489
+ # @return [State]
490
+ def state
491
+ @properties['state']
492
+ end
493
+
494
+ ##
495
+ # @return [Time] The date that this resource was created.
496
+ def date_created
497
+ @properties['date_created']
498
+ end
499
+
500
+ ##
501
+ # @return [Time] The date that this resource was last updated.
502
+ def date_updated
503
+ @properties['date_updated']
504
+ end
505
+
506
+ ##
507
+ # @return [Hash] Timer date values representing state update for this conversation.
508
+ def timers
509
+ @properties['timers']
510
+ end
511
+
512
+ ##
513
+ # @return [String] An absolute API resource URL for this conversation.
514
+ def url
515
+ @properties['url']
516
+ end
517
+
518
+ ##
519
+ # @return [Hash] Contains absolute URLs to access the [participants](https://www.twilio.com/docs/conversations/api/conversation-participant-resource), [messages](https://www.twilio.com/docs/conversations/api/conversation-message-resource) and [webhooks](https://www.twilio.com/docs/conversations/api/conversation-scoped-webhook-resource) of this conversation.
520
+ def links
521
+ @properties['links']
522
+ end
523
+
524
+ ##
525
+ # @return [Hash]
526
+ def bindings
527
+ @properties['bindings']
528
+ end
529
+
530
+ ##
531
+ # Delete the ConversationInstance
532
+ # @param [ConversationEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
533
+ # @return [Boolean] True if delete succeeds, false otherwise
534
+ def delete(
535
+ x_twilio_webhook_enabled: :unset
536
+ )
537
+
538
+ context.delete(
539
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
540
+ )
541
+ end
542
+
543
+ ##
544
+ # Fetch the ConversationInstance
545
+ # @return [ConversationInstance] Fetched ConversationInstance
546
+ def fetch
547
+
548
+ context.fetch
549
+ end
550
+
551
+ ##
552
+ # Update the ConversationInstance
553
+ # @param [String] friendly_name The human-readable name of this conversation, limited to 256 characters. Optional.
554
+ # @param [Time] date_created The date that this resource was created.
555
+ # @param [Time] date_updated The date that this resource was last updated.
556
+ # @param [String] attributes An optional string metadata field you can use to store any data you wish. The string value must contain structurally valid JSON if specified. **Note** that if the attributes are not set \\\"{}\\\" will be returned.
557
+ # @param [String] messaging_service_sid The unique ID of the [Messaging Service](https://www.twilio.com/docs/messaging/api/service-resource) this conversation belongs to.
558
+ # @param [State] state
559
+ # @param [String] timers_inactive ISO8601 duration when conversation will be switched to `inactive` state. Minimum value for this timer is 1 minute.
560
+ # @param [String] timers_closed ISO8601 duration when conversation will be switched to `closed` state. Minimum value for this timer is 10 minutes.
561
+ # @param [String] unique_name An application-defined string that uniquely identifies the resource. It can be used to address the resource in place of the resource's `sid` in the URL.
562
+ # @param [String] bindings_email_address The default email address that will be used when sending outbound emails in this conversation.
563
+ # @param [String] bindings_email_name The default name that will be used when sending outbound emails in this conversation.
564
+ # @param [ConversationEnumWebhookEnabledType] x_twilio_webhook_enabled The X-Twilio-Webhook-Enabled HTTP request header
565
+ # @return [ConversationInstance] Updated ConversationInstance
566
+ def update(
567
+ friendly_name: :unset,
568
+ date_created: :unset,
569
+ date_updated: :unset,
570
+ attributes: :unset,
571
+ messaging_service_sid: :unset,
572
+ state: :unset,
573
+ timers_inactive: :unset,
574
+ timers_closed: :unset,
575
+ unique_name: :unset,
576
+ bindings_email_address: :unset,
577
+ bindings_email_name: :unset,
578
+ x_twilio_webhook_enabled: :unset
579
+ )
580
+
581
+ context.update(
582
+ friendly_name: friendly_name,
583
+ date_created: date_created,
584
+ date_updated: date_updated,
585
+ attributes: attributes,
586
+ messaging_service_sid: messaging_service_sid,
587
+ state: state,
588
+ timers_inactive: timers_inactive,
589
+ timers_closed: timers_closed,
590
+ unique_name: unique_name,
591
+ bindings_email_address: bindings_email_address,
592
+ bindings_email_name: bindings_email_name,
593
+ x_twilio_webhook_enabled: x_twilio_webhook_enabled,
594
+ )
595
+ end
596
+
597
+ ##
598
+ # Access the webhooks
599
+ # @return [webhooks] webhooks
600
+ def webhooks
601
+ context.webhooks
602
+ end
603
+
604
+ ##
605
+ # Access the messages
606
+ # @return [messages] messages
607
+ def messages
608
+ context.messages
609
+ end
610
+
611
+ ##
612
+ # Access the participants
613
+ # @return [participants] participants
614
+ def participants
615
+ context.participants
616
+ end
617
+
618
+ ##
619
+ # Provide a user friendly representation
620
+ def to_s
621
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
622
+ "<Twilio.Conversations.V1.ConversationInstance #{values}>"
623
+ end
624
+
625
+ ##
626
+ # Provide a detailed, user friendly representation
627
+ def inspect
628
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
629
+ "<Twilio.Conversations.V1.ConversationInstance #{values}>"
630
+ end
631
+ end
376
632
 
377
- class ConversationInstance < InstanceResource
378
- ##
379
- # Initialize the ConversationInstance
380
- # @param [Version] version Version that contains the resource
381
- # @param [Hash] payload payload that contains response from Twilio
382
- # @param [String] sid A 34 character string that uniquely identifies this
383
- # resource. Can also be the `unique_name` of the Conversation.
384
- # @return [ConversationInstance] ConversationInstance
385
- def initialize(version, payload, sid: nil)
386
- super(version)
387
-
388
- # Marshaled Properties
389
- @properties = {
390
- 'account_sid' => payload['account_sid'],
391
- 'chat_service_sid' => payload['chat_service_sid'],
392
- 'messaging_service_sid' => payload['messaging_service_sid'],
393
- 'sid' => payload['sid'],
394
- 'friendly_name' => payload['friendly_name'],
395
- 'unique_name' => payload['unique_name'],
396
- 'attributes' => payload['attributes'],
397
- 'state' => payload['state'],
398
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
399
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
400
- 'timers' => payload['timers'],
401
- 'url' => payload['url'],
402
- 'links' => payload['links'],
403
- 'bindings' => payload['bindings'],
404
- }
405
-
406
- # Context
407
- @instance_context = nil
408
- @params = {'sid' => sid || @properties['sid'], }
409
- end
410
-
411
- ##
412
- # Generate an instance context for the instance, the context is capable of
413
- # performing various actions. All instance actions are proxied to the context
414
- # @return [ConversationContext] ConversationContext for this ConversationInstance
415
- def context
416
- unless @instance_context
417
- @instance_context = ConversationContext.new(@version, @params['sid'], )
418
633
  end
419
- @instance_context
420
- end
421
-
422
- ##
423
- # @return [String] The unique ID of the Account responsible for this conversation.
424
- def account_sid
425
- @properties['account_sid']
426
- end
427
-
428
- ##
429
- # @return [String] The unique ID of the Conversation Service this conversation belongs to.
430
- def chat_service_sid
431
- @properties['chat_service_sid']
432
- end
433
-
434
- ##
435
- # @return [String] The unique ID of the Messaging Service this conversation belongs to.
436
- def messaging_service_sid
437
- @properties['messaging_service_sid']
438
- end
439
-
440
- ##
441
- # @return [String] A 34 character string that uniquely identifies this resource.
442
- def sid
443
- @properties['sid']
444
- end
445
-
446
- ##
447
- # @return [String] The human-readable name of this conversation.
448
- def friendly_name
449
- @properties['friendly_name']
450
- end
451
-
452
- ##
453
- # @return [String] An application-defined string that uniquely identifies the resource
454
- def unique_name
455
- @properties['unique_name']
456
- end
457
-
458
- ##
459
- # @return [String] An optional string metadata field you can use to store any data you wish.
460
- def attributes
461
- @properties['attributes']
462
- end
463
-
464
- ##
465
- # @return [conversation.State] Current state of this conversation.
466
- def state
467
- @properties['state']
468
- end
469
-
470
- ##
471
- # @return [Time] The date that this resource was created.
472
- def date_created
473
- @properties['date_created']
474
- end
475
-
476
- ##
477
- # @return [Time] The date that this resource was last updated.
478
- def date_updated
479
- @properties['date_updated']
480
- end
481
-
482
- ##
483
- # @return [Hash] Timer date values for this conversation.
484
- def timers
485
- @properties['timers']
486
- end
487
-
488
- ##
489
- # @return [String] An absolute URL for this conversation.
490
- def url
491
- @properties['url']
492
- end
493
-
494
- ##
495
- # @return [String] Absolute URLs to access the participants, messages and webhooks of this conversation.
496
- def links
497
- @properties['links']
498
- end
499
-
500
- ##
501
- # @return [Hash] The bindings
502
- def bindings
503
- @properties['bindings']
504
- end
505
-
506
- ##
507
- # Update the ConversationInstance
508
- # @param [String] friendly_name The human-readable name of this conversation,
509
- # limited to 256 characters. Optional.
510
- # @param [Time] date_created The date that this resource was created.
511
- # @param [Time] date_updated The date that this resource was last updated.
512
- # @param [String] attributes An optional string metadata field you can use to
513
- # store any data you wish. The string value must contain structurally valid JSON
514
- # if specified. **Note** that if the attributes are not set "{}" will be
515
- # returned.
516
- # @param [String] messaging_service_sid The unique ID of the {Messaging
517
- # Service}[https://www.twilio.com/docs/sms/services/api] this conversation belongs
518
- # to.
519
- # @param [conversation.State] state Current state of this conversation. Can be
520
- # either `active`, `inactive` or `closed` and defaults to `active`
521
- # @param [String] timers_inactive ISO8601 duration when conversation will be
522
- # switched to `inactive` state. Minimum value for this timer is 1 minute.
523
- # @param [String] timers_closed ISO8601 duration when conversation will be
524
- # switched to `closed` state. Minimum value for this timer is 10 minutes.
525
- # @param [String] unique_name An application-defined string that uniquely
526
- # identifies the resource. It can be used to address the resource in place of the
527
- # resource's `sid` in the URL.
528
- # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
529
- # X-Twilio-Webhook-Enabled HTTP request header
530
- # @return [ConversationInstance] Updated ConversationInstance
531
- def update(friendly_name: :unset, date_created: :unset, date_updated: :unset, attributes: :unset, messaging_service_sid: :unset, state: :unset, timers_inactive: :unset, timers_closed: :unset, unique_name: :unset, x_twilio_webhook_enabled: :unset)
532
- context.update(
533
- friendly_name: friendly_name,
534
- date_created: date_created,
535
- date_updated: date_updated,
536
- attributes: attributes,
537
- messaging_service_sid: messaging_service_sid,
538
- state: state,
539
- timers_inactive: timers_inactive,
540
- timers_closed: timers_closed,
541
- unique_name: unique_name,
542
- x_twilio_webhook_enabled: x_twilio_webhook_enabled,
543
- )
544
- end
545
-
546
- ##
547
- # Delete the ConversationInstance
548
- # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
549
- # X-Twilio-Webhook-Enabled HTTP request header
550
- # @return [Boolean] true if delete succeeds, false otherwise
551
- def delete(x_twilio_webhook_enabled: :unset)
552
- context.delete(x_twilio_webhook_enabled: x_twilio_webhook_enabled, )
553
- end
554
-
555
- ##
556
- # Fetch the ConversationInstance
557
- # @return [ConversationInstance] Fetched ConversationInstance
558
- def fetch
559
- context.fetch
560
- end
561
-
562
- ##
563
- # Access the participants
564
- # @return [participants] participants
565
- def participants
566
- context.participants
567
- end
568
-
569
- ##
570
- # Access the messages
571
- # @return [messages] messages
572
- def messages
573
- context.messages
574
- end
575
-
576
- ##
577
- # Access the webhooks
578
- # @return [webhooks] webhooks
579
- def webhooks
580
- context.webhooks
581
- end
582
-
583
- ##
584
- # Provide a user friendly representation
585
- def to_s
586
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
587
- "<Twilio.Conversations.V1.ConversationInstance #{values}>"
588
- end
589
-
590
- ##
591
- # Provide a detailed, user friendly representation
592
- def inspect
593
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
594
- "<Twilio.Conversations.V1.ConversationInstance #{values}>"
595
- end
596
634
  end
597
- end
598
635
  end
599
- end
600
- end
636
+ end