twilio-ruby 5.40.2 → 5.43.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (369) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGES.md +111 -0
  3. data/{LICENSE.md → LICENSE} +0 -0
  4. data/PULL_REQUEST_TEMPLATE.md +3 -3
  5. data/README.md +18 -2
  6. data/lib/twilio-ruby.rb +1 -1
  7. data/lib/twilio-ruby/framework/version.rb +2 -1
  8. data/lib/twilio-ruby/jwt/access_token.rb +7 -2
  9. data/lib/twilio-ruby/rest/accounts.rb +12 -0
  10. data/lib/twilio-ruby/rest/accounts/v1.rb +14 -0
  11. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  12. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  13. data/lib/twilio-ruby/rest/api.rb +1 -1
  14. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +3 -3
  15. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +2 -2
  16. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +3 -3
  17. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +3 -3
  18. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +3 -3
  19. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +32 -23
  20. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +32 -23
  21. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +32 -23
  22. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +32 -23
  23. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +32 -23
  24. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +32 -23
  25. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +32 -23
  26. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +41 -20
  27. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  28. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +3 -3
  29. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +3 -3
  30. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +6 -6
  31. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +20 -14
  32. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +8 -8
  33. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +3 -3
  34. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +29 -22
  35. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +3 -3
  36. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +3 -3
  37. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +10 -10
  38. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +3 -3
  39. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +3 -3
  40. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +3 -3
  41. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +3 -3
  42. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +3 -3
  43. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +1 -1
  44. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +28 -21
  45. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +6 -4
  46. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +3 -3
  47. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +3 -3
  48. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +3 -3
  49. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +3 -3
  50. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +5 -5
  51. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +6 -6
  52. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +3 -3
  53. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +3 -3
  54. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +6 -6
  55. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +3 -3
  56. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +1 -1
  57. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +2 -2
  58. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +2 -2
  59. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +3 -3
  60. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +3 -3
  61. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +2 -2
  62. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +3 -3
  63. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +1 -1
  64. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +1 -1
  65. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +1 -1
  66. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +2 -2
  67. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +3 -3
  68. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +6 -6
  69. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +6 -6
  70. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +6 -6
  71. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +6 -6
  72. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +6 -6
  73. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +6 -6
  74. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +6 -6
  75. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +6 -6
  76. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +6 -6
  77. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +19 -18
  78. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +3 -3
  79. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +12 -12
  80. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +3 -3
  81. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +3 -3
  82. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +3 -3
  83. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +15 -11
  84. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +3 -3
  85. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +33 -26
  86. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +3 -3
  87. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +6 -6
  88. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +9 -9
  89. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +31 -24
  90. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +8 -8
  91. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +6 -6
  92. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +3 -3
  93. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +5 -22
  94. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +25 -40
  95. data/lib/twilio-ruby/rest/chat/v1/service.rb +36 -36
  96. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +3 -3
  97. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +19 -19
  98. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +28 -28
  99. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +7 -7
  100. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +5 -5
  101. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +8 -8
  102. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +2 -2
  103. data/lib/twilio-ruby/rest/chat/v2/service.rb +36 -36
  104. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +18 -18
  105. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +15 -15
  106. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +19 -19
  107. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +54 -54
  108. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +25 -25
  109. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +15 -15
  110. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +5 -5
  111. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +8 -8
  112. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +18 -18
  113. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +20 -20
  114. data/lib/twilio-ruby/rest/client.rb +30 -4
  115. data/lib/twilio-ruby/rest/conversations.rb +0 -16
  116. data/lib/twilio-ruby/rest/conversations/v1.rb +0 -24
  117. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +23 -21
  118. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  119. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +20 -20
  120. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +15 -20
  121. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +23 -25
  122. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +42 -44
  123. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +14 -19
  124. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +1 -9
  125. data/lib/twilio-ruby/rest/conversations/v1/role.rb +5 -11
  126. data/lib/twilio-ruby/rest/conversations/v1/service.rb +2 -10
  127. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +34 -39
  128. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +32 -28
  129. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +307 -0
  130. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +27 -25
  131. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +24 -29
  132. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +33 -35
  133. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +52 -54
  134. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +24 -29
  135. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +14 -20
  136. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +53 -42
  137. data/lib/twilio-ruby/rest/conversations/v1/user.rb +44 -33
  138. data/lib/twilio-ruby/rest/events.rb +10 -1
  139. data/lib/twilio-ruby/rest/events/v1.rb +17 -1
  140. data/lib/twilio-ruby/rest/events/v1/event_type.rb +8 -8
  141. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  142. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +290 -0
  143. data/lib/twilio-ruby/rest/events/v1/subscription.rb +40 -13
  144. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +3 -109
  145. data/lib/twilio-ruby/rest/fax/v1/fax.rb +28 -27
  146. data/lib/twilio-ruby/rest/insights.rb +8 -0
  147. data/lib/twilio-ruby/rest/insights/v1.rb +15 -0
  148. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +7 -0
  149. data/lib/twilio-ruby/rest/insights/v1/room.rb +487 -0
  150. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  151. data/lib/twilio-ruby/rest/ip_messaging.rb +8 -10
  152. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +6 -8
  153. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +29 -68
  154. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +198 -313
  155. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +32 -59
  156. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +23 -55
  157. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +28 -71
  158. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +31 -59
  159. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +19 -39
  160. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +29 -51
  161. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +12 -18
  162. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +6 -6
  163. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +29 -66
  164. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +116 -205
  165. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +23 -50
  166. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +41 -91
  167. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +23 -50
  168. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +42 -118
  169. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +46 -100
  170. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +36 -89
  171. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +19 -41
  172. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +29 -53
  173. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +23 -53
  174. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +27 -56
  175. data/lib/twilio-ruby/rest/lookups.rb +1 -1
  176. data/lib/twilio-ruby/rest/lookups/v1.rb +1 -1
  177. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +10 -10
  178. data/lib/twilio-ruby/rest/messaging/v1/service.rb +39 -36
  179. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +3 -3
  180. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +3 -3
  181. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +3 -3
  182. data/lib/twilio-ruby/rest/monitor/v1/event.rb +15 -15
  183. data/lib/twilio-ruby/rest/notify/v1/credential.rb +12 -6
  184. data/lib/twilio-ruby/rest/notify/v1/service.rb +24 -24
  185. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +10 -10
  186. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +23 -15
  187. data/lib/twilio-ruby/rest/preview.rb +8 -0
  188. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +5 -22
  189. data/lib/twilio-ruby/rest/preview/bulk_exports/export/export_custom_job.rb +21 -39
  190. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +15 -10
  191. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +9 -6
  192. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +1 -1
  193. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +15 -0
  194. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_call.rb +4 -4
  195. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +225 -0
  196. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +165 -0
  197. data/lib/twilio-ruby/rest/preview/trusted_comms/business.rb +0 -26
  198. data/lib/twilio-ruby/rest/preview/trusted_comms/business/insights.rb +1 -4
  199. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +4 -4
  200. data/lib/twilio-ruby/rest/preview/trusted_comms/phone_call.rb +52 -52
  201. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +2 -2
  202. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +2 -2
  203. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +4 -4
  204. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +2 -2
  205. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +4 -4
  206. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +2 -2
  207. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +4 -4
  208. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +3 -3
  209. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +4 -4
  210. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +4 -4
  211. data/lib/twilio-ruby/rest/proxy/v1/service.rb +15 -15
  212. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +13 -11
  213. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +6 -6
  214. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +6 -6
  215. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +6 -6
  216. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +9 -9
  217. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +8 -8
  218. data/lib/twilio-ruby/rest/serverless/v1/service.rb +5 -5
  219. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +4 -4
  220. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +4 -4
  221. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +29 -4
  222. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  223. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +4 -4
  224. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +4 -4
  225. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +4 -4
  226. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +4 -4
  227. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +4 -4
  228. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +4 -4
  229. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +4 -4
  230. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +6 -6
  231. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +6 -6
  232. data/lib/twilio-ruby/rest/supersim/v1/command.rb +7 -7
  233. data/lib/twilio-ruby/rest/supersim/v1/network.rb +6 -6
  234. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +7 -7
  235. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +6 -6
  236. data/lib/twilio-ruby/rest/sync/v1/service.rb +3 -3
  237. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +21 -11
  238. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +6 -6
  239. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +21 -11
  240. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +34 -11
  241. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +6 -6
  242. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +21 -11
  243. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +40 -17
  244. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +6 -6
  245. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +21 -11
  246. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +4 -4
  247. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +4 -4
  248. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +6 -6
  249. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +12 -9
  250. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +16 -12
  251. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +16 -16
  252. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +8 -8
  253. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +6 -6
  254. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +6 -6
  255. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +9 -9
  256. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +4 -7
  257. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +16 -12
  258. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +4 -4
  259. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +4 -4
  260. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +6 -6
  261. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +12 -12
  262. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +4 -4
  263. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +6 -6
  264. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +4 -4
  265. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +6 -6
  266. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +46 -53
  267. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +2 -2
  268. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +3 -2
  269. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +3 -2
  270. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +201 -0
  271. data/lib/twilio-ruby/rest/verify/v2/form.rb +4 -4
  272. data/lib/twilio-ruby/rest/verify/v2/service.rb +54 -33
  273. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +3 -3
  274. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +23 -35
  275. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +36 -61
  276. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +59 -61
  277. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +12 -12
  278. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +3 -3
  279. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +3 -3
  280. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +14 -12
  281. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +5 -5
  282. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +4 -4
  283. data/lib/twilio-ruby/rest/video/v1/composition.rb +13 -9
  284. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +33 -24
  285. data/lib/twilio-ruby/rest/video/v1/recording.rb +6 -6
  286. data/lib/twilio-ruby/rest/video/v1/room.rb +27 -9
  287. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +6 -6
  288. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +9 -9
  289. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +2 -2
  290. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +150 -0
  291. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +9 -9
  292. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +3 -6
  293. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +22 -22
  294. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +4 -4
  295. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +2 -2
  296. data/lib/twilio-ruby/rest/wireless/v1/command.rb +7 -7
  297. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +8 -7
  298. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +22 -22
  299. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +4 -4
  300. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +10 -10
  301. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +6 -6
  302. data/lib/twilio-ruby/util/configuration.rb +5 -1
  303. data/lib/twilio-ruby/version.rb +1 -1
  304. data/spec/framework/version_spec.rb +11 -0
  305. data/spec/integration/accounts/v1/auth_token_promotion_spec.rb +44 -0
  306. data/spec/integration/accounts/v1/secondary_auth_token_spec.rb +69 -0
  307. data/spec/integration/api/v2010/account/call/event_spec.rb +102 -0
  308. data/spec/integration/api/v2010/account/call_spec.rb +20 -10
  309. data/spec/integration/api/v2010/account/conference/participant_spec.rb +30 -0
  310. data/spec/integration/bulkexports/v1/export/export_custom_job_spec.rb +4 -2
  311. data/spec/integration/conversations/v1/{webhook_spec.rb → configuration/webhook_spec.rb} +12 -8
  312. data/spec/integration/conversations/v1/configuration_spec.rb +4 -2
  313. data/spec/integration/conversations/v1/conversation_spec.rb +1 -1
  314. data/spec/integration/conversations/v1/{notification_spec.rb → service/configuration/notification_spec.rb} +12 -4
  315. data/spec/integration/conversations/v1/service/conversation_spec.rb +1 -1
  316. data/spec/integration/conversations/v1/service/user_spec.rb +9 -3
  317. data/spec/integration/conversations/v1/user_spec.rb +9 -3
  318. data/spec/integration/events/v1/schema/schema_version_spec.rb +126 -0
  319. data/spec/integration/events/v1/schema_spec.rb +46 -0
  320. data/spec/integration/events/v1/sink/sink_test_spec.rb +1 -1
  321. data/spec/integration/events/v1/subscription/subscribed_event_spec.rb +0 -121
  322. data/spec/integration/events/v1/subscription_spec.rb +87 -0
  323. data/spec/integration/insights/v1/call/summary_spec.rb +1 -0
  324. data/spec/integration/insights/v1/room/participant_spec.rb +147 -0
  325. data/spec/integration/insights/v1/room_spec.rb +164 -0
  326. data/spec/integration/ip_messaging/v1/credential_spec.rb +13 -13
  327. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +11 -11
  328. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +14 -14
  329. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +14 -14
  330. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +25 -25
  331. data/spec/integration/ip_messaging/v1/service/role_spec.rb +13 -13
  332. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +7 -7
  333. data/spec/integration/ip_messaging/v1/service/user_spec.rb +17 -17
  334. data/spec/integration/ip_messaging/v1/service_spec.rb +9 -9
  335. data/spec/integration/ip_messaging/v2/credential_spec.rb +13 -13
  336. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +11 -11
  337. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +11 -11
  338. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +13 -13
  339. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +17 -17
  340. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +15 -15
  341. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +29 -29
  342. data/spec/integration/ip_messaging/v2/service/role_spec.rb +13 -13
  343. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +9 -9
  344. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +20 -20
  345. data/spec/integration/ip_messaging/v2/service/user_spec.rb +21 -21
  346. data/spec/integration/ip_messaging/v2/service_spec.rb +29 -29
  347. data/spec/integration/preview/bulk_exports/export/export_custom_job_spec.rb +4 -2
  348. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel → branded_channel}/channel_spec.rb +4 -8
  349. data/spec/integration/preview/trusted_comms/{business/brand/branded_channel_spec.rb → branded_channel_spec.rb} +5 -9
  350. data/spec/integration/preview/trusted_comms/business_spec.rb +0 -1
  351. data/spec/integration/serverless/v1/service/build/build_status_spec.rb +48 -0
  352. data/spec/integration/serverless/v1/service/build_spec.rb +8 -2
  353. data/spec/integration/trunking/v1/trunk/recording_spec.rb +79 -0
  354. data/spec/integration/verify/v2/service/entity/challenge_spec.rb +56 -20
  355. data/spec/integration/verify/v2/service/entity/factor_spec.rb +11 -26
  356. data/spec/integration/verify/v2/service/entity_spec.rb +4 -12
  357. data/spec/integration/verify/v2/service_spec.rb +8 -4
  358. data/spec/integration/video/v1/room/room_recording_rule_spec.rb +89 -0
  359. data/spec/integration/video/v1/room_spec.rb +12 -7
  360. data/spec/jwt/access_token_spec.rb +9 -1
  361. data/spec/rest/client_spec.rb +24 -2
  362. data/twilio-ruby.gemspec +2 -1
  363. metadata +60 -19
  364. data/lib/twilio-ruby/rest/conversations/v1/notification.rb +0 -310
  365. data/lib/twilio-ruby/rest/conversations/v1/webhook.rb +0 -262
  366. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand.rb +0 -233
  367. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel.rb +0 -260
  368. data/lib/twilio-ruby/rest/preview/trusted_comms/business/brand/branded_channel/channel.rb +0 -189
  369. data/spec/integration/preview/trusted_comms/business/brand_spec.rb +0 -48
