twilio-ruby 5.72.0 → 6.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (654) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/pr-lint.yml +8 -2
  3. data/.github/workflows/test-and-deploy.yml +14 -4
  4. data/.gitignore +3 -0
  5. data/CHANGES.md +281 -1
  6. data/CONTRIBUTING.md +10 -8
  7. data/LICENSE +1 -1
  8. data/Makefile +3 -0
  9. data/README.md +133 -40
  10. data/UPGRADE.md +10 -0
  11. data/advanced-examples/custom-http-client.md +170 -0
  12. data/cluster_spec.rb +77 -0
  13. data/lib/twilio-ruby/base/client_base.rb +124 -0
  14. data/lib/twilio-ruby/framework/rest/error.rb +0 -12
  15. data/lib/twilio-ruby/jwt/access_token.rb +0 -59
  16. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +198 -178
  17. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +372 -332
  18. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +372 -332
  19. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +121 -114
  20. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +214 -192
  21. data/lib/twilio-ruby/rest/accounts/v1.rb +45 -42
  22. data/lib/twilio-ruby/rest/accounts.rb +4 -34
  23. data/lib/twilio-ruby/rest/accounts_base.rb +38 -0
  24. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +371 -365
  25. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +555 -514
  26. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +617 -586
  27. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +328 -320
  28. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/local.rb +413 -0
  29. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/machine_to_machine.rb +413 -0
  30. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/mobile.rb +413 -0
  31. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/national.rb +413 -0
  32. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/shared_cost.rb +413 -0
  33. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/toll_free.rb +413 -0
  34. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country/voip.rb +413 -0
  35. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number_country.rb +433 -0
  36. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +136 -118
  37. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +203 -194
  38. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +252 -289
  39. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -303
  40. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +405 -417
  41. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +291 -342
  42. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +498 -511
  43. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +839 -641
  44. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +839 -641
  45. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +163 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +239 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +963 -991
  48. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +653 -717
  49. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +455 -458
  50. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +498 -493
  51. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +427 -407
  52. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +322 -351
  53. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +399 -418
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +541 -554
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +541 -553
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +541 -553
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +846 -903
  58. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -302
  59. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +167 -166
  60. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +344 -350
  61. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +618 -625
  62. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +157 -138
  63. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +157 -138
  64. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +405 -399
  65. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +371 -358
  66. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +341 -338
  67. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +427 -390
  68. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +359 -380
  69. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +369 -385
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +365 -372
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +514 -513
  72. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +420 -408
  73. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -306
  74. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +376 -368
  75. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +400 -373
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls/auth_calls_credential_list_mapping.rb +347 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_calls_mapping → auth_type_calls}/auth_calls_ip_access_control_list_mapping.rb +194 -195
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_calls.rb +140 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/{auth_registrations_mapping → auth_type_registrations}/auth_registrations_credential_list_mapping.rb +194 -195
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_type_registrations.rb +126 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +94 -103
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +340 -339
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +340 -338
  84. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +650 -645
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +413 -421
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +400 -374
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +141 -150
  88. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +171 -154
  89. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +365 -350
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +319 -339
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +319 -339
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +319 -339
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +319 -339
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +319 -339
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +319 -339
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +319 -339
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +319 -339
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +386 -416
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +489 -484
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +112 -104
  101. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +172 -161
  102. data/lib/twilio-ruby/rest/api/v2010/account.rb +982 -943
  103. data/lib/twilio-ruby/rest/api/v2010.rb +126 -148
  104. data/lib/twilio-ruby/rest/api.rb +25 -34
  105. data/lib/twilio-ruby/rest/api_base.rb +38 -0
  106. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +234 -213
  107. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +210 -207
  108. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +380 -388
  109. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +429 -411
  110. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +403 -385
  111. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +471 -462
  112. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +234 -211
  113. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +363 -375
  114. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +427 -445
  115. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +242 -244
  116. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +215 -226
  117. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +519 -500
  118. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +427 -413
  119. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +674 -640
  120. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +201 -188
  121. data/lib/twilio-ruby/rest/autopilot/v1.rb +48 -45
  122. data/lib/twilio-ruby/rest/autopilot.rb +3 -34
  123. data/lib/twilio-ruby/rest/autopilot_base.rb +38 -0
  124. data/lib/twilio-ruby/rest/bulkexports/v1/export/day.rb +300 -279
  125. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +299 -279
  126. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +271 -248
  127. data/lib/twilio-ruby/rest/bulkexports/v1/export.rb +246 -235
  128. data/lib/twilio-ruby/rest/bulkexports/v1/export_configuration.rb +245 -218
  129. data/lib/twilio-ruby/rest/bulkexports/v1.rb +57 -55
  130. data/lib/twilio-ruby/rest/bulkexports.rb +3 -34
  131. data/lib/twilio-ruby/rest/bulkexports_base.rb +38 -0
  132. data/lib/twilio-ruby/rest/chat/v1/credential.rb +420 -403
  133. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +375 -391
  134. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +423 -440
  135. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +440 -437
  136. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +535 -515
  137. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +397 -367
  138. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +245 -239
  139. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +466 -440
  140. data/lib/twilio-ruby/rest/chat/v1/service.rb +862 -894
  141. data/lib/twilio-ruby/rest/chat/v1.rb +57 -55
  142. data/lib/twilio-ruby/rest/chat/v2/credential.rb +420 -401
  143. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +372 -370
  144. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +375 -386
  145. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +487 -527
  146. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +515 -533
  147. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +441 -467
  148. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +607 -605
  149. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +397 -369
  150. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +365 -381
  151. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +407 -419
  152. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +510 -491
  153. data/lib/twilio-ruby/rest/chat/v2/service.rb +765 -778
  154. data/lib/twilio-ruby/rest/chat/v2.rb +57 -53
  155. data/lib/twilio-ruby/rest/chat/v3/channel.rb +289 -267
  156. data/lib/twilio-ruby/rest/chat/v3.rb +64 -41
  157. data/lib/twilio-ruby/rest/chat.rb +4 -48
  158. data/lib/twilio-ruby/rest/chat_base.rb +48 -0
  159. data/lib/twilio-ruby/rest/client.rb +328 -570
  160. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +208 -0
  161. data/lib/twilio-ruby/rest/content/v1/content.rb +364 -0
  162. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +252 -0
  163. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +266 -0
  164. data/lib/twilio-ruby/rest/content/v1.rb +61 -0
  165. data/lib/twilio-ruby/rest/content.rb +15 -0
  166. data/lib/twilio-ruby/rest/content_base.rb +38 -0
  167. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +474 -444
  168. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -227
  169. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +279 -252
  170. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +335 -344
  171. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +530 -495
  172. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +499 -495
  173. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +426 -403
  174. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +606 -552
  175. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +426 -409
  176. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +307 -304
  177. data/lib/twilio-ruby/rest/conversations/v1/role.rb +385 -356
  178. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +365 -373
  179. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +300 -289
  180. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +246 -235
  181. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +307 -279
  182. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +342 -371
  183. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +537 -535
  184. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +508 -530
  185. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +435 -438
  186. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +618 -588
  187. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +313 -317
  188. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +397 -380
  189. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +447 -455
  190. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +485 -474
  191. data/lib/twilio-ruby/rest/conversations/v1/service.rb +477 -447
  192. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +446 -435
  193. data/lib/twilio-ruby/rest/conversations/v1/user.rb +473 -441
  194. data/lib/twilio-ruby/rest/conversations/v1.rb +129 -136
  195. data/lib/twilio-ruby/rest/conversations.rb +9 -34
  196. data/lib/twilio-ruby/rest/conversations_base.rb +38 -0
  197. data/lib/twilio-ruby/rest/events/v1/event_type.rb +306 -288
  198. data/lib/twilio-ruby/rest/events/v1/schema/schema_version.rb +302 -0
  199. data/lib/twilio-ruby/rest/events/v1/schema.rb +229 -218
  200. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +114 -100
  201. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +120 -103
  202. data/lib/twilio-ruby/rest/events/v1/sink.rb +439 -408
  203. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +368 -339
  204. data/lib/twilio-ruby/rest/events/v1/subscription.rb +420 -387
  205. data/lib/twilio-ruby/rest/events/v1.rb +87 -87
  206. data/lib/twilio-ruby/rest/events.rb +5 -34
  207. data/lib/twilio-ruby/rest/events_base.rb +38 -0
  208. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +451 -0
  209. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +366 -330
  210. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +489 -496
  211. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +565 -570
  212. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +331 -0
  213. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +231 -0
  214. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +445 -0
  215. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +360 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +445 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +364 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +217 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answer_sets.rb +155 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +141 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +196 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +245 -229
  223. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +329 -319
  224. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +400 -398
  225. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +249 -225
  226. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +379 -331
  227. data/lib/twilio-ruby/rest/flex_api/v1.rb +195 -92
  228. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +146 -0
  229. data/lib/twilio-ruby/rest/flex_api/v2.rb +40 -0
  230. data/lib/twilio-ruby/rest/flex_api.rb +24 -31
  231. data/lib/twilio-ruby/rest/flex_api_base.rb +43 -0
  232. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +244 -227
  233. data/lib/twilio-ruby/rest/frontline_api/v1.rb +42 -38
  234. data/lib/twilio-ruby/rest/frontline_api.rb +2 -34
  235. data/lib/twilio-ruby/rest/frontline_api_base.rb +38 -0
  236. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +312 -315
  237. data/lib/twilio-ruby/rest/insights/v1/call/call_summary.rb +350 -0
  238. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +271 -255
  239. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +244 -225
  240. data/lib/twilio-ruby/rest/insights/v1/call.rb +260 -236
  241. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +496 -426
  242. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +485 -467
  243. data/lib/twilio-ruby/rest/insights/v1/conference.rb +506 -502
  244. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +379 -371
  245. data/lib/twilio-ruby/rest/insights/v1/room.rb +494 -489
  246. data/lib/twilio-ruby/rest/insights/v1/setting.rb +246 -207
  247. data/lib/twilio-ruby/rest/insights/v1.rb +84 -83
  248. data/lib/twilio-ruby/rest/insights.rb +6 -34
  249. data/lib/twilio-ruby/rest/insights_base.rb +38 -0
  250. data/lib/twilio-ruby/rest/intelligence/v2/service.rb +511 -0
  251. data/lib/twilio-ruby/rest/intelligence/v2/transcript/media.rb +226 -0
  252. data/lib/twilio-ruby/rest/intelligence/v2/transcript/operator_result.rb +383 -0
  253. data/lib/twilio-ruby/rest/intelligence/v2/transcript/sentence.rb +250 -0
  254. data/lib/twilio-ruby/rest/intelligence/v2/transcript.rb +540 -0
  255. data/lib/twilio-ruby/rest/intelligence/v2.rb +64 -0
  256. data/lib/twilio-ruby/rest/intelligence.rb +6 -0
  257. data/lib/twilio-ruby/rest/intelligence_base.rb +38 -0
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +420 -364
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +375 -359
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +423 -397
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +440 -409
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +535 -488
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +397 -347
  264. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +245 -233
  265. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +466 -418
  266. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +862 -779
  267. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +57 -53
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +420 -364
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +372 -343
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +375 -359
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +487 -451
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +515 -479
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +441 -411
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +607 -555
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +397 -347
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +365 -351
  277. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +398 -384
  278. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +510 -467
  279. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +765 -689
  280. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +57 -53
  281. data/lib/twilio-ruby/rest/ip_messaging.rb +3 -41
  282. data/lib/twilio-ruby/rest/ip_messaging_base.rb +43 -0
  283. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +243 -239
  284. data/lib/twilio-ruby/rest/lookups/v1.rb +42 -39
  285. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +342 -253
  286. data/lib/twilio-ruby/rest/lookups/v2.rb +42 -38
  287. data/lib/twilio-ruby/rest/lookups.rb +2 -41
  288. data/lib/twilio-ruby/rest/lookups_base.rb +43 -0
  289. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +413 -387
  290. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -389
  291. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +245 -214
  292. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +425 -393
  293. data/lib/twilio-ruby/rest/media/v1.rb +72 -69
  294. data/lib/twilio-ruby/rest/media.rb +4 -34
  295. data/lib/twilio-ruby/rest/media_base.rb +38 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +136 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +360 -346
  298. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +488 -443
  299. data/lib/twilio-ruby/rest/messaging/v1/deactivations.rb +189 -0
  300. data/lib/twilio-ruby/rest/messaging/v1/domain_certs.rb +280 -0
  301. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +289 -0
  302. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +238 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +155 -144
  304. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +214 -0
  305. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service_domain_association.rb +196 -0
  306. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -335
  307. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -341
  308. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -336
  309. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +507 -426
  310. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +121 -115
  311. data/lib/twilio-ruby/rest/messaging/v1/service.rb +741 -763
  312. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +106 -94
  313. data/lib/twilio-ruby/rest/messaging/v1.rb +172 -90
  314. data/lib/twilio-ruby/rest/messaging.rb +28 -35
  315. data/lib/twilio-ruby/rest/messaging_base.rb +38 -0
  316. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +359 -0
  317. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +352 -0
  318. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +208 -0
  319. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +340 -295
  320. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +375 -0
  321. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +368 -0
  322. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +412 -322
  323. data/lib/twilio-ruby/rest/microvisor/v1.rb +87 -53
  324. data/lib/twilio-ruby/rest/microvisor.rb +4 -34
  325. data/lib/twilio-ruby/rest/microvisor_base.rb +38 -0
  326. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +402 -395
  327. data/lib/twilio-ruby/rest/monitor/v1/event.rb +388 -390
  328. data/lib/twilio-ruby/rest/monitor/v1.rb +57 -53
  329. data/lib/twilio-ruby/rest/monitor.rb +3 -34
  330. data/lib/twilio-ruby/rest/monitor_base.rb +38 -0
  331. data/lib/twilio-ruby/rest/notify/v1/credential.rb +422 -408
  332. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +440 -452
  333. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +313 -362
  334. data/lib/twilio-ruby/rest/notify/v1/service.rb +628 -622
  335. data/lib/twilio-ruby/rest/notify/v1.rb +57 -55
  336. data/lib/twilio-ruby/rest/notify.rb +3 -34
  337. data/lib/twilio-ruby/rest/notify_base.rb +38 -0
  338. data/lib/twilio-ruby/rest/numbers/v1/bulk_eligibility.rb +224 -0
  339. data/lib/twilio-ruby/rest/numbers/v1.rb +49 -0
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +279 -261
  341. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +325 -298
  342. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +334 -309
  343. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +194 -181
  344. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +613 -607
  345. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +392 -351
  346. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +291 -266
  347. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +326 -307
  348. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +413 -371
  349. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +291 -266
  350. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +177 -181
  351. data/lib/twilio-ruby/rest/numbers/v2.rb +33 -28
  352. data/lib/twilio-ruby/rest/numbers.rb +2 -34
  353. data/lib/twilio-ruby/rest/numbers_base.rb +43 -0
  354. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +171 -0
  355. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +185 -0
  356. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +262 -0
  357. data/lib/twilio-ruby/rest/oauth/v1/token.rb +179 -0
  358. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +213 -0
  359. data/lib/twilio-ruby/rest/oauth/v1.rb +64 -0
  360. data/lib/twilio-ruby/rest/oauth.rb +33 -0
  361. data/lib/twilio-ruby/rest/oauth_base.rb +38 -0
  362. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +412 -375
  363. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +395 -358
  364. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +451 -418
  365. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +409 -369
  366. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +495 -459
  367. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -38
  368. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +376 -396
  369. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +449 -446
  370. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +616 -625
  371. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +57 -55
  372. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +302 -298
  373. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +326 -309
  374. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +343 -330
  375. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +430 -398
  376. data/lib/twilio-ruby/rest/preview/marketplace.rb +57 -53
  377. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +379 -374
  378. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +443 -399
  379. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +438 -407
  380. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +379 -374
  381. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +420 -398
  382. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +441 -404
  383. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +379 -374
  384. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +420 -398
  385. data/lib/twilio-ruby/rest/preview/sync/service.rb +496 -452
  386. data/lib/twilio-ruby/rest/preview/sync.rb +42 -37
  387. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +234 -205
  388. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +234 -205
  389. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +210 -199
  390. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +380 -375
  391. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +429 -400
  392. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +403 -373
  393. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +460 -430
  394. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +234 -205
  395. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +363 -362
  396. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +427 -417
  397. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +242 -230
  398. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +215 -214
  399. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +519 -488
  400. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +654 -619
  401. data/lib/twilio-ruby/rest/preview/understand.rb +42 -38
  402. data/lib/twilio-ruby/rest/preview/wireless/command.rb +392 -364
  403. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +449 -398
  404. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +232 -205
  405. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +580 -523
  406. data/lib/twilio-ruby/rest/preview/wireless.rb +72 -69
  407. data/lib/twilio-ruby/rest/preview.rb +11 -102
  408. data/lib/twilio-ruby/rest/preview_base.rb +63 -0
  409. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +298 -275
  410. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +107 -119
  411. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +291 -268
  412. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +107 -119
  413. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +298 -275
  414. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +220 -197
  415. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +121 -135
  416. data/lib/twilio-ruby/rest/pricing/v1.rb +45 -42
  417. data/lib/twilio-ruby/rest/pricing/v2/country.rb +290 -270
  418. data/lib/twilio-ruby/rest/pricing/v2/number.rb +232 -217
  419. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +298 -275
  420. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +238 -220
  421. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +121 -138
  422. data/lib/twilio-ruby/rest/pricing/v2.rb +63 -65
  423. data/lib/twilio-ruby/rest/pricing.rb +6 -41
  424. data/lib/twilio-ruby/rest/pricing_base.rb +43 -0
  425. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +420 -403
  426. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +409 -418
  427. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +431 -449
  428. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +422 -455
  429. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +523 -547
  430. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +400 -370
  431. data/lib/twilio-ruby/rest/proxy/v1/service.rb +560 -596
  432. data/lib/twilio-ruby/rest/proxy/v1.rb +42 -38
  433. data/lib/twilio-ruby/rest/proxy.rb +2 -34
  434. data/lib/twilio-ruby/rest/proxy_base.rb +38 -0
  435. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +260 -227
  436. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +260 -223
  437. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +260 -227
  438. data/lib/twilio-ruby/rest/routes/v2.rb +72 -69
  439. data/lib/twilio-ruby/rest/routes.rb +4 -34
  440. data/lib/twilio-ruby/rest/routes_base.rb +38 -0
  441. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +316 -323
  442. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +413 -380
  443. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +208 -208
  444. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +408 -384
  445. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +337 -338
  446. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +365 -383
  447. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +404 -396
  448. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +457 -447
  449. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +223 -234
  450. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +343 -353
  451. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +413 -380
  452. data/lib/twilio-ruby/rest/serverless/v1/service.rb +524 -493
  453. data/lib/twilio-ruby/rest/serverless/v1.rb +42 -37
  454. data/lib/twilio-ruby/rest/serverless.rb +2 -34
  455. data/lib/twilio-ruby/rest/serverless_base.rb +38 -0
  456. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +206 -199
  457. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +221 -218
  458. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +362 -355
  459. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +423 -394
  460. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +206 -200
  461. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +221 -221
  462. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +362 -361
  463. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +471 -449
  464. data/lib/twilio-ruby/rest/studio/v1/flow.rb +381 -355
  465. data/lib/twilio-ruby/rest/studio/v1.rb +42 -37
  466. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +206 -200
  467. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +221 -221
  468. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +362 -361
  469. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +464 -442
  470. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +342 -320
  471. data/lib/twilio-ruby/rest/studio/v2/flow/flow_test_user.rb +232 -0
  472. data/lib/twilio-ruby/rest/studio/v2/flow.rb +520 -472
  473. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +121 -99
  474. data/lib/twilio-ruby/rest/studio/v2.rb +48 -44
  475. data/lib/twilio-ruby/rest/studio.rb +3 -41
  476. data/lib/twilio-ruby/rest/studio_base.rb +43 -0
  477. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +397 -362
  478. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +474 -483
  479. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +403 -406
  480. data/lib/twilio-ruby/rest/supersim/v1/network.rb +306 -297
  481. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +338 -332
  482. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +381 -351
  483. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +259 -0
  484. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +243 -224
  485. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +201 -188
  486. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +464 -453
  487. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +362 -361
  488. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +314 -344
  489. data/lib/twilio-ruby/rest/supersim/v1.rb +144 -140
  490. data/lib/twilio-ruby/rest/supersim.rb +16 -34
  491. data/lib/twilio-ruby/rest/supersim_base.rb +38 -0
  492. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +377 -371
  493. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +457 -423
  494. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +470 -490
  495. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +377 -370
  496. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +471 -445
  497. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +473 -495
  498. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +377 -368
  499. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +471 -444
  500. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +139 -132
  501. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +420 -400
  502. data/lib/twilio-ruby/rest/sync/v1/service.rb +576 -567
  503. data/lib/twilio-ruby/rest/sync/v1.rb +42 -37
  504. data/lib/twilio-ruby/rest/sync.rb +2 -34
  505. data/lib/twilio-ruby/rest/sync_base.rb +38 -0
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +408 -395
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +454 -464
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +702 -736
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +616 -661
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +410 -382
  511. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +359 -369
  512. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +279 -275
  513. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -236
  514. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +246 -258
  515. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +571 -566
  516. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +683 -732
  517. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +390 -388
  518. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +235 -239
  519. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +281 -265
  520. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +215 -193
  521. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +251 -234
  522. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +632 -631
  523. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +359 -375
  524. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +245 -241
  525. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -244
  526. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +525 -510
  527. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +353 -356
  528. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +231 -206
  529. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +241 -234
  530. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +722 -730
  531. data/lib/twilio-ruby/rest/taskrouter/v1.rb +42 -37
  532. data/lib/twilio-ruby/rest/taskrouter.rb +2 -34
  533. data/lib/twilio-ruby/rest/taskrouter_base.rb +38 -0
  534. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +343 -320
  535. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +343 -317
  536. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +441 -419
  537. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +476 -451
  538. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +224 -191
  539. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +624 -630
  540. data/lib/twilio-ruby/rest/trunking/v1.rb +42 -38
  541. data/lib/twilio-ruby/rest/trunking.rb +2 -34
  542. data/lib/twilio-ruby/rest/trunking_base.rb +38 -0
  543. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +360 -352
  544. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +336 -323
  545. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +334 -321
  546. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +529 -513
  547. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +384 -346
  548. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +283 -261
  549. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +276 -252
  550. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +398 -359
  551. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +283 -261
  552. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +360 -352
  553. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +336 -323
  554. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +334 -321
  555. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +529 -513
  556. data/lib/twilio-ruby/rest/trusthub/v1.rb +132 -139
  557. data/lib/twilio-ruby/rest/trusthub.rb +8 -34
  558. data/lib/twilio-ruby/rest/trusthub_base.rb +38 -0
  559. data/lib/twilio-ruby/rest/verify/v2/form.rb +195 -183
  560. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +223 -207
  561. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +272 -262
  562. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +191 -198
  563. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +500 -539
  564. data/lib/twilio-ruby/rest/verify/v2/service/entity/factor.rb +448 -461
  565. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +249 -289
  566. data/lib/twilio-ruby/rest/verify/v2/service/entity.rb +423 -422
  567. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +380 -363
  568. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +402 -388
  569. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +421 -384
  570. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +374 -366
  571. data/lib/twilio-ruby/rest/verify/v2/service/verification_check.rb +218 -205
  572. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +448 -420
  573. data/lib/twilio-ruby/rest/verify/v2/service.rb +767 -780
  574. data/lib/twilio-ruby/rest/verify/v2/template.rb +223 -198
  575. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +381 -387
  576. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +239 -226
  577. data/lib/twilio-ruby/rest/verify/v2.rb +99 -103
  578. data/lib/twilio-ruby/rest/verify.rb +7 -34
  579. data/lib/twilio-ruby/rest/verify_base.rb +38 -0
  580. data/lib/twilio-ruby/rest/video/v1/composition.rb +482 -507
  581. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +530 -647
  582. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +281 -261
  583. data/lib/twilio-ruby/rest/video/v1/recording.rb +432 -426
  584. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +281 -261
  585. data/lib/twilio-ruby/rest/video/v1/room/participant/anonymize.rb +259 -0
  586. data/lib/twilio-ruby/rest/video/v1/room/participant/published_track.rb +332 -0
  587. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribe_rules.rb +181 -0
  588. data/lib/twilio-ruby/rest/video/v1/room/participant/subscribed_track.rb +339 -0
  589. data/lib/twilio-ruby/rest/video/v1/room/participant.rb +503 -0
  590. data/lib/twilio-ruby/rest/video/v1/room/recording_rules.rb +170 -0
  591. data/lib/twilio-ruby/rest/video/v1/room/room_recording.rb +428 -0
  592. data/lib/twilio-ruby/rest/video/v1/room.rb +611 -602
  593. data/lib/twilio-ruby/rest/video/v1.rb +99 -99
  594. data/lib/twilio-ruby/rest/video.rb +7 -34
  595. data/lib/twilio-ruby/rest/video_base.rb +38 -0
  596. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +160 -176
  597. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +502 -486
  598. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -434
  599. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +392 -352
  600. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/bulk_country_update.rb +135 -121
  601. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country/highrisk_special_prefix.rb +196 -183
  602. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/country.rb +382 -397
  603. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +217 -190
  604. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions.rb +122 -121
  605. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +378 -339
  606. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +361 -319
  607. data/lib/twilio-ruby/rest/voice/v1.rb +130 -117
  608. data/lib/twilio-ruby/rest/voice.rb +7 -34
  609. data/lib/twilio-ruby/rest/voice_base.rb +38 -0
  610. data/lib/twilio-ruby/rest/wireless/v1/command.rb +413 -406
  611. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +464 -436
  612. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +299 -284
  613. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +243 -243
  614. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +640 -647
  615. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +230 -221
  616. data/lib/twilio-ruby/rest/wireless/v1.rb +78 -76
  617. data/lib/twilio-ruby/rest/wireless.rb +5 -34
  618. data/lib/twilio-ruby/rest/wireless_base.rb +38 -0
  619. data/lib/twilio-ruby/rest.rb +1 -0
  620. data/lib/twilio-ruby/twiml/voice_response.rb +132 -33
  621. data/lib/twilio-ruby/version.rb +1 -1
  622. data/sonar-project.properties +1 -1
  623. data/twilio-ruby.gemspec +1 -1
  624. metadata +118 -38
  625. data/lib/twilio-ruby/framework/twilio_response.rb +0 -19
  626. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +0 -500
  627. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +0 -500
  628. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +0 -500
  629. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +0 -500
  630. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +0 -500
  631. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +0 -500
  632. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +0 -500
  633. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +0 -464
  634. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +0 -348
  635. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +0 -163
  636. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +0 -137
  637. data/lib/twilio-ruby/rest/events/v1/schema/version.rb +0 -290
  638. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +0 -314
  639. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +0 -164
  640. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +0 -559
  641. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel/channel.rb +0 -165
  642. data/lib/twilio-ruby/rest/preview/trusted_comms/branded_channel.rb +0 -225
  643. data/lib/twilio-ruby/rest/preview/trusted_comms/brands_information.rb +0 -195
  644. data/lib/twilio-ruby/rest/preview/trusted_comms/cps.rb +0 -186
  645. data/lib/twilio-ruby/rest/preview/trusted_comms/current_call.rb +0 -277
  646. data/lib/twilio-ruby/rest/preview/trusted_comms.rb +0 -65
  647. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +0 -199
  648. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +0 -413
  649. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +0 -240
  650. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +0 -335
  651. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +0 -175
  652. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +0 -340
  653. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +0 -499
  654. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +0 -144