@@ -17,11 +17,9 @@ module Twilio
17
17
  @version = 'v1'
18
18
  @configuration = nil
19
19
  @conversations = nil
20
- @webhooks = nil
21
20
  @credentials = nil
22
21
  @roles = nil
23
22
  @services = nil
24
- @notifications = nil
25
23
  @users = nil
26
24
  end
27
25
 
@@ -46,12 +44,6 @@ module Twilio
46
44
  end
47
45
  end
48
46
 
49
- ##
50
- # @return [Twilio::REST::Conversations::V1::WebhookContext]
51
- def webhooks
52
- @webhooks ||= WebhookContext.new self
53
- end
54
-
55
47
  ##
56
48
  # @param [String] sid A 34 character string that uniquely identifies this
57
49
  # resource.
@@ -96,22 +88,6 @@ module Twilio
96
88
  end
97
89
  end
98
90
 
99
- ##
100
- # @param [String] chat_service_sid The SID of the [Chat
101
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) the
102
- # Configuration applies to.
103
- # @return [Twilio::REST::Conversations::V1::NotificationContext] if chat_service_sid was passed.
104
- # @return [Twilio::REST::Conversations::V1::NotificationList]
105
- def notifications(chat_service_sid=:unset)
106
- if chat_service_sid.nil?
107
- raise ArgumentError, 'chat_service_sid cannot be nil'
108
- elsif chat_service_sid == :unset
109
- @notifications ||= NotificationList.new self
110
- else
111
- NotificationContext.new(self, chat_service_sid)
112
- end
113
- end
114
-
115
91
  ##
116
92
  # @param [String] sid The SID of the User resource to fetch. This value can be
117
93
  # either the `sid` or the `identity` of the User resource to fetch.
@@ -10,8 +10,6 @@ module Twilio
10
10
  module REST
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
13
  class ConfigurationList < ListResource
16
14
  ##
17
15
  # Initialize the ConfigurationList
@@ -31,8 +29,6 @@ module Twilio
31
29
  end
32
30
  end
33
31
 
34
- ##
35
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
36
32
  class ConfigurationPage < Page
37
33
  ##
38
34
  # Initialize the ConfigurationPage
@@ -62,8 +58,6 @@ module Twilio
62
58
  end
63
59
  end
64
60
 
65
- ##
66
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
67
61
  class ConfigurationContext < InstanceContext
68
62
  ##
69
63
  # Initialize the ConfigurationContext
@@ -75,6 +69,9 @@ module Twilio
75
69
  # Path Solution
76
70
  @solution = {}
77
71
  @uri = "/Configuration"
72
+
73
+ # Components
74
+ @webhooks = nil
78
75
  end
79
76
 
80
77
  ##
@@ -88,11 +85,11 @@ module Twilio
88
85
 
89
86
  ##
90
87
  # Update the ConfigurationInstance
91
- # @param [String] default_chat_service_sid The SID of the default [Chat
92
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) to use when
93
- # creating a conversation.
94
- # @param [String] default_messaging_service_sid The SID of the default [Messaging
95
- # Service](https://www.twilio.com/docs/sms/services/api) to use when creating a
88
+ # @param [String] default_chat_service_sid The SID of the default {Conversation
89
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] to use
90
+ # when creating a conversation.
91
+ # @param [String] default_messaging_service_sid The SID of the default {Messaging
92
+ # Service}[https://www.twilio.com/docs/sms/services/api] to use when creating a
96
93
  # conversation.