@@ -1,632 +1,638 @@
1
1
  ##
2
- # This code was generated by
3
- # \ / _ _ _| _ _
4
- # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
- # / /
2
+ # This code was generated by
3
+ # ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __
4
+ # | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/
5
+ # | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \
6
+ #
7
+ # Twilio - Notify
8
+ # This is the public Twilio REST API.
9
+ #
10
+ # NOTE: This class is auto generated by OpenAPI Generator.
11
+ # https://openapi-generator.tech
12
+ # Do not edit the class manually.
6
13
  #
7
- # frozen_string_literal: true
14
+
8
15
 
9
16
  module Twilio
10
- module REST
11
- class Notify < Domain
12
- class V1 < Version
13
- ##
14
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
15
- class ServiceList < ListResource
16
- ##
17
- # Initialize the ServiceList
18
- # @param [Version] version Version that contains the resource
19
- # @return [ServiceList] ServiceList
20
- def initialize(version)
21
- super(version)
22
-
23
- # Path Solution
24
- @solution = {}
25
- @uri = "/Services"
26
- end
27
-
28
- ##
29
- # Create the ServiceInstance
30
- # @param [String] friendly_name A descriptive string that you create to describe
31
- # the resource. It can be up to 64 characters long.
32
- # @param [String] apn_credential_sid The SID of the
33
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
34
- # for APN Bindings.
35
- # @param [String] gcm_credential_sid The SID of the
36
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
37
- # for GCM Bindings.
38
- # @param [String] messaging_service_sid The SID of the {Messaging
39
- # Service}[https://www.twilio.com/docs/sms/send-messages#messaging-services] to
40
- # use for SMS Bindings. This parameter must be set in order to send SMS
41
- # notifications.
42
- # @param [String] facebook_messenger_page_id Deprecated.
43
- # @param [String] default_apn_notification_protocol_version The protocol version
44
- # to use for sending APNS notifications. Can be overridden on a Binding by Binding
45
- # basis when creating a
46
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
47
- # @param [String] default_gcm_notification_protocol_version The protocol version
48
- # to use for sending GCM notifications. Can be overridden on a Binding by Binding
49
- # basis when creating a
50
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
51
- # @param [String] fcm_credential_sid The SID of the
52
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
53
- # for FCM Bindings.
54
- # @param [String] default_fcm_notification_protocol_version The protocol version
55
- # to use for sending FCM notifications. Can be overridden on a Binding by Binding
56
- # basis when creating a
57
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
58
- # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or
59
- # `false` and the default is `true`.
60
- # @param [String] alexa_skill_id Deprecated.
61
- # @param [String] default_alexa_notification_protocol_version Deprecated.
62
- # @param [String] delivery_callback_url URL to send delivery status callback.
63
- # @param [Boolean] delivery_callback_enabled Callback configuration that enables
64
- # delivery callbacks, default false
65
- # @return [ServiceInstance] Created ServiceInstance
66
- def create(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset, delivery_callback_url: :unset, delivery_callback_enabled: :unset)
67
- data = Twilio::Values.of({
68
- 'FriendlyName' => friendly_name,
69
- 'ApnCredentialSid' => apn_credential_sid,
70
- 'GcmCredentialSid' => gcm_credential_sid,
71
- 'MessagingServiceSid' => messaging_service_sid,
72
- 'FacebookMessengerPageId' => facebook_messenger_page_id,
73
- 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
74
- 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
75
- 'FcmCredentialSid' => fcm_credential_sid,
76
- 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
77
- 'LogEnabled' => log_enabled,
78
- 'AlexaSkillId' => alexa_skill_id,
79
- 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
80
- 'DeliveryCallbackUrl' => delivery_callback_url,
81
- 'DeliveryCallbackEnabled' => delivery_callback_enabled,
82
- })
83
-
84
- payload = @version.create('POST', @uri, data: data)
85
-
86
- ServiceInstance.new(@version, payload, )
87
- end
88
-
89
- ##
90
- # Lists ServiceInstance records from the API as a list.
91
- # Unlike stream(), this operation is eager and will load `limit` records into
92
- # memory before returning.
93
- # @param [String] friendly_name The string that identifies the Service resources
94
- # to read.
95
- # @param [Integer] limit Upper limit for the number of records to return. stream()
96
- # guarantees to never return more than limit. Default is no limit
97
- # @param [Integer] page_size Number of records to fetch per request, when
98
- # not set will use the default value of 50 records. If no page_size is defined
99
- # but a limit is defined, stream() will attempt to read the limit with the most
100
- # efficient page size, i.e. min(limit, 1000)
101
- # @return [Array] Array of up to limit results
102
- def list(friendly_name: :unset, limit: nil, page_size: nil)
103
- self.stream(friendly_name: friendly_name, limit: limit, page_size: page_size).entries
104
- end
105
-
106
- ##
107
- # Streams ServiceInstance records from the API as an Enumerable.
108
- # This operation lazily loads records as efficiently as possible until the limit
109
- # is reached.
110
- # @param [String] friendly_name The string that identifies the Service resources
111
- # to read.
112
- # @param [Integer] limit Upper limit for the number of records to return. stream()
113
- # guarantees to never return more than limit. Default is no limit.
114
- # @param [Integer] page_size Number of records to fetch per request, when
115
- # not set will use the default value of 50 records. If no page_size is defined
116
- # but a limit is defined, stream() will attempt to read the limit with the most
117
- # efficient page size, i.e. min(limit, 1000)
118
- # @return [Enumerable] Enumerable that will yield up to limit results
119
- def stream(friendly_name: :unset, limit: nil, page_size: nil)
120
- limits = @version.read_limits(limit, page_size)
121
-
122
- page = self.page(friendly_name: friendly_name, page_size: limits[:page_size], )
123
-
124
- @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
125
- end
126
-
127
- ##
128
- # When passed a block, yields ServiceInstance records from the API.
129
- # This operation lazily loads records as efficiently as possible until the limit
130
- # is reached.
131
- def each
132
- limits = @version.read_limits
133
-
134
- page = self.page(page_size: limits[:page_size], )
135
-
136
- @version.stream(page,
17
+ module REST
18
+ class Notify < NotifyBase
19
+ class V1 < Version
20
+ class ServiceList < ListResource
21
+ ##
22
+ # Initialize the ServiceList
23
+ # @param [Version] version Version that contains the resource
24
+ # @return [ServiceList] ServiceList
25
+ def initialize(version)
26
+ super(version)
27
+ # Path Solution
28
+ @solution = { }
29
+ @uri = "/Services"
30
+
31
+ end
32
+ ##
33
+ # Create the ServiceInstance
34
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
35
+ # @param [String] apn_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for APN Bindings.
36
+ # @param [String] gcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for GCM Bindings.
37
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/sms/send-messages#messaging-services) to use for SMS Bindings. This parameter must be set in order to send SMS notifications.
38
+ # @param [String] facebook_messenger_page_id Deprecated.
39
+ # @param [String] default_apn_notification_protocol_version The protocol version to use for sending APNS notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
40
+ # @param [String] default_gcm_notification_protocol_version The protocol version to use for sending GCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
41
+ # @param [String] fcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for FCM Bindings.
42
+ # @param [String] default_fcm_notification_protocol_version The protocol version to use for sending FCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
43
+ # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or `false` and the default is `true`.
44
+ # @param [String] alexa_skill_id Deprecated.
45
+ # @param [String] default_alexa_notification_protocol_version Deprecated.
46
+ # @param [String] delivery_callback_url URL to send delivery status callback.
47
+ # @param [Boolean] delivery_callback_enabled Callback configuration that enables delivery callbacks, default false
48
+ # @return [ServiceInstance] Created ServiceInstance
49
+ def create(
50
+ friendly_name: :unset,
51
+ apn_credential_sid: :unset,
52
+ gcm_credential_sid: :unset,
53
+ messaging_service_sid: :unset,
54
+ facebook_messenger_page_id: :unset,
55
+ default_apn_notification_protocol_version: :unset,
56
+ default_gcm_notification_protocol_version: :unset,
57
+ fcm_credential_sid: :unset,
58
+ default_fcm_notification_protocol_version: :unset,
59
+ log_enabled: :unset,
60
+ alexa_skill_id: :unset,
61
+ default_alexa_notification_protocol_version: :unset,
62
+ delivery_callback_url: :unset,
63
+ delivery_callback_enabled: :unset
64
+ )
65
+
66
+ data = Twilio::Values.of({
67
+ 'FriendlyName' => friendly_name,
68
+ 'ApnCredentialSid' => apn_credential_sid,
69
+ 'GcmCredentialSid' => gcm_credential_sid,
70
+ 'MessagingServiceSid' => messaging_service_sid,
71
+ 'FacebookMessengerPageId' => facebook_messenger_page_id,
72
+ 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
73
+ 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
74
+ 'FcmCredentialSid' => fcm_credential_sid,
75
+ 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
76
+ 'LogEnabled' => log_enabled,
77
+ 'AlexaSkillId' => alexa_skill_id,
78
+ 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
79
+ 'DeliveryCallbackUrl' => delivery_callback_url,
80
+ 'DeliveryCallbackEnabled' => delivery_callback_enabled,
81
+ })
82
+
83
+ payload = @version.create('POST', @uri, data: data)
84
+ ServiceInstance.new(
85
+ @version,
86
+ payload,
87
+ )
88
+ end
89
+
90
+
91
+ ##
92
+ # Lists ServiceInstance records from the API as a list.
93
+ # Unlike stream(), this operation is eager and will load `limit` records into
94
+ # memory before returning.
95
+ # @param [String] friendly_name The string that identifies the Service resources to read.
96
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
97
+ # guarantees to never return more than limit. Default is no limit
98
+ # @param [Integer] page_size Number of records to fetch per request, when
99
+ # not set will use the default value of 50 records. If no page_size is defined
100
+ # but a limit is defined, stream() will attempt to read the limit with the most
101
+ # efficient page size, i.e. min(limit, 1000)
102
+ # @return [Array] Array of up to limit results
103
+ def list(friendly_name: :unset, limit: nil, page_size: nil)
104
+ self.stream(
105
+ friendly_name: friendly_name,
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] friendly_name The string that identifies the Service resources to read.
116
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
117
+ # guarantees to never return more than limit. Default is no limit
118
+ # @param [Integer] page_size Number of records to fetch per request, when
119
+ # not set will use the default value of 50 records. If no page_size is defined
120
+ # but a limit is defined, stream() will attempt to read the limit with the most
121
+ # efficient page size, i.e. min(limit, 1000)
122
+ # @return [Enumerable] Enumerable that will yield up to limit results
123
+ def stream(friendly_name: :unset, limit: nil, page_size: nil)
124
+ limits = @version.read_limits(limit, page_size)
125
+
126
+ page = self.page(
127
+ friendly_name: friendly_name,
128
+ page_size: limits[:page_size], )
129
+
130
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
131
+ end
132
+
133
+ ##
134
+ # When passed a block, yields ServiceInstance records from the API.
135
+ # This operation lazily loads records as efficiently as possible until the limit
136
+ # is reached.
137
+ def each
138
+ limits = @version.read_limits
139
+
140
+ page = self.page(page_size: limits[:page_size], )
141
+
142
+ @version.stream(page,
137
143
  limit: limits[:limit],
138
144
  page_limit: limits[:page_limit]).each {|x| yield x}
139
- end
140
-
141
- ##
142
- # Retrieve a single page of ServiceInstance records from the API.
143
- # Request is executed immediately.
144
- # @param [String] friendly_name The string that identifies the Service resources
145
- # to read.
146
- # @param [String] page_token PageToken provided by the API
147
- # @param [Integer] page_number Page Number, this value is simply for client state
148
- # @param [Integer] page_size Number of records to return, defaults to 50
149
- # @return [Page] Page of ServiceInstance
150
- def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
151
- params = Twilio::Values.of({
152
- 'FriendlyName' => friendly_name,
153
- 'PageToken' => page_token,
154
- 'Page' => page_number,
155
- 'PageSize' => page_size,
156
- })
157
-
158
- response = @version.page('GET', @uri, params: params)
159
-
160
- ServicePage.new(@version, response, @solution)
161
- end
162
-
163
- ##
164
- # Retrieve a single page of ServiceInstance records from the API.
165
- # Request is executed immediately.
166
- # @param [String] target_url API-generated URL for the requested results page
167
- # @return [Page] Page of ServiceInstance
168
- def get_page(target_url)
169
- response = @version.domain.request(
170
- 'GET',
171
- target_url
172
- )
173
- ServicePage.new(@version, response, @solution)
174
- end
175
-
176
- ##
177
- # Provide a user friendly representation
178
- def to_s
179
- '#<Twilio.Notify.V1.ServiceList>'
180
- end
181
- end
182
-
183
- ##
184
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
185
- class ServicePage < Page
186
- ##
187
- # Initialize the ServicePage
188
- # @param [Version] version Version that contains the resource
189
- # @param [Response] response Response from the API
190
- # @param [Hash] solution Path solution for the resource
191
- # @return [ServicePage] ServicePage
192
- def initialize(version, response, solution)
193
- super(version, response)
194
-
195
- # Path Solution
196
- @solution = solution
197
- end
198
-
199
- ##
200
- # Build an instance of ServiceInstance
201
- # @param [Hash] payload Payload response from the API
202
- # @return [ServiceInstance] ServiceInstance
203
- def get_instance(payload)
204
- ServiceInstance.new(@version, payload, )
205
- end
206
-
207
- ##
208
- # Provide a user friendly representation
209
- def to_s
210
- '<Twilio.Notify.V1.ServicePage>'
211
- end
212
- end
213
-
214
- ##
215
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
216
- class ServiceContext < InstanceContext
217
- ##
218
- # Initialize the ServiceContext
219
- # @param [Version] version Version that contains the resource
220
- # @param [String] sid The Twilio-provided string that uniquely identifies the
221
- # Service resource to fetch.
222
- # @return [ServiceContext] ServiceContext
223
- def initialize(version, sid)
224
- super(version)
225
-
226
- # Path Solution
227
- @solution = {sid: sid, }
228
- @uri = "/Services/#{@solution[:sid]}"
229
-
230
- # Dependents
231
- @bindings = nil
232
- @notifications = nil
233
- end
234
-
235
- ##
236
- # Delete the ServiceInstance
237
- # @return [Boolean] true if delete succeeds, false otherwise
238
- def delete
239
- @version.delete('DELETE', @uri)
240
- end
241
-
242
- ##
243
- # Fetch the ServiceInstance
244
- # @return [ServiceInstance] Fetched ServiceInstance
245
- def fetch
246
- payload = @version.fetch('GET', @uri)
247
-
248
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
249
- end
250
-
251
- ##
252
- # Update the ServiceInstance
253
- # @param [String] friendly_name A descriptive string that you create to describe
254
- # the resource. It can be up to 64 characters long.
255
- # @param [String] apn_credential_sid The SID of the
256
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
257
- # for APN Bindings.
258
- # @param [String] gcm_credential_sid The SID of the
259
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
260
- # for GCM Bindings.
261
- # @param [String] messaging_service_sid The SID of the {Messaging
262
- # Service}[https://www.twilio.com/docs/sms/send-messages#messaging-services] to
263
- # use for SMS Bindings. This parameter must be set in order to send SMS
264
- # notifications.
265
- # @param [String] facebook_messenger_page_id Deprecated.
266
- # @param [String] default_apn_notification_protocol_version The protocol version
267
- # to use for sending APNS notifications. Can be overridden on a Binding by Binding
268
- # basis when creating a
269
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
270
- # @param [String] default_gcm_notification_protocol_version The protocol version
271
- # to use for sending GCM notifications. Can be overridden on a Binding by Binding
272
- # basis when creating a
273
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
274
- # @param [String] fcm_credential_sid The SID of the
275
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
276
- # for FCM Bindings.
277
- # @param [String] default_fcm_notification_protocol_version The protocol version
278
- # to use for sending FCM notifications. Can be overridden on a Binding by Binding
279
- # basis when creating a
280
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
281
- # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or
282
- # `false` and the default is `true`.
283
- # @param [String] alexa_skill_id Deprecated.
284
- # @param [String] default_alexa_notification_protocol_version Deprecated.
285
- # @param [String] delivery_callback_url URL to send delivery status callback.
286
- # @param [Boolean] delivery_callback_enabled Callback configuration that enables
287
- # delivery callbacks, default false
288
- # @return [ServiceInstance] Updated ServiceInstance
289
- def update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset, delivery_callback_url: :unset, delivery_callback_enabled: :unset)
290
- data = Twilio::Values.of({
291
- 'FriendlyName' => friendly_name,
292
- 'ApnCredentialSid' => apn_credential_sid,
293
- 'GcmCredentialSid' => gcm_credential_sid,
294
- 'MessagingServiceSid' => messaging_service_sid,
295
- 'FacebookMessengerPageId' => facebook_messenger_page_id,
296
- 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
297
- 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
298
- 'FcmCredentialSid' => fcm_credential_sid,
299
- 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
300
- 'LogEnabled' => log_enabled,
301
- 'AlexaSkillId' => alexa_skill_id,
302
- 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
303
- 'DeliveryCallbackUrl' => delivery_callback_url,
304
- 'DeliveryCallbackEnabled' => delivery_callback_enabled,
305
- })
306
-
307
- payload = @version.update('POST', @uri, data: data)
308
-
309
- ServiceInstance.new(@version, payload, sid: @solution[:sid], )
310
- end
311
-
312
- ##
313
- # Access the bindings
314
- # @return [BindingList]
315
- # @return [BindingContext] if sid was passed.
316
- def bindings(sid=:unset)
317
- raise ArgumentError, 'sid cannot be nil' if sid.nil?
318
-
319
- if sid != :unset
320
- return BindingContext.new(@version, @solution[:sid], sid, )
321
- end
322
-
323
- unless @bindings
324
- @bindings = BindingList.new(@version, service_sid: @solution[:sid], )
325
- end
326
-
327
- @bindings
328
- end
329
-
330
- ##
331
- # Access the notifications
332
- # @return [NotificationList]
333
- # @return [NotificationContext]
334
- def notifications
335
- unless @notifications
336
- @notifications = NotificationList.new(@version, service_sid: @solution[:sid], )
337
- end
338
-
339
- @notifications
340
- end
341
-
342
- ##
343
- # Provide a user friendly representation
344
- def to_s
345
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
346
- "#<Twilio.Notify.V1.ServiceContext #{context}>"
347
- end
348
-
349
- ##
350
- # Provide a detailed, user friendly representation
351
- def inspect
352
- context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
353
- "#<Twilio.Notify.V1.ServiceContext #{context}>"
354
- end
355
- end
145
+ end
146
+
147
+ ##
148
+ # Retrieve a single page of ServiceInstance records from the API.
149
+ # Request is executed immediately.
150
+ # @param [String] friendly_name The string that identifies the Service resources to read.
151
+ # @param [String] page_token PageToken provided by the API
152
+ # @param [Integer] page_number Page Number, this value is simply for client state
153
+ # @param [Integer] page_size Number of records to return, defaults to 50
154
+ # @return [Page] Page of ServiceInstance
155
+ def page(friendly_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
156
+ params = Twilio::Values.of({
157
+
158
+ 'FriendlyName' => friendly_name,
159
+
160
+ 'PageToken' => page_token,
161
+ 'Page' => page_number,
162
+ 'PageSize' => page_size,
163
+ })
164
+
165
+ response = @version.page('GET', @uri, params: params)
166
+
167
+ ServicePage.new(@version, response, @solution)
168
+ end
169
+
170
+ ##
171
+ # Retrieve a single page of ServiceInstance records from the API.
172
+ # Request is executed immediately.
173
+ # @param [String] target_url API-generated URL for the requested results page
174
+ # @return [Page] Page of ServiceInstance
175
+ def get_page(target_url)
176
+ response = @version.domain.request(
177
+ 'GET',
178
+ target_url
179
+ )
180
+ ServicePage.new(@version, response, @solution)
181
+ end
182
+
183
+
184
+
185
+ # Provide a user friendly representation
186
+ def to_s
187
+ '#<Twilio.Notify.V1.ServiceList>'
188
+ end
189
+ end
190
+
191
+
192
+ ##
193
+ #PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
194
+ class ServiceContext < InstanceContext
195
+ ##
196
+ # Initialize the ServiceContext
197
+ # @param [Version] version Version that contains the resource
198
+ # @param [String] sid The Twilio-provided string that uniquely identifies the Service resource to update.
199
+ # @return [ServiceContext] ServiceContext
200
+ def initialize(version, sid)
201
+ super(version)
202
+
203
+ # Path Solution
204
+ @solution = { sid: sid, }
205
+ @uri = "/Services/#{@solution[:sid]}"
206
+
207
+ # Dependents
208
+ @notifications = nil
209
+ @bindings = nil
210
+ end
211
+ ##
212
+ # Delete the ServiceInstance
213
+ # @return [Boolean] True if delete succeeds, false otherwise
214
+ def delete
215
+
216
+ @version.delete('DELETE', @uri)
217
+ end
218
+
219
+ ##
220
+ # Fetch the ServiceInstance
221
+ # @return [ServiceInstance] Fetched ServiceInstance
222
+ def fetch
223
+
224
+ payload = @version.fetch('GET', @uri)
225
+ ServiceInstance.new(
226
+ @version,
227
+ payload,
228
+ sid: @solution[:sid],
229
+ )
230
+ end
231
+
232
+ ##
233
+ # Update the ServiceInstance
234
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
235
+ # @param [String] apn_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for APN Bindings.
236
+ # @param [String] gcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for GCM Bindings.
237
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/sms/send-messages#messaging-services) to use for SMS Bindings. This parameter must be set in order to send SMS notifications.
238
+ # @param [String] facebook_messenger_page_id Deprecated.
239
+ # @param [String] default_apn_notification_protocol_version The protocol version to use for sending APNS notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
240
+ # @param [String] default_gcm_notification_protocol_version The protocol version to use for sending GCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
241
+ # @param [String] fcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for FCM Bindings.
242
+ # @param [String] default_fcm_notification_protocol_version The protocol version to use for sending FCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
243
+ # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or `false` and the default is `true`.
244
+ # @param [String] alexa_skill_id Deprecated.
245
+ # @param [String] default_alexa_notification_protocol_version Deprecated.
246
+ # @param [String] delivery_callback_url URL to send delivery status callback.
247
+ # @param [Boolean] delivery_callback_enabled Callback configuration that enables delivery callbacks, default false
248
+ # @return [ServiceInstance] Updated ServiceInstance
249
+ def update(
250
+ friendly_name: :unset,
251
+ apn_credential_sid: :unset,
252
+ gcm_credential_sid: :unset,
253
+ messaging_service_sid: :unset,
254
+ facebook_messenger_page_id: :unset,
255
+ default_apn_notification_protocol_version: :unset,
256
+ default_gcm_notification_protocol_version: :unset,
257
+ fcm_credential_sid: :unset,
258
+ default_fcm_notification_protocol_version: :unset,
259
+ log_enabled: :unset,
260
+ alexa_skill_id: :unset,
261
+ default_alexa_notification_protocol_version: :unset,
262
+ delivery_callback_url: :unset,
263
+ delivery_callback_enabled: :unset
264
+ )
265
+
266
+ data = Twilio::Values.of({
267
+ 'FriendlyName' => friendly_name,
268
+ 'ApnCredentialSid' => apn_credential_sid,
269
+ 'GcmCredentialSid' => gcm_credential_sid,
270
+ 'MessagingServiceSid' => messaging_service_sid,
271
+ 'FacebookMessengerPageId' => facebook_messenger_page_id,
272
+ 'DefaultApnNotificationProtocolVersion' => default_apn_notification_protocol_version,
273
+ 'DefaultGcmNotificationProtocolVersion' => default_gcm_notification_protocol_version,
274
+ 'FcmCredentialSid' => fcm_credential_sid,
275
+ 'DefaultFcmNotificationProtocolVersion' => default_fcm_notification_protocol_version,
276
+ 'LogEnabled' => log_enabled,
277
+ 'AlexaSkillId' => alexa_skill_id,
278
+ 'DefaultAlexaNotificationProtocolVersion' => default_alexa_notification_protocol_version,
279
+ 'DeliveryCallbackUrl' => delivery_callback_url,
280
+ 'DeliveryCallbackEnabled' => delivery_callback_enabled,
281
+ })
282
+
283
+ payload = @version.update('POST', @uri, data: data)
284
+ ServiceInstance.new(
285
+ @version,
286
+ payload,
287
+ sid: @solution[:sid],
288
+ )
289
+ end
290
+
291
+ ##
292
+ # Access the notifications
293
+ # @return [NotificationList]
294
+ # @return [NotificationContext]
295
+ def notifications
296
+ unless @notifications
297
+ @notifications = NotificationList.new(
298
+ @version, service_sid: @solution[:sid], )
299
+ end
300
+ @notifications
301
+ end
302
+ ##
303
+ # Access the bindings
304
+ # @return [BindingList]
305
+ # @return [BindingContext] if sid was passed.
306
+ def bindings(sid=:unset)
307
+
308
+ raise ArgumentError, 'sid cannot be nil' if sid.nil?
309
+
310
+ if sid != :unset
311
+ return BindingContext.new(@version, @solution[:sid],sid )
312
+ end
313
+
314
+ unless @bindings
315
+ @bindings = BindingList.new(
316
+ @version, service_sid: @solution[:sid], )
317
+ end
318
+
319
+ @bindings
320
+ end
321
+
322
+ ##
323
+ # Provide a user friendly representation
324
+ def to_s
325
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
326
+ "#<Twilio.Notify.V1.ServiceContext #{context}>"
327
+ end
328
+
329
+ ##
330
+ # Provide a detailed, user friendly representation
331
+ def inspect
332
+ context = @solution.map{|k, v| "#{k}: #{v}"}.join(',')
333
+ "#<Twilio.Notify.V1.ServiceContext #{context}>"
334
+ end
335
+ end
336
+
337
+ class ServicePage < Page
338
+ ##
339
+ # Initialize the ServicePage
340
+ # @param [Version] version Version that contains the resource
341
+ # @param [Response] response Response from the API
342
+ # @param [Hash] solution Path solution for the resource
343
+ # @return [ServicePage] ServicePage
344
+ def initialize(version, response, solution)
345
+ super(version, response)
346
+
347
+ # Path Solution
348
+ @solution = solution
349
+ end
350
+
351
+ ##
352
+ # Build an instance of ServiceInstance
353
+ # @param [Hash] payload Payload response from the API
354
+ # @return [ServiceInstance] ServiceInstance
355
+ def get_instance(payload)
356
+ ServiceInstance.new(@version, payload)
357
+ end
358
+
359
+ ##
360
+ # Provide a user friendly representation
361
+ def to_s
362
+ '<Twilio.Notify.V1.ServicePage>'
363
+ end
364
+ end
365
+ class ServiceInstance < InstanceResource
366
+ ##
367
+ # Initialize the ServiceInstance
368
+ # @param [Version] version Version that contains the resource
369
+ # @param [Hash] payload payload that contains response from Twilio
370
+ # @param [String] account_sid The SID of the
371
+ # {Account}[https://www.twilio.com/docs/iam/api/account] that created this Service
372
+ # resource.
373
+ # @param [String] sid The SID of the Call resource to fetch.
374
+ # @return [ServiceInstance] ServiceInstance
375
+ def initialize(version, payload , sid: nil)
376
+ super(version)
377
+
378
+ # Marshaled Properties
379
+ @properties = {
380
+ 'sid' => payload['sid'],
381
+ 'account_sid' => payload['account_sid'],
382
+ 'friendly_name' => payload['friendly_name'],
383
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
384
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
385
+ 'apn_credential_sid' => payload['apn_credential_sid'],
386
+ 'gcm_credential_sid' => payload['gcm_credential_sid'],
387
+ 'fcm_credential_sid' => payload['fcm_credential_sid'],
388
+ 'messaging_service_sid' => payload['messaging_service_sid'],
389
+ 'facebook_messenger_page_id' => payload['facebook_messenger_page_id'],
390
+ 'default_apn_notification_protocol_version' => payload['default_apn_notification_protocol_version'],
391
+ 'default_gcm_notification_protocol_version' => payload['default_gcm_notification_protocol_version'],
392
+ 'default_fcm_notification_protocol_version' => payload['default_fcm_notification_protocol_version'],
393
+ 'log_enabled' => payload['log_enabled'],
394
+ 'url' => payload['url'],
395
+ 'links' => payload['links'],
396
+ 'alexa_skill_id' => payload['alexa_skill_id'],
397
+ 'default_alexa_notification_protocol_version' => payload['default_alexa_notification_protocol_version'],
398
+ 'delivery_callback_url' => payload['delivery_callback_url'],
399
+ 'delivery_callback_enabled' => payload['delivery_callback_enabled'],
400
+ }
401
+
402
+ # Context
403
+ @instance_context = nil
404
+ @params = { 'sid' => sid || @properties['sid'] , }
405
+ end
406
+
407
+ ##
408
+ # Generate an instance context for the instance, the context is capable of
409
+ # performing various actions. All instance actions are proxied to the context
410
+ # @return [ServiceContext] CallContext for this CallInstance
411
+ def context
412
+ unless @instance_context
413
+ @instance_context = ServiceContext.new(@version , @params['sid'])
414
+ end
415
+ @instance_context
416
+ end
417
+
418
+ ##
419
+ # @return [String] The unique string that we created to identify the Service resource.
420
+ def sid
421
+ @properties['sid']
422
+ end
423
+
424
+ ##
425
+ # @return [String] The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Service resource.
426
+ def account_sid
427
+ @properties['account_sid']
428
+ end
429
+
430
+ ##
431
+ # @return [String] The string that you assigned to describe the resource.
432
+ def friendly_name
433
+ @properties['friendly_name']
434
+ end
435
+
436
+ ##
437
+ # @return [Time] The date and time in GMT when the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
438
+ def date_created
439
+ @properties['date_created']
440
+ end
441
+
442
+ ##
443
+ # @return [Time] The date and time in GMT when the resource was last updated specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format.
444
+ def date_updated
445
+ @properties['date_updated']
446
+ end
447
+
448
+ ##
449
+ # @return [String] The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for APN Bindings.
450
+ def apn_credential_sid
451
+ @properties['apn_credential_sid']
452
+ end
453
+
454
+ ##
455
+ # @return [String] The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for GCM Bindings.
456
+ def gcm_credential_sid
457
+ @properties['gcm_credential_sid']
458
+ end
459
+
460
+ ##
461
+ # @return [String] The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for FCM Bindings.
462
+ def fcm_credential_sid
463
+ @properties['fcm_credential_sid']
464
+ end
465
+
466
+ ##
467
+ # @return [String] The SID of the [Messaging Service](https://www.twilio.com/docs/sms/send-messages#messaging-services) to use for SMS Bindings. In order to send SMS notifications this parameter has to be set.
468
+ def messaging_service_sid
469
+ @properties['messaging_service_sid']
470
+ end
471
+
472
+ ##
473
+ # @return [String] Deprecated.
474
+ def facebook_messenger_page_id
475
+ @properties['facebook_messenger_page_id']
476
+ end
477
+
478
+ ##
479
+ # @return [String] The protocol version to use for sending APNS notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
480
+ def default_apn_notification_protocol_version
481
+ @properties['default_apn_notification_protocol_version']
482
+ end
483
+
484
+ ##
485
+ # @return [String] The protocol version to use for sending GCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
486
+ def default_gcm_notification_protocol_version
487
+ @properties['default_gcm_notification_protocol_version']
488
+ end
489
+
490
+ ##
491
+ # @return [String] The protocol version to use for sending FCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
492
+ def default_fcm_notification_protocol_version
493
+ @properties['default_fcm_notification_protocol_version']
494
+ end
495
+
496
+ ##
497
+ # @return [Boolean] Whether to log notifications. Can be: `true` or `false` and the default is `true`.
498
+ def log_enabled
499
+ @properties['log_enabled']
500
+ end
501
+
502
+ ##
503
+ # @return [String] The absolute URL of the Service resource.
504
+ def url
505
+ @properties['url']
506
+ end
507
+
508
+ ##
509
+ # @return [Hash] The URLs of the Binding, Notification, Segment, and User resources related to the service.
510
+ def links
511
+ @properties['links']
512
+ end
513
+
514
+ ##
515
+ # @return [String] Deprecated.
516
+ def alexa_skill_id
517
+ @properties['alexa_skill_id']
518
+ end
519
+
520
+ ##
521
+ # @return [String] Deprecated.
522
+ def default_alexa_notification_protocol_version
523
+ @properties['default_alexa_notification_protocol_version']
524
+ end
525
+
526
+ ##
527
+ # @return [String] URL to send delivery status callback.
528
+ def delivery_callback_url
529
+ @properties['delivery_callback_url']
530
+ end
531
+
532
+ ##
533
+ # @return [Boolean] Callback configuration that enables delivery callbacks, default false
534
+ def delivery_callback_enabled
535
+ @properties['delivery_callback_enabled']
536
+ end
537
+
538
+ ##
539
+ # Delete the ServiceInstance
540
+ # @return [Boolean] True if delete succeeds, false otherwise
541
+ def delete
542
+
543
+ context.delete
544
+ end
545
+
546
+ ##
547
+ # Fetch the ServiceInstance
548
+ # @return [ServiceInstance] Fetched ServiceInstance
549
+ def fetch
550
+
551
+ context.fetch
552
+ end
553
+
554
+ ##
555
+ # Update the ServiceInstance
556
+ # @param [String] friendly_name A descriptive string that you create to describe the resource. It can be up to 64 characters long.
557
+ # @param [String] apn_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for APN Bindings.
558
+ # @param [String] gcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for GCM Bindings.
559
+ # @param [String] messaging_service_sid The SID of the [Messaging Service](https://www.twilio.com/docs/sms/send-messages#messaging-services) to use for SMS Bindings. This parameter must be set in order to send SMS notifications.
560
+ # @param [String] facebook_messenger_page_id Deprecated.
561
+ # @param [String] default_apn_notification_protocol_version The protocol version to use for sending APNS notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
562
+ # @param [String] default_gcm_notification_protocol_version The protocol version to use for sending GCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
563
+ # @param [String] fcm_credential_sid The SID of the [Credential](https://www.twilio.com/docs/notify/api/credential-resource) to use for FCM Bindings.
564
+ # @param [String] default_fcm_notification_protocol_version The protocol version to use for sending FCM notifications. Can be overridden on a Binding by Binding basis when creating a [Binding](https://www.twilio.com/docs/notify/api/binding-resource) resource.
565
+ # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or `false` and the default is `true`.
566
+ # @param [String] alexa_skill_id Deprecated.
567
+ # @param [String] default_alexa_notification_protocol_version Deprecated.
568
+ # @param [String] delivery_callback_url URL to send delivery status callback.
569
+ # @param [Boolean] delivery_callback_enabled Callback configuration that enables delivery callbacks, default false
570
+ # @return [ServiceInstance] Updated ServiceInstance
571
+ def update(
572
+ friendly_name: :unset,
573
+ apn_credential_sid: :unset,
574
+ gcm_credential_sid: :unset,
575
+ messaging_service_sid: :unset,
576
+ facebook_messenger_page_id: :unset,
577
+ default_apn_notification_protocol_version: :unset,
578
+ default_gcm_notification_protocol_version: :unset,
579
+ fcm_credential_sid: :unset,
580
+ default_fcm_notification_protocol_version: :unset,
581
+ log_enabled: :unset,
582
+ alexa_skill_id: :unset,
583
+ default_alexa_notification_protocol_version: :unset,
584
+ delivery_callback_url: :unset,
585
+ delivery_callback_enabled: :unset
586
+ )
587
+
588
+ context.update(
589
+ friendly_name: friendly_name,
590
+ apn_credential_sid: apn_credential_sid,
591
+ gcm_credential_sid: gcm_credential_sid,
592
+ messaging_service_sid: messaging_service_sid,
593
+ facebook_messenger_page_id: facebook_messenger_page_id,
594
+ default_apn_notification_protocol_version: default_apn_notification_protocol_version,
595
+ default_gcm_notification_protocol_version: default_gcm_notification_protocol_version,
596
+ fcm_credential_sid: fcm_credential_sid,
597
+ default_fcm_notification_protocol_version: default_fcm_notification_protocol_version,
598
+ log_enabled: log_enabled,
599
+ alexa_skill_id: alexa_skill_id,
600
+ default_alexa_notification_protocol_version: default_alexa_notification_protocol_version,
601
+ delivery_callback_url: delivery_callback_url,
602
+ delivery_callback_enabled: delivery_callback_enabled,
603
+ )
604
+ end
605
+
606
+ ##
607
+ # Access the notifications
608
+ # @return [notifications] notifications
609
+ def notifications
610
+ context.notifications
611
+ end
612
+
613
+ ##
614
+ # Access the bindings
615
+ # @return [bindings] bindings
616
+ def bindings
617
+ context.bindings
618
+ end
619
+
620
+ ##
621
+ # Provide a user friendly representation
622
+ def to_s
623
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
624
+ "<Twilio.Notify.V1.ServiceInstance #{values}>"
625
+ end
626
+
627
+ ##
628
+ # Provide a detailed, user friendly representation
629
+ def inspect
630
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
631
+ "<Twilio.Notify.V1.ServiceInstance #{values}>"
632
+ end
633
+ end
356
634
 
357
- ##
358
- # PLEASE NOTE that this class contains beta products that are subject to change. Use them with caution.
359
- class ServiceInstance < InstanceResource
360
- ##
361
- # Initialize the ServiceInstance
362
- # @param [Version] version Version that contains the resource
363
- # @param [Hash] payload payload that contains response from Twilio
364
- # @param [String] sid The Twilio-provided string that uniquely identifies the
365
- # Service resource to fetch.
366
- # @return [ServiceInstance] ServiceInstance
367
- def initialize(version, payload, sid: nil)
368
- super(version)
369
-
370
- # Marshaled Properties
371
- @properties = {
372
- 'sid' => payload['sid'],
373
- 'account_sid' => payload['account_sid'],
374
- 'friendly_name' => payload['friendly_name'],
375
- 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
376
- 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
377
- 'apn_credential_sid' => payload['apn_credential_sid'],
378
- 'gcm_credential_sid' => payload['gcm_credential_sid'],
379
- 'fcm_credential_sid' => payload['fcm_credential_sid'],
380
- 'messaging_service_sid' => payload['messaging_service_sid'],
381
- 'facebook_messenger_page_id' => payload['facebook_messenger_page_id'],
382
- 'default_apn_notification_protocol_version' => payload['default_apn_notification_protocol_version'],
383
- 'default_gcm_notification_protocol_version' => payload['default_gcm_notification_protocol_version'],
384
- 'default_fcm_notification_protocol_version' => payload['default_fcm_notification_protocol_version'],
385
- 'log_enabled' => payload['log_enabled'],
386
- 'url' => payload['url'],
387
- 'links' => payload['links'],
388
- 'alexa_skill_id' => payload['alexa_skill_id'],
389
- 'default_alexa_notification_protocol_version' => payload['default_alexa_notification_protocol_version'],
390
- 'delivery_callback_url' => payload['delivery_callback_url'],
391
- 'delivery_callback_enabled' => payload['delivery_callback_enabled'],
392
- }
393
-
394
- # Context
395
- @instance_context = nil
396
- @params = {'sid' => sid || @properties['sid'], }
397
- end
398
-
399
- ##
400
- # Generate an instance context for the instance, the context is capable of
401
- # performing various actions. All instance actions are proxied to the context
402
- # @return [ServiceContext] ServiceContext for this ServiceInstance
403
- def context
404
- unless @instance_context
405
- @instance_context = ServiceContext.new(@version, @params['sid'], )
406
635
  end
407
- @instance_context
408
- end
409
-
410
- ##
411
- # @return [String] The unique string that identifies the resource
412
- def sid
413
- @properties['sid']
414
- end
415
-
416
- ##
417
- # @return [String] The SID of the Account that created the resource
418
- def account_sid
419
- @properties['account_sid']
420
- end
421
-
422
- ##
423
- # @return [String] The string that you assigned to describe the resource
424
- def friendly_name
425
- @properties['friendly_name']
426
- end
427
-
428
- ##
429
- # @return [Time] The RFC 2822 date and time in GMT when the resource was created
430
- def date_created
431
- @properties['date_created']
432
- end
433
-
434
- ##
435
- # @return [Time] The RFC 2822 date and time in GMT when the resource was last updated
436
- def date_updated
437
- @properties['date_updated']
438
- end
439
-
440
- ##
441
- # @return [String] The SID of the Credential to use for APN Bindings
442
- def apn_credential_sid
443
- @properties['apn_credential_sid']
444
- end
445
-
446
- ##
447
- # @return [String] The SID of the Credential to use for GCM Bindings
448
- def gcm_credential_sid
449
- @properties['gcm_credential_sid']
450
- end
451
-
452
- ##
453
- # @return [String] The SID of the Credential to use for FCM Bindings
454
- def fcm_credential_sid
455
- @properties['fcm_credential_sid']
456
- end
457
-
458
- ##
459
- # @return [String] The SID of the Messaging Service to use for SMS Bindings
460
- def messaging_service_sid
461
- @properties['messaging_service_sid']
462
- end
463
-
464
- ##
465
- # @return [String] Deprecated
466
- def facebook_messenger_page_id
467
- @properties['facebook_messenger_page_id']
468
- end
469
-
470
- ##
471
- # @return [String] The protocol version to use for sending APNS notifications
472
- def default_apn_notification_protocol_version
473
- @properties['default_apn_notification_protocol_version']
474
- end
475
-
476
- ##
477
- # @return [String] The protocol version to use for sending GCM notifications
478
- def default_gcm_notification_protocol_version
479
- @properties['default_gcm_notification_protocol_version']
480
- end
481
-
482
- ##
483
- # @return [String] The protocol version to use for sending FCM notifications
484
- def default_fcm_notification_protocol_version
485
- @properties['default_fcm_notification_protocol_version']
486
- end
487
-
488
- ##
489
- # @return [Boolean] Whether to log notifications
490
- def log_enabled
491
- @properties['log_enabled']
492
- end
493
-
494
- ##
495
- # @return [String] The absolute URL of the Service resource
496
- def url
497
- @properties['url']
498
- end
499
-
500
- ##
501
- # @return [String] The URLs of the resources related to the service
502
- def links
503
- @properties['links']
504
- end
505
-
506
- ##
507
- # @return [String] Deprecated
508
- def alexa_skill_id
509
- @properties['alexa_skill_id']
510
- end
511
-
512
- ##
513
- # @return [String] Deprecated
514
- def default_alexa_notification_protocol_version
515
- @properties['default_alexa_notification_protocol_version']
516
- end
517
-
518
- ##
519
- # @return [String] Webhook URL
520
- def delivery_callback_url
521
- @properties['delivery_callback_url']
522
- end
523
-
524
- ##
525
- # @return [Boolean] Enable delivery callbacks
526
- def delivery_callback_enabled
527
- @properties['delivery_callback_enabled']
528
- end
529
-
530
- ##
531
- # Delete the ServiceInstance
532
- # @return [Boolean] true if delete succeeds, false otherwise
533
- def delete
534
- context.delete
535
- end
536
-
537
- ##
538
- # Fetch the ServiceInstance
539
- # @return [ServiceInstance] Fetched ServiceInstance
540
- def fetch
541
- context.fetch
542
- end
543
-
544
- ##
545
- # Update the ServiceInstance
546
- # @param [String] friendly_name A descriptive string that you create to describe
547
- # the resource. It can be up to 64 characters long.
548
- # @param [String] apn_credential_sid The SID of the
549
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
550
- # for APN Bindings.
551
- # @param [String] gcm_credential_sid The SID of the
552
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
553
- # for GCM Bindings.
554
- # @param [String] messaging_service_sid The SID of the {Messaging
555
- # Service}[https://www.twilio.com/docs/sms/send-messages#messaging-services] to
556
- # use for SMS Bindings. This parameter must be set in order to send SMS
557
- # notifications.
558
- # @param [String] facebook_messenger_page_id Deprecated.
559
- # @param [String] default_apn_notification_protocol_version The protocol version
560
- # to use for sending APNS notifications. Can be overridden on a Binding by Binding
561
- # basis when creating a
562
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
563
- # @param [String] default_gcm_notification_protocol_version The protocol version
564
- # to use for sending GCM notifications. Can be overridden on a Binding by Binding
565
- # basis when creating a
566
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
567
- # @param [String] fcm_credential_sid The SID of the
568
- # {Credential}[https://www.twilio.com/docs/notify/api/credential-resource] to use
569
- # for FCM Bindings.
570
- # @param [String] default_fcm_notification_protocol_version The protocol version
571
- # to use for sending FCM notifications. Can be overridden on a Binding by Binding
572
- # basis when creating a
573
- # {Binding}[https://www.twilio.com/docs/notify/api/binding-resource] resource.
574
- # @param [Boolean] log_enabled Whether to log notifications. Can be: `true` or
575
- # `false` and the default is `true`.
576
- # @param [String] alexa_skill_id Deprecated.
577
- # @param [String] default_alexa_notification_protocol_version Deprecated.
578
- # @param [String] delivery_callback_url URL to send delivery status callback.
579
- # @param [Boolean] delivery_callback_enabled Callback configuration that enables
580
- # delivery callbacks, default false
581
- # @return [ServiceInstance] Updated ServiceInstance
582
- def update(friendly_name: :unset, apn_credential_sid: :unset, gcm_credential_sid: :unset, messaging_service_sid: :unset, facebook_messenger_page_id: :unset, default_apn_notification_protocol_version: :unset, default_gcm_notification_protocol_version: :unset, fcm_credential_sid: :unset, default_fcm_notification_protocol_version: :unset, log_enabled: :unset, alexa_skill_id: :unset, default_alexa_notification_protocol_version: :unset, delivery_callback_url: :unset, delivery_callback_enabled: :unset)
583
- context.update(
584
- friendly_name: friendly_name,
585
- apn_credential_sid: apn_credential_sid,
586
- gcm_credential_sid: gcm_credential_sid,
587
- messaging_service_sid: messaging_service_sid,
588
- facebook_messenger_page_id: facebook_messenger_page_id,
589
- default_apn_notification_protocol_version: default_apn_notification_protocol_version,
590
- default_gcm_notification_protocol_version: default_gcm_notification_protocol_version,
591
- fcm_credential_sid: fcm_credential_sid,
592
- default_fcm_notification_protocol_version: default_fcm_notification_protocol_version,
593
- log_enabled: log_enabled,
594
- alexa_skill_id: alexa_skill_id,
595
- default_alexa_notification_protocol_version: default_alexa_notification_protocol_version,
596
- delivery_callback_url: delivery_callback_url,
597
- delivery_callback_enabled: delivery_callback_enabled,
598
- )
599
- end
600
-
601
- ##
602
- # Access the bindings
603
- # @return [bindings] bindings
604
- def bindings
605
- context.bindings
606
- end
607
-
608
- ##
609
- # Access the notifications
610
- # @return [notifications] notifications
611
- def notifications
612
- context.notifications
613
- end
614
-
615
- ##
616
- # Provide a user friendly representation
617
- def to_s
618
- values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
619
- "<Twilio.Notify.V1.ServiceInstance #{values}>"
620
- end
621
-
622
- ##
623
- # Provide a detailed, user friendly representation
624
- def inspect
625
- values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
626
- "<Twilio.Notify.V1.ServiceInstance #{values}>"
627
- end
628
636
  end
629
- end
630
637
  end
631
- end
632
- end
638
+ end