97
94
  # @param [String] default_inactive_timer Default ISO8601 duration when
98
95
  # conversation will be switched to `inactive` state. Minimum value for this timer
@@ -113,6 +110,13 @@ module Twilio
113
110
  ConfigurationInstance.new(@version, payload, )
114
111
  end
115
112
 
113
+ ##
114
+ # Access the webhooks
115
+ # @return [WebhookContext] WebhookContext
116
+ def webhooks
117
+ return WebhookContext.new(@version, )
118
+ end
119
+
116
120
  ##
117
121
  # Provide a user friendly representation
118
122
  def to_s
@@ -128,8 +132,6 @@ module Twilio
128
132
  end
129
133
  end
130
134
 
131
- ##
132
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
133
135
  class ConfigurationInstance < InstanceResource
134
136
  ##
135
137
  # Initialize the ConfigurationInstance
@@ -173,7 +175,7 @@ module Twilio
173
175
  end
174
176
 
175
177
  ##
176
- # @return [String] The SID of the default Chat Service that every new conversation is associated with.
178
+ # @return [String] The SID of the default Conversation Service that every new conversation is associated with.
177
179
  def default_chat_service_sid
178
180
  @properties['default_chat_service_sid']
179
181
  end
@@ -197,13 +199,13 @@ module Twilio
197
199
  end
198
200
 
199
201
  ##
200
- # @return [String] The url
202
+ # @return [String] An absolute URL for this global configuration.
201
203
  def url
202
204
  @properties['url']
203
205
  end
204
206
 
205
207
  ##
206
- # @return [String] The links
208
+ # @return [String] Absolute URLs to access the webhook and default service configurations.
207
209
  def links
208
210
  @properties['links']
209
211
  end
@@ -217,11 +219,11 @@ module Twilio
217
219
 
218
220
  ##
219
221
  # Update the ConfigurationInstance
220
- # @param [String] default_chat_service_sid The SID of the default [Chat
221
- # Service](https://www.twilio.com/docs/chat/rest/service-resource) to use when
222
- # creating a conversation.
223
- # @param [String] default_messaging_service_sid The SID of the default [Messaging
224
- # Service](https://www.twilio.com/docs/sms/services/api) to use when creating a
222
+ # @param [String] default_chat_service_sid The SID of the default {Conversation
223
+ # Service}[https://www.twilio.com/docs/conversations/api/service-resource] to use
224
+ # when creating a conversation.
225
+ # @param [String] default_messaging_service_sid The SID of the default {Messaging
226
+ # Service}[https://www.twilio.com/docs/sms/services/api] to use when creating a
225
227
  # conversation.
226
228
  # @param [String] default_inactive_timer Default ISO8601 duration when
227
229
  # conversation will be switched to `inactive` state. Minimum value for this timer
@@ -0,0 +1,254 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+ #
7
+ # frozen_string_literal: true
8
+
9
+ module Twilio
10
+ module REST
11
+ class Conversations < Domain
12
+ class V1 < Version
13
+ class ConfigurationContext < InstanceContext
14
+ class WebhookList < ListResource
15
+ ##
16
+ # Initialize the WebhookList
17
+ # @param [Version] version Version that contains the resource
18
+ # @return [WebhookList] WebhookList
19
+ def initialize(version)
20
+ super(version)
21
+
22
+ # Path Solution
23
+ @solution = {}
24
+ end
25
+
26
+ ##
27
+ # Provide a user friendly representation
28
+ def to_s
29
+ '#<Twilio.Conversations.V1.WebhookList>'
30
+ end
31
+ end
32
+
33
+ class WebhookPage < Page
34
+ ##
35
+ # Initialize the WebhookPage
36
+ # @param [Version] version Version that contains the resource
37
+ # @param [Response] response Response from the API
38
+ # @param [Hash] solution Path solution for the resource
39
+ # @return [WebhookPage] WebhookPage
40
+ def initialize(version, response, solution)
41
+ super(version, response)
42
+
43
+ # Path Solution
44
+ @solution = solution
45
+ end
46
+
47
+ ##
48
+ # Build an instance of WebhookInstance
49
+ # @param [Hash] payload Payload response from the API
50
+ # @return [WebhookInstance] WebhookInstance
51
+ def get_instance(payload)
52
+ WebhookInstance.new(@version, payload, )
53
+ end
54
+
55
+ ##
56
+ # Provide a user friendly representation
57
+ def to_s
58
+ '<Twilio.Conversations.V1.WebhookPage>'
59
+ end
60
+ end
61
+
62
+ class WebhookContext < InstanceContext
63
+ ##
64
+ # Initialize the WebhookContext
65
+ # @param [Version] version Version that contains the resource
66
+ # @return [WebhookContext] WebhookContext
67
+ def initialize(version)
68
+ super(version)
69
+
70
+ # Path Solution
71
+ @solution = {}
72
+ @uri = "/Configuration/Webhooks"
73
+ end
74
+
75
+ ##
76
+ # Fetch the WebhookInstance
77
+ # @return [WebhookInstance] Fetched WebhookInstance
78
+ def fetch
79
+ payload = @version.fetch('GET', @uri)
80
+
81
+ WebhookInstance.new(@version, payload, )
82
+ end
83
+
84
+ ##
85
+ # Update the WebhookInstance
86
+ # @param [String] method The HTTP method to be used when sending a webhook
87
+ # request.
88
+ # @param [String] filters The list of webhook event triggers that are enabled for
89
+ # this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`,
90
+ # `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`,
91
+ # `onParticipantUpdated`, `onParticipantRemoved`
92
+ # @param [String] pre_webhook_url The absolute url the pre-event webhook request
93
+ # should be sent to.
94
+ # @param [String] post_webhook_url The absolute url the post-event webhook request
95
+ # should be sent to.
96
+ # @param [webhook.Target] target The routing target of the webhook.
97
+ # @return [WebhookInstance] Updated WebhookInstance
98
+ def update(method: :unset, filters: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, target: :unset)
99
+ data = Twilio::Values.of({
100
+ 'Method' => method,
101
+ 'Filters' => Twilio.serialize_list(filters) { |e| e },
102
+ 'PreWebhookUrl' => pre_webhook_url,
103
+ 'PostWebhookUrl' => post_webhook_url,
104
+ 'Target' => target,
105
+ })
106
+
107
+ payload = @version.update('POST', @uri, data: data)
108
+
109
+ WebhookInstance.new(@version, payload, )
110
+ end
111
+
112
+ ##
113
+ # Provide a user friendly representation
114
+ def to_s
115
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
116
+ "#<Twilio.Conversations.V1.WebhookContext #{context}>"
117
+ end
118
+
119
+ ##
120
+ # Provide a detailed, user friendly representation
121
+ def inspect
122
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
123
+ "#<Twilio.Conversations.V1.WebhookContext #{context}>"
124
+ end
125
+ end
126
+
127
+ class WebhookInstance < InstanceResource
128
+ ##
129
+ # Initialize the WebhookInstance
130
+ # @param [Version] version Version that contains the resource
131
+ # @param [Hash] payload payload that contains response from Twilio
132
+ # @return [WebhookInstance] WebhookInstance
133
+ def initialize(version, payload)
134
+ super(version)
135
+
136
+ # Marshaled Properties
137
+ @properties = {
138
+ 'account_sid' => payload['account_sid'],
139
+ 'method' => payload['method'],
140
+ 'filters' => payload['filters'],
141
+ 'pre_webhook_url' => payload['pre_webhook_url'],
142
+ 'post_webhook_url' => payload['post_webhook_url'],
143
+ 'target' => payload['target'],
144
+ 'url' => payload['url'],
145
+ }
146
+
147
+ # Context
148
+ @instance_context = nil
149
+ @params = {}
150
+ end
151
+
152
+ ##
153
+ # Generate an instance context for the instance, the context is capable of
154
+ # performing various actions. All instance actions are proxied to the context
155
+ # @return [WebhookContext] WebhookContext for this WebhookInstance
156
+ def context
157
+ unless @instance_context
158
+ @instance_context = WebhookContext.new(@version, )
159
+ end
160
+ @instance_context
161
+ end
162
+
163
+ ##
164
+ # @return [String] The unique ID of the Account responsible for this conversation.
165
+ def account_sid
166
+ @properties['account_sid']
167
+ end
168
+
169
+ ##
170
+ # @return [webhook.Method] The HTTP method to be used when sending a webhook request.
171
+ def method
172
+ @properties['method']
173
+ end
174
+
175
+ ##
176
+ # @return [String] The list of webhook event triggers that are enabled for this Service.
177
+ def filters
178
+ @properties['filters']
179
+ end
180
+
181
+ ##
182
+ # @return [String] The absolute url the pre-event webhook request should be sent to.
183
+ def pre_webhook_url
184
+ @properties['pre_webhook_url']
185
+ end
186
+
187
+ ##
188
+ # @return [String] The absolute url the post-event webhook request should be sent to.
189
+ def post_webhook_url
190
+ @properties['post_webhook_url']
191
+ end
192
+
193
+ ##
194
+ # @return [webhook.Target] The routing target of the webhook.
195
+ def target
196
+ @properties['target']
197
+ end
198
+
199
+ ##
200
+ # @return [String] An absolute URL for this webhook.
201
+ def url
202
+ @properties['url']
203
+ end
204
+
205
+ ##
206
+ # Fetch the WebhookInstance
207
+ # @return [WebhookInstance] Fetched WebhookInstance
208
+ def fetch
209
+ context.fetch
210
+ end
211
+
212
+ ##
213
+ # Update the WebhookInstance
214
+ # @param [String] method The HTTP method to be used when sending a webhook
215
+ # request.
216
+ # @param [String] filters The list of webhook event triggers that are enabled for
217
+ # this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`,
218
+ # `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`,
219
+ # `onParticipantUpdated`, `onParticipantRemoved`
220
+ # @param [String] pre_webhook_url The absolute url the pre-event webhook request
221
+ # should be sent to.
222
+ # @param [String] post_webhook_url The absolute url the post-event webhook request
223
+ # should be sent to.
224
+ # @param [webhook.Target] target The routing target of the webhook.
225
+ # @return [WebhookInstance] Updated WebhookInstance
226
+ def update(method: :unset, filters: :unset, pre_webhook_url: :unset, post_webhook_url: :unset, target: :unset)
227
+ context.update(
228
+ method: method,
229
+ filters: filters,
230
+ pre_webhook_url: pre_webhook_url,
231
+ post_webhook_url: post_webhook_url,
232
+ target: target,
233
+ )
234
+ end
235
+
236
+ ##
237
+ # Provide a user friendly representation
238
+ def to_s
239
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
240
+ "<Twilio.Conversations.V1.WebhookInstance #{values}>"
241
+ end
242
+
243
+ ##
244
+ # Provide a detailed, user friendly representation
245
+ def inspect
246
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
247
+ "<Twilio.Conversations.V1.WebhookInstance #{values}>"
248
+ end
249
+ end
250
+ end
251
+ end
252
+ end
253
+ end
254
+ end
@@ -10,8 +10,6 @@ module Twilio
10
10
  module REST
11
11
  class Conversations < Domain
12
12
  class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
13
  class ConversationList < ListResource
16
14
  ##
17
15
  # Initialize the ConversationList
@@ -34,8 +32,8 @@ module Twilio
34
32
  # resource's `sid` in the URL.
35
33
  # @param [Time] date_created The date that this resource was created.
36
34
  # @param [Time] date_updated The date that this resource was last updated.
37
- # @param [String] messaging_service_sid The unique id of the [SMS
38
- # Service](https://www.twilio.com/docs/sms/services/api) this conversation belongs
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
39
37
  # to.
40
38
  # @param [String] attributes An optional string metadata field you can use to
41
39
  # store any data you wish. The string value must contain structurally valid JSON
@@ -156,8 +154,6 @@ module Twilio
156
154
  end
157
155
  end
158
156
 
159
- ##
160
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
161
157
  class ConversationPage < Page
162
158
  ##
163
159
  # Initialize the ConversationPage
@@ -187,8 +183,6 @@ module Twilio
187
183
  end
188
184
  end
189
185
 
190
- ##
191
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
192
186
  class ConversationContext < InstanceContext
193
187
  ##
194
188
  # Initialize the ConversationContext
@@ -219,8 +213,8 @@ module Twilio
219
213
  # store any data you wish. The string value must contain structurally valid JSON
220
214
  # if specified. **Note** that if the attributes are not set "{}" will be
221
215
  # returned.
222
- # @param [String] messaging_service_sid The unique id of the [SMS
223
- # Service](https://www.twilio.com/docs/sms/services/api) this conversation belongs
216
+ # @param [String] messaging_service_sid The unique ID of the {Messaging
217
+ # Service}[https://www.twilio.com/docs/sms/services/api] this conversation belongs
224
218
  # to.
225
219
  # @param [conversation.State] state Current state of this conversation. Can be
226
220
  # either `active`, `inactive` or `closed` and defaults to `active`
@@ -228,10 +222,13 @@ module Twilio
228
222
  # switched to `inactive` state. Minimum value for this timer is 1 minute.
229
223
  # @param [String] timers_closed ISO8601 duration when conversation will be
230
224
  # switched to `closed` state. Minimum value for this timer is 10 minutes.
225
+ # @param [String] unique_name An application-defined string that uniquely
226
+ # identifies the resource. It can be used to address the resource in place of the
227
+ # resource's `sid` in the URL.
231
228
  # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
232
229
  # X-Twilio-Webhook-Enabled HTTP request header
233
230
  # @return [ConversationInstance] Updated ConversationInstance
234
- 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, x_twilio_webhook_enabled: :unset)
231
+ 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)
235
232
  data = Twilio::Values.of({
236
233
  'FriendlyName' => friendly_name,
237
234
  'DateCreated' => Twilio.serialize_iso8601_datetime(date_created),
@@ -241,6 +238,7 @@ module Twilio
241
238
  'State' => state,
242
239
  'Timers.Inactive' => timers_inactive,
243
240
  'Timers.Closed' => timers_closed,
241
+ 'UniqueName' => unique_name,
244
242
  })
245
243
  headers = Twilio::Values.of({'X-Twilio-Webhook-Enabled' => x_twilio_webhook_enabled, })
246
244
 
@@ -338,8 +336,6 @@ module Twilio
338
336
  end
339
337
  end
340
338
 
341
- ##
342
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
343
339
  class ConversationInstance < InstanceResource
344
340
  ##
345
341
  # Initialize the ConversationInstance
@@ -385,19 +381,19 @@ module Twilio
385
381
  end
386
382
 
387
383
  ##
388
- # @return [String] The unique id of the Account responsible for this conversation.
384
+ # @return [String] The unique ID of the Account responsible for this conversation.
389
385
  def account_sid
390
386
  @properties['account_sid']
391
387
  end
392
388
 
393
389
  ##
394
- # @return [String] The unique id of the Chat Service this conversation belongs to.
390
+ # @return [String] The unique ID of the Conversation Service this conversation belongs to.
395
391
  def chat_service_sid
396
392
  @properties['chat_service_sid']
397
393
  end
398
394
 
399
395
  ##
400
- # @return [String] The unique id of the SMS Service this conversation belongs to.
396
+ # @return [String] The unique ID of the Messaging Service this conversation belongs to.
401
397
  def messaging_service_sid
402
398
  @properties['messaging_service_sid']
403
399
  end
@@ -457,7 +453,7 @@ module Twilio
457
453
  end
458
454
 
459
455
  ##
460
- # @return [String] Absolute URLs to access the Participants, Messages and Webhooks of this Conversation.
456
+ # @return [String] Absolute URLs to access the participants, messages and webhooks of this conversation.
461
457
  def links
462
458
  @properties['links']
463
459
  end
@@ -472,8 +468,8 @@ module Twilio
472
468
  # store any data you wish. The string value must contain structurally valid JSON
473
469
  # if specified. **Note** that if the attributes are not set "{}" will be
474
470
  # returned.
475
- # @param [String] messaging_service_sid The unique id of the [SMS
476
- # Service](https://www.twilio.com/docs/sms/services/api) this conversation belongs
471
+ # @param [String] messaging_service_sid The unique ID of the {Messaging
472
+ # Service}[https://www.twilio.com/docs/sms/services/api] this conversation belongs
477
473
  # to.
478
474
  # @param [conversation.State] state Current state of this conversation. Can be
479
475
  # either `active`, `inactive` or `closed` and defaults to `active`
@@ -481,10 +477,13 @@ module Twilio
481
477
  # switched to `inactive` state. Minimum value for this timer is 1 minute.
482
478
  # @param [String] timers_closed ISO8601 duration when conversation will be
483
479
  # switched to `closed` state. Minimum value for this timer is 10 minutes.
480
+ # @param [String] unique_name An application-defined string that uniquely
481
+ # identifies the resource. It can be used to address the resource in place of the
482
+ # resource's `sid` in the URL.
484
483
  # @param [conversation.WebhookEnabledType] x_twilio_webhook_enabled The
485
484
  # X-Twilio-Webhook-Enabled HTTP request header
486
485
  # @return [ConversationInstance] Updated ConversationInstance
487
- 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, x_twilio_webhook_enabled: :unset)
486
+ 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)
488
487
  context.update(
489
488
  friendly_name: friendly_name,
490
489
  date_created: date_created,
@@ -494,6 +493,7 @@ module Twilio
494
493
  state: state,
495
494
  timers_inactive: timers_inactive,
496
495
  timers_closed: timers_closed,
496
+ unique_name: unique_name,
497
497
  x_twilio_webhook_enabled: x_twilio_webhook_enabled,
498
498
  )
499
499
  end