twilio-ruby 5.19.0 → 5.77.0

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 (923) hide show
  1. checksums.yaml +5 -5
  2. data/.dockerignore +1 -0
  3. data/.github/workflows/pr-lint.yml +21 -0
  4. data/.github/workflows/test-and-deploy.yml +129 -0
  5. data/.gitignore +8 -1
  6. data/.rubocop.yml +22 -6
  7. data/.rubocop_todo.yml +147 -73
  8. data/CHANGES.md +2198 -0
  9. data/CODE_OF_CONDUCT.md +73 -0
  10. data/CONTRIBUTING.md +4 -8
  11. data/Dockerfile +2 -2
  12. data/Gemfile +1 -9
  13. data/ISSUE_TEMPLATE.md +17 -13
  14. data/{LICENSE.md → LICENSE} +2 -2
  15. data/Makefile +16 -24
  16. data/PULL_REQUEST_TEMPLATE.md +30 -3
  17. data/README.md +207 -55
  18. data/Rakefile +0 -54
  19. data/VERSIONS.md +9 -10
  20. data/advanced-examples/custom-http-client.md +170 -0
  21. data/examples/examples.rb +1 -1
  22. data/githooks/pre-commit +0 -0
  23. data/lib/rack/twilio_webhook_authentication.rb +25 -1
  24. data/lib/twilio-ruby/framework/{domain.rb → rest/domain.rb} +1 -1
  25. data/lib/twilio-ruby/framework/{error.rb → rest/error.rb} +3 -3
  26. data/lib/twilio-ruby/framework/{version.rb → rest/version.rb} +7 -11
  27. data/lib/twilio-ruby/http/http_client.rb +34 -15
  28. data/lib/twilio-ruby/http.rb +5 -0
  29. data/lib/twilio-ruby/jwt/access_token.rb +20 -2
  30. data/lib/twilio-ruby/jwt/jwt.rb +6 -0
  31. data/lib/twilio-ruby/jwt/task_router.rb +2 -2
  32. data/lib/twilio-ruby/rest/accounts/v1/auth_token_promotion.rb +186 -0
  33. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +44 -53
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +44 -52
  35. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +5 -5
  36. data/lib/twilio-ruby/rest/accounts/v1/secondary_auth_token.rb +200 -0
  37. data/lib/twilio-ruby/rest/accounts/v1.rb +15 -1
  38. data/lib/twilio-ruby/rest/accounts.rb +13 -1
  39. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +40 -38
  40. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +133 -123
  41. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +182 -182
  42. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +35 -32
  43. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +171 -180
  44. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +189 -87
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +168 -174
  46. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +189 -87
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +189 -87
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +168 -174
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +189 -87
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +28 -23
  51. data/lib/twilio-ruby/rest/api/v2010/account/balance.rb +3 -9
  52. data/lib/twilio-ruby/rest/api/v2010/account/call/event.rb +201 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +59 -66
  54. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +32 -36
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +72 -67
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/payment.rb +375 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +76 -73
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/siprec.rb +674 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/call/stream.rb +674 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message.rb +160 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/call/user_defined_message_subscription.rb +251 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +404 -188
  63. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +374 -201
  64. data/lib/twilio-ruby/rest/api/v2010/account/conference/recording.rb +58 -63
  65. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +39 -30
  66. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +80 -71
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +48 -41
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +53 -54
  69. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +179 -127
  70. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +178 -127
  71. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +178 -127
  72. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +314 -292
  73. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +35 -36
  74. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +25 -20
  75. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +35 -36
  76. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +234 -209
  77. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +11 -15
  78. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +11 -15
  79. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +47 -55
  80. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +56 -61
  81. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +43 -40
  82. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +60 -70
  83. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +55 -48
  84. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +48 -42
  85. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +55 -42
  86. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +103 -72
  87. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +18 -23
  88. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +20 -25
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +28 -38
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +23 -33
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping.rb +48 -51
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping.rb +48 -51
  93. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_calls_mapping.rb +15 -15
  94. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping.rb +48 -51
  95. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping.rb +13 -13
  96. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/auth_types.rb +11 -11
  97. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +34 -40
  98. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +33 -39
  99. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +175 -105
  100. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +29 -39
  101. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +27 -37
  102. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +3 -2
  103. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +16 -19
  104. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +44 -41
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +71 -51
  106. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +71 -51
  107. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +71 -54
  108. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +71 -51
  109. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +71 -51
  110. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +71 -51
  111. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +71 -51
  112. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +71 -51
  113. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +68 -54
  114. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +107 -114
  115. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +3 -2
  116. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +40 -45
  117. data/lib/twilio-ruby/rest/api/v2010/account.rb +18 -28
  118. data/lib/twilio-ruby/rest/api/v2010.rb +6 -5
  119. data/lib/twilio-ruby/rest/api.rb +26 -22
  120. data/lib/twilio-ruby/rest/autopilot/v1/assistant/defaults.rb +29 -24
  121. data/lib/twilio-ruby/rest/autopilot/v1/assistant/dialogue.rb +29 -20
  122. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type/field_value.rb +65 -60
  123. data/lib/twilio-ruby/rest/autopilot/v1/assistant/field_type.rb +60 -61
  124. data/lib/twilio-ruby/rest/autopilot/v1/assistant/model_build.rb +60 -60
  125. data/lib/twilio-ruby/rest/autopilot/v1/assistant/query.rb +111 -93
  126. data/lib/twilio-ruby/rest/autopilot/v1/assistant/style_sheet.rb +27 -24
  127. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/field.rb +60 -53
  128. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/sample.rb +89 -86
  129. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_actions.rb +41 -32
  130. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task/task_statistics.rb +37 -30
  131. data/lib/twilio-ruby/rest/autopilot/v1/assistant/task.rb +76 -76
  132. data/lib/twilio-ruby/rest/autopilot/v1/assistant/webhook.rb +420 -0
  133. data/lib/twilio-ruby/rest/autopilot/v1/assistant.rb +132 -102
  134. data/lib/twilio-ruby/rest/autopilot/v1/restore_assistant.rb +194 -0
  135. data/lib/twilio-ruby/rest/autopilot/v1.rb +15 -7
  136. data/lib/twilio-ruby/rest/autopilot.rb +8 -2
  137. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export/day.rb +100 -25
  138. data/lib/twilio-ruby/rest/bulkexports/v1/export/export_custom_job.rb +286 -0
  139. data/lib/twilio-ruby/rest/bulkexports/v1/export/job.rb +255 -0
  140. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export.rb +72 -32
  141. data/lib/twilio-ruby/rest/{preview/bulk_exports → bulkexports/v1}/export_configuration.rb +42 -43
  142. data/lib/twilio-ruby/rest/bulkexports/v1.rb +62 -0
  143. data/lib/twilio-ruby/rest/bulkexports.rb +56 -0
  144. data/lib/twilio-ruby/rest/chat/v1/credential.rb +91 -80
  145. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +74 -68
  146. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +94 -97
  147. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +82 -74
  148. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +84 -76
  149. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +62 -62
  150. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +20 -18
  151. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +75 -82
  152. data/lib/twilio-ruby/rest/chat/v1/service.rb +340 -359
  153. data/lib/twilio-ruby/rest/chat/v1.rb +15 -11
  154. data/lib/twilio-ruby/rest/chat/v2/credential.rb +77 -84
  155. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +66 -56
  156. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +72 -74
  157. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +162 -154
  158. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +144 -136
  159. data/lib/twilio-ruby/rest/chat/v2/service/channel/webhook.rb +115 -69
  160. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +136 -119
  161. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +64 -59
  162. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +72 -67
  163. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +101 -53
  164. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +94 -89
  165. data/lib/twilio-ruby/rest/chat/v2/service.rb +228 -189
  166. data/lib/twilio-ruby/rest/chat/v2.rb +13 -11
  167. data/lib/twilio-ruby/rest/chat/v3/channel.rb +275 -0
  168. data/lib/twilio-ruby/rest/chat/v3.rb +48 -0
  169. data/lib/twilio-ruby/rest/chat.rb +19 -3
  170. data/lib/twilio-ruby/rest/client.rb +218 -75
  171. data/lib/twilio-ruby/rest/content/v1/content/approval_fetch.rb +195 -0
  172. data/lib/twilio-ruby/rest/{preview/acc_security/service.rb → content/v1/content.rb} +107 -149
  173. data/lib/twilio-ruby/rest/content/v1/content_and_approvals.rb +240 -0
  174. data/lib/twilio-ruby/rest/content/v1/legacy_content.rb +254 -0
  175. data/lib/twilio-ruby/rest/content/v1.rb +59 -0
  176. data/lib/twilio-ruby/rest/content.rb +59 -0
  177. data/lib/twilio-ruby/rest/conversations/v1/address_configuration.rb +454 -0
  178. data/lib/twilio-ruby/rest/conversations/v1/configuration/webhook.rb +254 -0
  179. data/lib/twilio-ruby/rest/conversations/v1/configuration.rb +260 -0
  180. data/lib/twilio-ruby/rest/conversations/v1/conversation/message/delivery_receipt.rb +355 -0
  181. data/lib/twilio-ruby/rest/conversations/v1/conversation/message.rb +517 -0
  182. data/lib/twilio-ruby/rest/conversations/v1/conversation/participant.rb +502 -0
  183. data/lib/twilio-ruby/rest/conversations/v1/conversation/webhook.rb +410 -0
  184. data/lib/twilio-ruby/rest/conversations/v1/conversation.rb +600 -0
  185. data/lib/twilio-ruby/rest/conversations/v1/credential.rb +419 -0
  186. data/lib/twilio-ruby/rest/conversations/v1/participant_conversation.rb +312 -0
  187. data/lib/twilio-ruby/rest/conversations/v1/role.rb +366 -0
  188. data/lib/twilio-ruby/rest/conversations/v1/service/binding.rb +380 -0
  189. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/notification.rb +323 -0
  190. data/lib/twilio-ruby/rest/conversations/v1/service/configuration/webhook.rb +269 -0
  191. data/lib/twilio-ruby/rest/conversations/v1/service/configuration.rb +286 -0
  192. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message/delivery_receipt.rb +386 -0
  193. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/message.rb +563 -0
  194. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/participant.rb +541 -0
  195. data/lib/twilio-ruby/rest/conversations/v1/service/conversation/webhook.rb +449 -0
  196. data/lib/twilio-ruby/rest/conversations/v1/service/conversation.rb +633 -0
  197. data/lib/twilio-ruby/rest/conversations/v1/service/participant_conversation.rb +324 -0
  198. data/lib/twilio-ruby/rest/conversations/v1/service/role.rb +387 -0
  199. data/lib/twilio-ruby/rest/conversations/v1/service/user/user_conversation.rb +466 -0
  200. data/lib/twilio-ruby/rest/conversations/v1/service/user.rb +481 -0
  201. data/lib/twilio-ruby/rest/{authy → conversations}/v1/service.rb +171 -92
  202. data/lib/twilio-ruby/rest/conversations/v1/user/user_conversation.rb +442 -0
  203. data/lib/twilio-ruby/rest/conversations/v1/user.rb +451 -0
  204. data/lib/twilio-ruby/rest/conversations/v1.rb +143 -0
  205. data/lib/twilio-ruby/rest/conversations.rb +104 -0
  206. data/lib/twilio-ruby/rest/events/v1/event_type.rb +298 -0
  207. data/lib/twilio-ruby/rest/{fax/v1/fax/fax_media.rb → events/v1/schema/version.rb} +85 -110
  208. data/lib/twilio-ruby/rest/events/v1/schema.rb +226 -0
  209. data/lib/twilio-ruby/rest/events/v1/sink/sink_test.rb +115 -0
  210. data/lib/twilio-ruby/rest/events/v1/sink/sink_validate.rb +119 -0
  211. data/lib/twilio-ruby/rest/events/v1/sink.rb +418 -0
  212. data/lib/twilio-ruby/rest/events/v1/subscription/subscribed_event.rb +346 -0
  213. data/lib/twilio-ruby/rest/events/v1/subscription.rb +397 -0
  214. data/lib/twilio-ruby/rest/events/v1.rb +94 -0
  215. data/lib/twilio-ruby/rest/events.rb +72 -0
  216. data/lib/twilio-ruby/rest/flex_api/v1/assessments.rb +397 -0
  217. data/lib/twilio-ruby/rest/flex_api/v1/channel.rb +340 -0
  218. data/lib/twilio-ruby/rest/flex_api/v1/configuration.rb +504 -0
  219. data/lib/twilio-ruby/rest/flex_api/v1/flex_flow.rb +580 -0
  220. data/lib/twilio-ruby/rest/flex_api/v1/insights_assessments_comment.rb +314 -0
  221. data/lib/twilio-ruby/rest/flex_api/v1/insights_conversations.rb +216 -0
  222. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires.rb +394 -0
  223. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_category.rb +313 -0
  224. data/lib/twilio-ruby/rest/flex_api/v1/insights_questionnaires_question.rb +390 -0
  225. data/lib/twilio-ruby/rest/flex_api/v1/insights_segments.rb +413 -0
  226. data/lib/twilio-ruby/rest/flex_api/v1/insights_session.rb +198 -0
  227. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_answersets.rb +144 -0
  228. data/lib/twilio-ruby/rest/flex_api/v1/insights_settings_comment.rb +130 -0
  229. data/lib/twilio-ruby/rest/flex_api/v1/insights_user_roles.rb +174 -0
  230. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_invite.rb +236 -0
  231. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel/interaction_channel_participant.rb +330 -0
  232. data/lib/twilio-ruby/rest/flex_api/v1/interaction/interaction_channel.rb +405 -0
  233. data/lib/twilio-ruby/rest/flex_api/v1/interaction.rb +233 -0
  234. data/lib/twilio-ruby/rest/flex_api/v1/web_channel.rb +341 -0
  235. data/lib/twilio-ruby/rest/flex_api/v1.rb +221 -0
  236. data/lib/twilio-ruby/rest/flex_api/v2/web_channels.rb +133 -0
  237. data/lib/twilio-ruby/rest/flex_api/v2.rb +35 -0
  238. data/lib/twilio-ruby/rest/flex_api.rb +169 -0
  239. data/lib/twilio-ruby/rest/frontline_api/v1/user.rb +258 -0
  240. data/lib/twilio-ruby/rest/frontline_api/v1.rb +45 -0
  241. data/lib/twilio-ruby/rest/frontline_api.rb +47 -0
  242. data/lib/twilio-ruby/rest/insights/v1/call/annotation.rb +322 -0
  243. data/lib/twilio-ruby/rest/insights/v1/call/event.rb +262 -0
  244. data/lib/twilio-ruby/rest/insights/v1/call/metric.rb +252 -0
  245. data/lib/twilio-ruby/rest/insights/v1/call/summary.rb +321 -0
  246. data/lib/twilio-ruby/rest/insights/v1/call.rb +244 -0
  247. data/lib/twilio-ruby/rest/insights/v1/call_summaries.rb +447 -0
  248. data/lib/twilio-ruby/rest/insights/v1/conference/conference_participant.rb +474 -0
  249. data/lib/twilio-ruby/rest/insights/v1/conference.rb +512 -0
  250. data/lib/twilio-ruby/rest/insights/v1/room/participant.rb +378 -0
  251. data/lib/twilio-ruby/rest/insights/v1/room.rb +499 -0
  252. data/lib/twilio-ruby/rest/insights/v1/setting.rb +215 -0
  253. data/lib/twilio-ruby/rest/insights/v1.rb +58 -11
  254. data/lib/twilio-ruby/rest/insights.rb +34 -6
  255. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +47 -75
  256. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +40 -66
  257. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +47 -93
  258. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +42 -62
  259. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +52 -71
  260. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +39 -59
  261. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +6 -10
  262. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +48 -77
  263. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +71 -205
  264. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +15 -13
  265. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +50 -94
  266. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +39 -56
  267. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +40 -69
  268. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +86 -154
  269. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +88 -134
  270. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/webhook.rb +29 -39
  271. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +87 -120
  272. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +39 -56
  273. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +38 -63
  274. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +67 -54
  275. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +69 -88
  276. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +80 -130
  277. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +15 -13
  278. data/lib/twilio-ruby/rest/ip_messaging.rb +7 -9
  279. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +63 -56
  280. data/lib/twilio-ruby/rest/lookups/v1.rb +9 -6
  281. data/lib/twilio-ruby/rest/lookups/v2/phone_number.rb +343 -0
  282. data/lib/twilio-ruby/rest/lookups/v2.rb +45 -0
  283. data/lib/twilio-ruby/rest/lookups.rb +11 -4
  284. data/lib/twilio-ruby/rest/media/v1/media_processor.rb +397 -0
  285. data/lib/twilio-ruby/rest/media/v1/media_recording.rb +399 -0
  286. data/lib/twilio-ruby/rest/media/v1/player_streamer/playback_grant.rb +221 -0
  287. data/lib/twilio-ruby/rest/media/v1/player_streamer.rb +403 -0
  288. data/lib/twilio-ruby/rest/media/v1.rb +76 -0
  289. data/lib/twilio-ruby/rest/media.rb +65 -0
  290. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_registration_otp.rb +134 -0
  291. data/lib/twilio-ruby/rest/messaging/v1/brand_registration/brand_vetting.rb +353 -0
  292. data/lib/twilio-ruby/rest/messaging/v1/brand_registration.rb +476 -0
  293. data/lib/twilio-ruby/rest/messaging/v1/deactivation.rb +164 -0
  294. data/lib/twilio-ruby/rest/messaging/v1/domain_cert.rb +257 -0
  295. data/lib/twilio-ruby/rest/messaging/v1/domain_config.rb +242 -0
  296. data/lib/twilio-ruby/rest/messaging/v1/domain_config_messaging_service.rb +226 -0
  297. data/lib/twilio-ruby/rest/messaging/v1/external_campaign.rb +150 -0
  298. data/lib/twilio-ruby/rest/messaging/v1/linkshortening_messaging_service.rb +218 -0
  299. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +44 -46
  300. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +44 -44
  301. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +40 -48
  302. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person.rb +528 -0
  303. data/lib/twilio-ruby/rest/messaging/v1/service/us_app_to_person_usecase.rb +129 -0
  304. data/lib/twilio-ruby/rest/messaging/v1/service.rb +272 -128
  305. data/lib/twilio-ruby/rest/messaging/v1/tollfree_verification.rb +723 -0
  306. data/lib/twilio-ruby/rest/messaging/v1/usecase.rb +111 -0
  307. data/lib/twilio-ruby/rest/messaging/v1.rb +135 -6
  308. data/lib/twilio-ruby/rest/messaging.rb +73 -2
  309. data/lib/twilio-ruby/rest/microvisor/v1/account_config.rb +317 -0
  310. data/lib/twilio-ruby/rest/microvisor/v1/account_secret.rb +310 -0
  311. data/lib/twilio-ruby/rest/microvisor/v1/app/app_manifest.rb +192 -0
  312. data/lib/twilio-ruby/rest/microvisor/v1/app.rb +330 -0
  313. data/lib/twilio-ruby/rest/microvisor/v1/device/device_config.rb +342 -0
  314. data/lib/twilio-ruby/rest/microvisor/v1/device/device_secret.rb +335 -0
  315. data/lib/twilio-ruby/rest/microvisor/v1/device.rb +393 -0
  316. data/lib/twilio-ruby/rest/microvisor/v1.rb +92 -0
  317. data/lib/twilio-ruby/rest/microvisor.rb +70 -0
  318. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +75 -88
  319. data/lib/twilio-ruby/rest/monitor/v1/event.rb +61 -65
  320. data/lib/twilio-ruby/rest/monitor/v1.rb +13 -11
  321. data/lib/twilio-ruby/rest/monitor.rb +5 -3
  322. data/lib/twilio-ruby/rest/notify/v1/credential.rb +82 -81
  323. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +100 -94
  324. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +127 -125
  325. data/lib/twilio-ruby/rest/notify/v1/service.rb +176 -142
  326. data/lib/twilio-ruby/rest/notify/v1.rb +15 -11
  327. data/lib/twilio-ruby/rest/notify.rb +5 -3
  328. data/lib/twilio-ruby/rest/numbers/v1/eligibility.rb +111 -0
  329. data/lib/twilio-ruby/rest/numbers/v1.rb +35 -0
  330. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/bundle_copy.rb +268 -0
  331. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/evaluation.rb +309 -0
  332. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/item_assignment.rb +320 -0
  333. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle/replace_items.rb +188 -0
  334. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/bundle.rb +614 -0
  335. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user.rb +358 -0
  336. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/end_user_type.rb +273 -0
  337. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/regulation.rb +314 -0
  338. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document.rb +378 -0
  339. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance/supporting_document_type.rb +273 -0
  340. data/lib/twilio-ruby/rest/numbers/v2/regulatory_compliance.rb +189 -0
  341. data/lib/twilio-ruby/rest/numbers/v2.rb +35 -0
  342. data/lib/twilio-ruby/rest/numbers.rb +57 -0
  343. data/lib/twilio-ruby/rest/oauth/v1/device_code.rb +153 -0
  344. data/lib/twilio-ruby/rest/oauth/v1/oauth.rb +162 -0
  345. data/lib/twilio-ruby/rest/oauth/v1/openid_discovery.rb +242 -0
  346. data/lib/twilio-ruby/rest/oauth/v1/token.rb +157 -0
  347. data/lib/twilio-ruby/rest/oauth/v1/user_info.rb +193 -0
  348. data/lib/twilio-ruby/rest/oauth/v1.rb +63 -0
  349. data/lib/twilio-ruby/rest/oauth.rb +68 -0
  350. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +23 -33
  351. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +23 -33
  352. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +23 -33
  353. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +23 -33
  354. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +23 -33
  355. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +6 -5
  356. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +17 -16
  357. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +46 -51
  358. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +34 -44
  359. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +11 -9
  360. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +28 -26
  361. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +23 -26
  362. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +32 -34
  363. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +50 -63
  364. data/lib/twilio-ruby/rest/preview/marketplace.rb +13 -13
  365. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +20 -25
  366. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +29 -36
  367. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +37 -40
  368. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +20 -25
  369. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +22 -28
  370. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +36 -39
  371. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +20 -25
  372. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +22 -28
  373. data/lib/twilio-ruby/rest/preview/sync/service.rb +23 -33
  374. data/lib/twilio-ruby/rest/preview/sync.rb +6 -5
  375. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_fallback_actions.rb +12 -15
  376. data/lib/twilio-ruby/rest/preview/understand/assistant/assistant_initiation_actions.rb +12 -15
  377. data/lib/twilio-ruby/rest/preview/understand/assistant/dialogue.rb +11 -10
  378. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type/field_value.rb +22 -28
  379. data/lib/twilio-ruby/rest/preview/understand/assistant/field_type.rb +23 -33
  380. data/lib/twilio-ruby/rest/preview/understand/assistant/model_build.rb +23 -33
  381. data/lib/twilio-ruby/rest/preview/understand/assistant/query.rb +23 -33
  382. data/lib/twilio-ruby/rest/preview/understand/assistant/style_sheet.rb +12 -15
  383. data/lib/twilio-ruby/rest/preview/understand/assistant/task/field.rb +24 -30
  384. data/lib/twilio-ruby/rest/preview/understand/assistant/task/sample.rb +23 -33
  385. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_actions.rb +12 -15
  386. data/lib/twilio-ruby/rest/preview/understand/assistant/task/task_statistics.rb +13 -12
  387. data/lib/twilio-ruby/rest/preview/understand/assistant/task.rb +23 -33
  388. data/lib/twilio-ruby/rest/preview/understand/assistant.rb +23 -33
  389. data/lib/twilio-ruby/rest/preview/understand.rb +6 -5
  390. data/lib/twilio-ruby/rest/preview/wireless/command.rb +17 -23
  391. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +26 -36
  392. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +11 -8
  393. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +15 -20
  394. data/lib/twilio-ruby/rest/preview/wireless.rb +16 -13
  395. data/lib/twilio-ruby/rest/preview.rb +6 -35
  396. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +26 -23
  397. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +4 -2
  398. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +26 -23
  399. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +4 -2
  400. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +26 -23
  401. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +20 -19
  402. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +5 -3
  403. data/lib/twilio-ruby/rest/pricing/v1.rb +1 -1
  404. data/lib/twilio-ruby/rest/pricing/v2/country.rb +280 -0
  405. data/lib/twilio-ruby/rest/pricing/v2/number.rb +225 -0
  406. data/lib/twilio-ruby/rest/pricing/v2/voice/country.rb +26 -25
  407. data/lib/twilio-ruby/rest/pricing/v2/voice/number.rb +35 -22
  408. data/lib/twilio-ruby/rest/pricing/v2/voice.rb +11 -8
  409. data/lib/twilio-ruby/rest/pricing/v2.rb +38 -1
  410. data/lib/twilio-ruby/rest/pricing.rb +20 -1
  411. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +69 -68
  412. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +56 -55
  413. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +62 -61
  414. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +60 -62
  415. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +86 -96
  416. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +55 -56
  417. data/lib/twilio-ruby/rest/proxy/v1/service.rb +153 -119
  418. data/lib/twilio-ruby/rest/proxy/v1.rb +8 -6
  419. data/lib/twilio-ruby/rest/proxy.rb +3 -2
  420. data/lib/twilio-ruby/rest/routes/v2/phone_number.rb +235 -0
  421. data/lib/twilio-ruby/rest/routes/v2/sip_domain.rb +231 -0
  422. data/lib/twilio-ruby/rest/routes/v2/trunk.rb +235 -0
  423. data/lib/twilio-ruby/rest/routes/v2.rb +76 -0
  424. data/lib/twilio-ruby/rest/routes.rb +62 -0
  425. data/lib/twilio-ruby/rest/serverless/v1/service/asset/asset_version.rb +334 -0
  426. data/lib/twilio-ruby/rest/serverless/v1/service/asset.rb +387 -0
  427. data/lib/twilio-ruby/rest/serverless/v1/service/build/build_status.rb +219 -0
  428. data/lib/twilio-ruby/rest/serverless/v1/service/build.rb +391 -0
  429. data/lib/twilio-ruby/rest/serverless/v1/service/environment/deployment.rb +349 -0
  430. data/lib/twilio-ruby/rest/serverless/v1/service/environment/log.rb +394 -0
  431. data/lib/twilio-ruby/rest/serverless/v1/service/environment/variable.rb +407 -0
  432. data/lib/twilio-ruby/rest/serverless/v1/service/environment.rb +454 -0
  433. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version/function_version_content.rb +241 -0
  434. data/lib/twilio-ruby/rest/serverless/v1/service/function/function_version.rb +364 -0
  435. data/lib/twilio-ruby/rest/serverless/v1/service/function.rb +387 -0
  436. data/lib/twilio-ruby/rest/{verify → serverless}/v1/service.rb +183 -158
  437. data/lib/twilio-ruby/rest/serverless/v1.rb +44 -0
  438. data/lib/twilio-ruby/rest/serverless.rb +47 -0
  439. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/engagement_context.rb +22 -21
  440. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step/step_context.rb +26 -27
  441. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +34 -35
  442. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +45 -50
  443. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_context.rb +23 -21
  444. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step/execution_step_context.rb +29 -27
  445. data/lib/twilio-ruby/rest/studio/v1/flow/execution/execution_step.rb +35 -35
  446. data/lib/twilio-ruby/rest/studio/v1/flow/execution.rb +88 -65
  447. data/lib/twilio-ruby/rest/studio/v1/flow.rb +31 -32
  448. data/lib/twilio-ruby/rest/studio/v1.rb +7 -6
  449. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_context.rb +211 -0
  450. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step/execution_step_context.rb +228 -0
  451. data/lib/twilio-ruby/rest/studio/v2/flow/execution/execution_step.rb +372 -0
  452. data/lib/twilio-ruby/rest/studio/v2/flow/execution.rb +449 -0
  453. data/lib/twilio-ruby/rest/studio/v2/flow/flow_revision.rb +327 -0
  454. data/lib/twilio-ruby/rest/studio/v2/flow/test_user.rb +199 -0
  455. data/lib/twilio-ruby/rest/studio/v2/flow.rb +482 -0
  456. data/lib/twilio-ruby/rest/studio/v2/flow_validate.rb +117 -0
  457. data/lib/twilio-ruby/rest/studio/v2.rb +51 -0
  458. data/lib/twilio-ruby/rest/studio.rb +19 -5
  459. data/lib/twilio-ruby/rest/supersim/v1/esim_profile.rb +392 -0
  460. data/lib/twilio-ruby/rest/supersim/v1/fleet.rb +493 -0
  461. data/lib/twilio-ruby/rest/supersim/v1/ip_command.rb +419 -0
  462. data/lib/twilio-ruby/rest/supersim/v1/network.rb +307 -0
  463. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile/network_access_profile_network.rb +339 -0
  464. data/lib/twilio-ruby/rest/supersim/v1/network_access_profile.rb +361 -0
  465. data/lib/twilio-ruby/rest/supersim/v1/settings_update.rb +247 -0
  466. data/lib/twilio-ruby/rest/supersim/v1/sim/billing_period.rb +231 -0
  467. data/lib/twilio-ruby/rest/supersim/v1/sim/sim_ip_address.rb +195 -0
  468. data/lib/twilio-ruby/rest/supersim/v1/sim.rb +463 -0
  469. data/lib/twilio-ruby/rest/supersim/v1/sms_command.rb +371 -0
  470. data/lib/twilio-ruby/rest/supersim/v1/usage_record.rb +352 -0
  471. data/lib/twilio-ruby/rest/supersim/v1.rb +154 -0
  472. data/lib/twilio-ruby/rest/supersim.rb +112 -0
  473. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +60 -69
  474. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +71 -75
  475. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +142 -122
  476. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +59 -69
  477. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +64 -70
  478. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +146 -129
  479. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +57 -69
  480. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +65 -72
  481. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +18 -27
  482. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +57 -67
  483. data/lib/twilio-ruby/rest/sync/v1/service.rb +141 -87
  484. data/lib/twilio-ruby/rest/sync/v1.rb +7 -6
  485. data/lib/twilio-ruby/rest/sync.rb +3 -2
  486. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +83 -77
  487. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +131 -85
  488. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +316 -205
  489. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +220 -179
  490. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +78 -61
  491. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +95 -81
  492. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +63 -33
  493. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +57 -54
  494. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +61 -70
  495. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +129 -126
  496. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +309 -161
  497. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +59 -62
  498. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +50 -41
  499. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +49 -45
  500. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +28 -20
  501. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +53 -50
  502. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +155 -123
  503. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +85 -72
  504. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +44 -28
  505. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +65 -54
  506. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +109 -108
  507. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +74 -67
  508. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +37 -27
  509. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +55 -50
  510. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +140 -128
  511. data/lib/twilio-ruby/rest/taskrouter/v1.rb +7 -6
  512. data/lib/twilio-ruby/rest/taskrouter.rb +3 -2
  513. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +42 -43
  514. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +40 -45
  515. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +76 -85
  516. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +65 -62
  517. data/lib/twilio-ruby/rest/trunking/v1/trunk/recording.rb +198 -0
  518. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +165 -136
  519. data/lib/twilio-ruby/rest/trunking/v1.rb +8 -7
  520. data/lib/twilio-ruby/rest/trunking.rb +3 -3
  521. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_channel_endpoint_assignment.rb +359 -0
  522. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_entity_assignments.rb +330 -0
  523. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles/customer_profiles_evaluations.rb +328 -0
  524. data/lib/twilio-ruby/rest/trusthub/v1/customer_profiles.rb +523 -0
  525. data/lib/twilio-ruby/rest/trusthub/v1/end_user.rb +356 -0
  526. data/lib/twilio-ruby/rest/trusthub/v1/end_user_type.rb +271 -0
  527. data/lib/twilio-ruby/rest/trusthub/v1/policies.rb +262 -0
  528. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document.rb +369 -0
  529. data/lib/twilio-ruby/rest/trusthub/v1/supporting_document_type.rb +271 -0
  530. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_channel_endpoint_assignment.rb +359 -0
  531. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_entity_assignments.rb +330 -0
  532. data/lib/twilio-ruby/rest/trusthub/v1/trust_products/trust_products_evaluations.rb +328 -0
  533. data/lib/twilio-ruby/rest/trusthub/v1/trust_products.rb +523 -0
  534. data/lib/twilio-ruby/rest/trusthub/v1.rb +146 -0
  535. data/lib/twilio-ruby/rest/trusthub.rb +100 -0
  536. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/form.rb +26 -25
  537. data/lib/twilio-ruby/rest/verify/v2/safelist.rb +215 -0
  538. data/lib/twilio-ruby/rest/verify/v2/service/access_token.rb +261 -0
  539. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge/notification.rb +199 -0
  540. data/lib/twilio-ruby/rest/verify/v2/service/entity/challenge.rb +543 -0
  541. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity/factor.rb +116 -124
  542. data/lib/twilio-ruby/rest/verify/v2/service/entity/new_factor.rb +303 -0
  543. data/lib/twilio-ruby/rest/{authy/v1 → verify/v2}/service/entity.rb +96 -47
  544. data/lib/twilio-ruby/rest/verify/v2/service/messaging_configuration.rb +370 -0
  545. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit/bucket.rb +399 -0
  546. data/lib/twilio-ruby/rest/verify/v2/service/rate_limit.rb +391 -0
  547. data/lib/twilio-ruby/rest/verify/v2/service/verification.rb +379 -0
  548. data/lib/twilio-ruby/rest/verify/{v1 → v2}/service/verification_check.rb +66 -39
  549. data/lib/twilio-ruby/rest/verify/v2/service/webhook.rb +419 -0
  550. data/lib/twilio-ruby/rest/verify/v2/service.rb +790 -0
  551. data/lib/twilio-ruby/rest/verify/v2/template.rb +213 -0
  552. data/lib/twilio-ruby/rest/verify/v2/verification_attempt.rb +397 -0
  553. data/lib/twilio-ruby/rest/verify/v2/verification_attempts_summary.rb +234 -0
  554. data/lib/twilio-ruby/rest/verify/v2.rb +110 -0
  555. data/lib/twilio-ruby/rest/verify.rb +48 -9
  556. data/lib/twilio-ruby/rest/video/v1/composition.rb +149 -144
  557. data/lib/twilio-ruby/rest/video/v1/composition_hook.rb +268 -232
  558. data/lib/twilio-ruby/rest/video/v1/composition_settings.rb +54 -63
  559. data/lib/twilio-ruby/rest/video/v1/recording.rb +104 -77
  560. data/lib/twilio-ruby/rest/video/v1/recording_settings.rb +54 -63
  561. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +73 -55
  562. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_anonymize.rb +240 -0
  563. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +39 -37
  564. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribe_rule.rb +175 -0
  565. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +132 -105
  566. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +120 -77
  567. data/lib/twilio-ruby/rest/video/v1/room/room_recording_rule.rb +144 -0
  568. data/lib/twilio-ruby/rest/video/v1/room.rb +176 -86
  569. data/lib/twilio-ruby/rest/video/v1.rb +25 -24
  570. data/lib/twilio-ruby/rest/video.rb +9 -9
  571. data/lib/twilio-ruby/rest/voice/v1/archived_call.rb +184 -0
  572. data/lib/twilio-ruby/rest/voice/v1/byoc_trunk.rb +496 -0
  573. data/lib/twilio-ruby/rest/voice/v1/connection_policy/connection_policy_target.rb +441 -0
  574. data/lib/twilio-ruby/rest/voice/v1/connection_policy.rb +362 -0
  575. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/bulk_country_update.rb +6 -11
  576. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country/highrisk_special_prefix.rb +9 -11
  577. data/lib/twilio-ruby/rest/voice/v1/{voice_permission → dialing_permissions}/country.rb +45 -44
  578. data/lib/twilio-ruby/rest/voice/v1/dialing_permissions/settings.rb +197 -0
  579. data/lib/twilio-ruby/rest/voice/v1/{voice_permission.rb → dialing_permissions.rb} +21 -23
  580. data/lib/twilio-ruby/rest/voice/v1/ip_record.rb +349 -0
  581. data/lib/twilio-ruby/rest/voice/v1/source_ip_mapping.rb +329 -0
  582. data/lib/twilio-ruby/rest/voice/v1.rb +94 -5
  583. data/lib/twilio-ruby/rest/voice.rb +48 -4
  584. data/lib/twilio-ruby/rest/wireless/v1/command.rb +74 -77
  585. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +89 -91
  586. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +39 -42
  587. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +42 -38
  588. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +179 -161
  589. data/lib/twilio-ruby/rest/wireless/v1/usage_record.rb +229 -0
  590. data/lib/twilio-ruby/rest/wireless/v1.rb +26 -18
  591. data/lib/twilio-ruby/rest/wireless.rb +10 -4
  592. data/lib/twilio-ruby/rest.rb +13 -0
  593. data/lib/twilio-ruby/security/request_validator.rb +64 -11
  594. data/lib/twilio-ruby/twiml/fax_response.rb +6 -3
  595. data/lib/twilio-ruby/twiml/messaging_response.rb +1 -1
  596. data/lib/twilio-ruby/twiml/twiml.rb +4 -0
  597. data/lib/twilio-ruby/twiml/voice_response.rb +1156 -172
  598. data/lib/twilio-ruby/util/configuration.rb +22 -5
  599. data/lib/twilio-ruby/version.rb +1 -1
  600. data/lib/twilio-ruby.rb +9 -25
  601. data/sonar-project.properties +13 -0
  602. data/twilio-ruby.gemspec +12 -7
  603. metadata +355 -656
  604. data/.travis.yml +0 -26
  605. data/lib/twilio-ruby/rest/authy/v1/service/entity/factor/challenge.rb +0 -398
  606. data/lib/twilio-ruby/rest/authy/v1.rb +0 -59
  607. data/lib/twilio-ruby/rest/authy.rb +0 -55
  608. data/lib/twilio-ruby/rest/fax/v1/fax.rb +0 -531
  609. data/lib/twilio-ruby/rest/fax/v1.rb +0 -43
  610. data/lib/twilio-ruby/rest/fax.rb +0 -46
  611. data/lib/twilio-ruby/rest/insights/v1/summary.rb +0 -286
  612. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +0 -185
  613. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +0 -182
  614. data/lib/twilio-ruby/rest/preview/acc_security.rb +0 -43
  615. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +0 -58
  616. data/lib/twilio-ruby/rest/verify/v1/service/verification.rb +0 -206
  617. data/lib/twilio-ruby/rest/verify/v1.rb +0 -43
  618. data/spec/framework/request_spec.rb +0 -36
  619. data/spec/framework/serialize_spec.rb +0 -80
  620. data/spec/holodeck/holodeck.rb +0 -61
  621. data/spec/holodeck/hologram.rb +0 -4
  622. data/spec/http/http_client_spec.rb +0 -122
  623. data/spec/integration/accounts/v1/credential/aws_spec.rb +0 -226
  624. data/spec/integration/accounts/v1/credential/public_key_spec.rb +0 -226
  625. data/spec/integration/accounts/v1/credential_spec.rb +0 -12
  626. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +0 -107
  627. data/spec/integration/api/v2010/account/address_spec.rb +0 -269
  628. data/spec/integration/api/v2010/account/application_spec.rb +0 -280
  629. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +0 -139
  630. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +0 -103
  631. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +0 -103
  632. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +0 -102
  633. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +0 -103
  634. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +0 -103
  635. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +0 -102
  636. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +0 -103
  637. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +0 -130
  638. data/spec/integration/api/v2010/account/balance_spec.rb +0 -45
  639. data/spec/integration/api/v2010/account/call/feedback_spec.rb +0 -139
  640. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +0 -151
  641. data/spec/integration/api/v2010/account/call/notification_spec.rb +0 -181
  642. data/spec/integration/api/v2010/account/call/recording_spec.rb +0 -287
  643. data/spec/integration/api/v2010/account/call_spec.rb +0 -314
  644. data/spec/integration/api/v2010/account/conference/participant_spec.rb +0 -350
  645. data/spec/integration/api/v2010/account/conference/recording_spec.rb +0 -237
  646. data/spec/integration/api/v2010/account/conference_spec.rb +0 -179
  647. data/spec/integration/api/v2010/account/connect_app_spec.rb +0 -179
  648. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +0 -137
  649. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +0 -223
  650. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +0 -185
  651. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +0 -185
  652. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +0 -185
  653. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +0 -341
  654. data/spec/integration/api/v2010/account/key_spec.rb +0 -180
  655. data/spec/integration/api/v2010/account/message/feedback_spec.rb +0 -50
  656. data/spec/integration/api/v2010/account/message/media_spec.rb +0 -164
  657. data/spec/integration/api/v2010/account/message_spec.rb +0 -290
  658. data/spec/integration/api/v2010/account/new_key_spec.rb +0 -47
  659. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +0 -47
  660. data/spec/integration/api/v2010/account/notification_spec.rb +0 -174
  661. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +0 -195
  662. data/spec/integration/api/v2010/account/queue/member_spec.rb +0 -169
  663. data/spec/integration/api/v2010/account/queue_spec.rb +0 -242
  664. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +0 -177
  665. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +0 -168
  666. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +0 -176
  667. data/spec/integration/api/v2010/account/recording_spec.rb +0 -187
  668. data/spec/integration/api/v2010/account/short_code_spec.rb +0 -182
  669. data/spec/integration/api/v2010/account/signing_key_spec.rb +0 -180
  670. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +0 -256
  671. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +0 -244
  672. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_credential_list_mapping_spec.rb +0 -220
  673. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping/auth_calls_ip_access_control_list_mapping_spec.rb +0 -220
  674. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_calls_mapping_spec.rb +0 -12
  675. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping/auth_registrations_credential_list_mapping_spec.rb +0 -220
  676. data/spec/integration/api/v2010/account/sip/domain/auth_types/auth_registrations_mapping_spec.rb +0 -12
  677. data/spec/integration/api/v2010/account/sip/domain/auth_types_spec.rb +0 -12
  678. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +0 -210
  679. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +0 -220
  680. data/spec/integration/api/v2010/account/sip/domain_spec.rb +0 -295
  681. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +0 -258
  682. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +0 -254
  683. data/spec/integration/api/v2010/account/sip_spec.rb +0 -12
  684. data/spec/integration/api/v2010/account/token_spec.rb +0 -58
  685. data/spec/integration/api/v2010/account/transcription_spec.rb +0 -169
  686. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +0 -113
  687. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +0 -113
  688. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +0 -113
  689. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +0 -113
  690. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +0 -113
  691. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +0 -113
  692. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +0 -113
  693. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +0 -113
  694. data/spec/integration/api/v2010/account/usage/record_spec.rb +0 -110
  695. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +0 -285
  696. data/spec/integration/api/v2010/account/usage_spec.rb +0 -12
  697. data/spec/integration/api/v2010/account/validation_request_spec.rb +0 -48
  698. data/spec/integration/api/v2010/account_spec.rb +0 -275
  699. data/spec/integration/authy/v1/form_spec.rb +0 -48
  700. data/spec/integration/authy/v1/service/entity/factor/challenge_spec.rb +0 -262
  701. data/spec/integration/authy/v1/service/entity/factor_spec.rb +0 -269
  702. data/spec/integration/authy/v1/service/entity_spec.rb +0 -201
  703. data/spec/integration/authy/v1/service_spec.rb +0 -227
  704. data/spec/integration/autopilot/v1/assistant/defaults_spec.rb +0 -81
  705. data/spec/integration/autopilot/v1/assistant/dialogue_spec.rb +0 -47
  706. data/spec/integration/autopilot/v1/assistant/field_type/field_value_spec.rb +0 -210
  707. data/spec/integration/autopilot/v1/assistant/field_type_spec.rb +0 -246
  708. data/spec/integration/autopilot/v1/assistant/model_build_spec.rb +0 -241
  709. data/spec/integration/autopilot/v1/assistant/query_spec.rb +0 -306
  710. data/spec/integration/autopilot/v1/assistant/style_sheet_spec.rb +0 -81
  711. data/spec/integration/autopilot/v1/assistant/task/field_spec.rb +0 -207
  712. data/spec/integration/autopilot/v1/assistant/task/sample_spec.rb +0 -253
  713. data/spec/integration/autopilot/v1/assistant/task/task_actions_spec.rb +0 -87
  714. data/spec/integration/autopilot/v1/assistant/task/task_statistics_spec.rb +0 -50
  715. data/spec/integration/autopilot/v1/assistant/task_spec.rb +0 -262
  716. data/spec/integration/autopilot/v1/assistant_spec.rb +0 -270
  717. data/spec/integration/chat/v1/credential_spec.rb +0 -223
  718. data/spec/integration/chat/v1/service/channel/invite_spec.rb +0 -210
  719. data/spec/integration/chat/v1/service/channel/member_spec.rb +0 -284
  720. data/spec/integration/chat/v1/service/channel/message_spec.rb +0 -294
  721. data/spec/integration/chat/v1/service/channel_spec.rb +0 -277
  722. data/spec/integration/chat/v1/service/role_spec.rb +0 -263
  723. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +0 -94
  724. data/spec/integration/chat/v1/service/user_spec.rb +0 -266
  725. data/spec/integration/chat/v1/service_spec.rb +0 -299
  726. data/spec/integration/chat/v2/credential_spec.rb +0 -223
  727. data/spec/integration/chat/v2/service/binding_spec.rb +0 -177
  728. data/spec/integration/chat/v2/service/channel/invite_spec.rb +0 -210
  729. data/spec/integration/chat/v2/service/channel/member_spec.rb +0 -261
  730. data/spec/integration/chat/v2/service/channel/message_spec.rb +0 -405
  731. data/spec/integration/chat/v2/service/channel/webhook_spec.rb +0 -307
  732. data/spec/integration/chat/v2/service/channel_spec.rb +0 -281
  733. data/spec/integration/chat/v2/service/role_spec.rb +0 -263
  734. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +0 -180
  735. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +0 -192
  736. data/spec/integration/chat/v2/service/user_spec.rb +0 -270
  737. data/spec/integration/chat/v2/service_spec.rb +0 -354
  738. data/spec/integration/fax/v1/fax/fax_media_spec.rb +0 -128
  739. data/spec/integration/fax/v1/fax_spec.rb +0 -271
  740. data/spec/integration/insights/v1/summary_spec.rb +0 -60
  741. data/spec/integration/ip_messaging/v1/credential_spec.rb +0 -223
  742. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +0 -210
  743. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +0 -284
  744. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +0 -294
  745. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +0 -277
  746. data/spec/integration/ip_messaging/v1/service/role_spec.rb +0 -263
  747. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +0 -94
  748. data/spec/integration/ip_messaging/v1/service/user_spec.rb +0 -266
  749. data/spec/integration/ip_messaging/v1/service_spec.rb +0 -299
  750. data/spec/integration/ip_messaging/v2/credential_spec.rb +0 -223
  751. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +0 -177
  752. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +0 -210
  753. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +0 -261
  754. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +0 -405
  755. data/spec/integration/ip_messaging/v2/service/channel/webhook_spec.rb +0 -307
  756. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +0 -281
  757. data/spec/integration/ip_messaging/v2/service/role_spec.rb +0 -263
  758. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +0 -180
  759. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +0 -192
  760. data/spec/integration/ip_messaging/v2/service/user_spec.rb +0 -270
  761. data/spec/integration/ip_messaging/v2/service_spec.rb +0 -354
  762. data/spec/integration/lookups/v1/phone_number_spec.rb +0 -71
  763. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +0 -170
  764. data/spec/integration/messaging/v1/service/phone_number_spec.rb +0 -201
  765. data/spec/integration/messaging/v1/service/short_code_spec.rb +0 -173
  766. data/spec/integration/messaging/v1/service_spec.rb +0 -271
  767. data/spec/integration/monitor/v1/alert_spec.rb +0 -163
  768. data/spec/integration/monitor/v1/event_spec.rb +0 -150
  769. data/spec/integration/notify/v1/credential_spec.rb +0 -223
  770. data/spec/integration/notify/v1/service/binding_spec.rb +0 -225
  771. data/spec/integration/notify/v1/service/notification_spec.rb +0 -99
  772. data/spec/integration/notify/v1/service_spec.rb +0 -286
  773. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +0 -52
  774. data/spec/integration/preview/acc_security/service/verification_spec.rb +0 -52
  775. data/spec/integration/preview/acc_security/service_spec.rb +0 -185
  776. data/spec/integration/preview/bulk_exports/export/day_spec.rb +0 -58
  777. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +0 -79
  778. data/spec/integration/preview/bulk_exports/export_spec.rb +0 -45
  779. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +0 -238
  780. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +0 -233
  781. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +0 -249
  782. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +0 -237
  783. data/spec/integration/preview/deployed_devices/fleet_spec.rb +0 -246
  784. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +0 -111
  785. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +0 -227
  786. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +0 -393
  787. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +0 -123
  788. data/spec/integration/preview/marketplace/available_add_on_spec.rb +0 -144
  789. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +0 -164
  790. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +0 -254
  791. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +0 -204
  792. data/spec/integration/preview/sync/service/document_spec.rb +0 -254
  793. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +0 -254
  794. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +0 -204
  795. data/spec/integration/preview/sync/service/sync_list_spec.rb +0 -209
  796. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +0 -254
  797. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +0 -204
  798. data/spec/integration/preview/sync/service/sync_map_spec.rb +0 -209
  799. data/spec/integration/preview/sync/service_spec.rb +0 -246
  800. data/spec/integration/preview/understand/assistant/assistant_fallback_actions_spec.rb +0 -81
  801. data/spec/integration/preview/understand/assistant/assistant_initiation_actions_spec.rb +0 -81
  802. data/spec/integration/preview/understand/assistant/dialogue_spec.rb +0 -47
  803. data/spec/integration/preview/understand/assistant/field_type/field_value_spec.rb +0 -210
  804. data/spec/integration/preview/understand/assistant/field_type_spec.rb +0 -246
  805. data/spec/integration/preview/understand/assistant/model_build_spec.rb +0 -241
  806. data/spec/integration/preview/understand/assistant/query_spec.rb +0 -306
  807. data/spec/integration/preview/understand/assistant/style_sheet_spec.rb +0 -81
  808. data/spec/integration/preview/understand/assistant/task/field_spec.rb +0 -207
  809. data/spec/integration/preview/understand/assistant/task/sample_spec.rb +0 -253
  810. data/spec/integration/preview/understand/assistant/task/task_actions_spec.rb +0 -87
  811. data/spec/integration/preview/understand/assistant/task/task_statistics_spec.rb +0 -50
  812. data/spec/integration/preview/understand/assistant/task_spec.rb +0 -262
  813. data/spec/integration/preview/understand/assistant_spec.rb +0 -274
  814. data/spec/integration/preview/wireless/command_spec.rb +0 -169
  815. data/spec/integration/preview/wireless/rate_plan_spec.rb +0 -262
  816. data/spec/integration/preview/wireless/sim/usage_spec.rb +0 -51
  817. data/spec/integration/preview/wireless/sim_spec.rb +0 -210
  818. data/spec/integration/pricing/v1/messaging/country_spec.rb +0 -139
  819. data/spec/integration/pricing/v1/messaging_spec.rb +0 -12
  820. data/spec/integration/pricing/v1/phone_number/country_spec.rb +0 -130
  821. data/spec/integration/pricing/v1/phone_number_spec.rb +0 -12
  822. data/spec/integration/pricing/v1/voice/country_spec.rb +0 -140
  823. data/spec/integration/pricing/v1/voice/number_spec.rb +0 -56
  824. data/spec/integration/pricing/v1/voice_spec.rb +0 -12
  825. data/spec/integration/pricing/v2/voice/country_spec.rb +0 -181
  826. data/spec/integration/pricing/v2/voice/number_spec.rb +0 -62
  827. data/spec/integration/pricing/v2/voice_spec.rb +0 -12
  828. data/spec/integration/proxy/v1/service/phone_number_spec.rb +0 -232
  829. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +0 -136
  830. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +0 -166
  831. data/spec/integration/proxy/v1/service/session/participant_spec.rb +0 -243
  832. data/spec/integration/proxy/v1/service/session_spec.rb +0 -230
  833. data/spec/integration/proxy/v1/service/short_code_spec.rb +0 -229
  834. data/spec/integration/proxy/v1/service_spec.rb +0 -218
  835. data/spec/integration/studio/v1/flow/engagement/engagement_context_spec.rb +0 -51
  836. data/spec/integration/studio/v1/flow/engagement/step/step_context_spec.rb +0 -54
  837. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +0 -101
  838. data/spec/integration/studio/v1/flow/engagement_spec.rb +0 -171
  839. data/spec/integration/studio/v1/flow/execution/execution_context_spec.rb +0 -51
  840. data/spec/integration/studio/v1/flow/execution/execution_step/execution_step_context_spec.rb +0 -54
  841. data/spec/integration/studio/v1/flow/execution/execution_step_spec.rb +0 -101
  842. data/spec/integration/studio/v1/flow/execution_spec.rb +0 -171
  843. data/spec/integration/studio/v1/flow_spec.rb +0 -117
  844. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +0 -204
  845. data/spec/integration/sync/v1/service/document_spec.rb +0 -257
  846. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +0 -257
  847. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +0 -204
  848. data/spec/integration/sync/v1/service/sync_list_spec.rb +0 -257
  849. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +0 -257
  850. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +0 -204
  851. data/spec/integration/sync/v1/service/sync_map_spec.rb +0 -257
  852. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +0 -47
  853. data/spec/integration/sync/v1/service/sync_stream_spec.rb +0 -249
  854. data/spec/integration/sync/v1/service_spec.rb +0 -254
  855. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +0 -236
  856. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +0 -159
  857. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +0 -225
  858. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +0 -310
  859. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +0 -96
  860. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +0 -81
  861. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +0 -108
  862. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +0 -146
  863. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +0 -294
  864. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +0 -326
  865. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +0 -194
  866. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +0 -188
  867. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +0 -92
  868. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +0 -89
  869. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +0 -70
  870. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +0 -116
  871. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +0 -294
  872. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +0 -97
  873. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +0 -57
  874. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +0 -71
  875. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +0 -272
  876. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +0 -94
  877. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +0 -72
  878. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +0 -105
  879. data/spec/integration/taskrouter/v1/workspace_spec.rb +0 -295
  880. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +0 -192
  881. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +0 -192
  882. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +0 -252
  883. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +0 -267
  884. data/spec/integration/trunking/v1/trunk_spec.rb +0 -362
  885. data/spec/integration/verify/v1/service/verification_check_spec.rb +0 -52
  886. data/spec/integration/verify/v1/service/verification_spec.rb +0 -61
  887. data/spec/integration/verify/v1/service_spec.rb +0 -227
  888. data/spec/integration/video/v1/composition_hook_spec.rb +0 -410
  889. data/spec/integration/video/v1/composition_settings_spec.rb +0 -86
  890. data/spec/integration/video/v1/composition_spec.rb +0 -325
  891. data/spec/integration/video/v1/recording_settings_spec.rb +0 -86
  892. data/spec/integration/video/v1/recording_spec.rb +0 -179
  893. data/spec/integration/video/v1/room/recording_spec.rb +0 -188
  894. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +0 -96
  895. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +0 -134
  896. data/spec/integration/video/v1/room/room_participant_spec.rb +0 -187
  897. data/spec/integration/video/v1/room_spec.rb +0 -257
  898. data/spec/integration/voice/v1/voice_permission/bulk_country_update_spec.rb +0 -45
  899. data/spec/integration/voice/v1/voice_permission/country/highrisk_special_prefix_spec.rb +0 -61
  900. data/spec/integration/voice/v1/voice_permission/country_spec.rb +0 -112
  901. data/spec/integration/voice/v1/voice_permission_spec.rb +0 -12
  902. data/spec/integration/wireless/v1/command_spec.rb +0 -289
  903. data/spec/integration/wireless/v1/rate_plan_spec.rb +0 -270
  904. data/spec/integration/wireless/v1/sim/data_session_spec.rb +0 -87
  905. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +0 -67
  906. data/spec/integration/wireless/v1/sim_spec.rb +0 -242
  907. data/spec/jwt/access_token_spec.rb +0 -151
  908. data/spec/jwt/client_capability_spec.rb +0 -104
  909. data/spec/jwt/task_router_spec.rb +0 -172
  910. data/spec/rack/twilio_webhook_authentication_spec.rb +0 -106
  911. data/spec/rest/client_spec.rb +0 -61
  912. data/spec/security/request_validator_spec.rb +0 -86
  913. data/spec/spec_helper.rb +0 -38
  914. data/spec/support/fakeweb.rb +0 -2
  915. data/spec/twilio_spec.rb +0 -15
  916. data/spec/twiml/messaging_response_spec.rb +0 -235
  917. data/spec/twiml/voice_response_spec.rb +0 -847
  918. data/spec/util/configuration_spec.rb +0 -15
  919. data/spec/util/url_encode_spec.rb +0 -12
  920. /data/lib/twilio-ruby/framework/{helper.rb → rest/helper.rb} +0 -0
  921. /data/lib/twilio-ruby/framework/{obsolete_client.rb → rest/obsolete_client.rb} +0 -0
  922. /data/lib/twilio-ruby/framework/{page.rb → rest/page.rb} +0 -0
  923. /data/lib/twilio-ruby/framework/{resource.rb → rest/resource.rb} +0 -0
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -63,29 +63,30 @@ module Twilio
63
63
  ##
64
64
  # Initialize the NumberContext
65
65
  # @param [Version] version Version that contains the resource
66
- # @param [String] destination_number This fetches the origin-based voice pricing
67
- # information for a phone number
66
+ # @param [String] destination_number The destination phone number, in
67
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
68
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
69
+ # followed by the country code and subscriber number.
68
70
  # @return [NumberContext] NumberContext
69
71
  def initialize(version, destination_number)
70
72
  super(version)
71
73
 
72
74
  # Path Solution
73
75
  @solution = {destination_number: destination_number, }
74
- @uri = "/Voice/Numbers/#{@solution[:destination_number]}"
76
+ @uri = "/Voice/Numbers/#{CGI.escape(@solution[:destination_number]).gsub("+", "%20")}"
75
77
  end
76
78
 
77
79
  ##
78
- # Fetch a NumberInstance
79
- # @param [String] origination_number The origination_number
80
+ # Fetch the NumberInstance
81
+ # @param [String] origination_number The origination phone number, in
82
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
83
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
84
+ # followed by the country code and subscriber number.
80
85
  # @return [NumberInstance] Fetched NumberInstance
81
86
  def fetch(origination_number: :unset)
82
87
  params = Twilio::Values.of({'OriginationNumber' => origination_number, })
83
88
 
84
- payload = @version.fetch(
85
- 'GET',
86
- @uri,
87
- params,
88
- )
89
+ payload = @version.fetch('GET', @uri, params: params)
89
90
 
90
91
  NumberInstance.new(@version, payload, destination_number: @solution[:destination_number], )
91
92
  end
@@ -96,6 +97,13 @@ module Twilio
96
97
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
97
98
  "#<Twilio.Pricing.V2.NumberContext #{context}>"
98
99
  end
100
+
101
+ ##
102
+ # Provide a detailed, user friendly representation
103
+ def inspect
104
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
105
+ "#<Twilio.Pricing.V2.NumberContext #{context}>"
106
+ end
99
107
  end
100
108
 
101
109
  class NumberInstance < InstanceResource
@@ -103,8 +111,10 @@ module Twilio
103
111
  # Initialize the NumberInstance
104
112
  # @param [Version] version Version that contains the resource
105
113
  # @param [Hash] payload payload that contains response from Twilio
106
- # @param [String] destination_number This fetches the origin-based voice pricing
107
- # information for a phone number
114
+ # @param [String] destination_number The destination phone number, in
115
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
116
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
117
+ # followed by the country code and subscriber number.
108
118
  # @return [NumberInstance] NumberInstance
109
119
  def initialize(version, payload, destination_number: nil)
110
120
  super(version)
@@ -138,19 +148,19 @@ module Twilio
138
148
  end
139
149
 
140
150
  ##
141
- # @return [String] The destination phone number, in E.164
151
+ # @return [String] The destination phone number, in E.164 format
142
152
  def destination_number
143
153
  @properties['destination_number']
144
154
  end
145
155
 
146
156
  ##
147
- # @return [String] The origination phone number, in E.164
157
+ # @return [String] The origination phone number, in E.164 format
148
158
  def origination_number
149
159
  @properties['origination_number']
150
160
  end
151
161
 
152
162
  ##
153
- # @return [String] Name of the country
163
+ # @return [String] The name of the country
154
164
  def country
155
165
  @properties['country']
156
166
  end
@@ -162,32 +172,35 @@ module Twilio
162
172
  end
163
173
 
164
174
  ##
165
- # @return [String] List of OutboundCallPriceWithOrigin records
175
+ # @return [Array[String]] The list of OutboundCallPriceWithOrigin records
166
176
  def outbound_call_prices
167
177
  @properties['outbound_call_prices']
168
178
  end
169
179
 
170
180
  ##
171
- # @return [String] List of InboundCallPrice records
181
+ # @return [String] The InboundCallPrice record
172
182
  def inbound_call_price
173
183
  @properties['inbound_call_price']
174
184
  end
175
185
 
176
186
  ##
177
- # @return [String] The currency in which prices are measured, in ISO 4127 format (e.g. usd, eur, jpy).
187
+ # @return [String] The currency in which prices are measured, in ISO 4127 format (e.g. usd, eur, jpy)
178
188
  def price_unit
179
189
  @properties['price_unit']
180
190
  end
181
191
 
182
192
  ##
183
- # @return [String] The URL of this resource.
193
+ # @return [String] The absolute URL of the resource
184
194
  def url
185
195
  @properties['url']
186
196
  end
187
197
 
188
198
  ##
189
- # Fetch a NumberInstance
190
- # @param [String] origination_number The origination_number
199
+ # Fetch the NumberInstance
200
+ # @param [String] origination_number The origination phone number, in
201
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
202
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
203
+ # followed by the country code and subscriber number.
191
204
  # @return [NumberInstance] Fetched NumberInstance
192
205
  def fetch(origination_number: :unset)
193
206
  context.fetch(origination_number: origination_number, )
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -28,8 +28,9 @@ module Twilio
28
28
 
29
29
  ##
30
30
  # Access the countries
31
- # @param [String] iso_country This fetches the origin-based voice pricing
32
- # information for a specific country
31
+ # @param [String] iso_country The {ISO country
32
+ # code}[https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2] of the origin-based
33
+ # voice pricing information to fetch.
33
34
  # @return [CountryList]
34
35
  # @return [CountryContext] if iso_country was passed.
35
36
  def countries(iso_country=:unset)
@@ -44,8 +45,10 @@ module Twilio
44
45
 
45
46
  ##
46
47
  # Access the numbers
47
- # @param [String] destination_number This fetches the origin-based voice pricing
48
- # information for a phone number
48
+ # @param [String] destination_number The destination phone number, in
49
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
50
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
51
+ # followed by the country code and subscriber number.
49
52
  # @return [NumberList]
50
53
  # @return [NumberContext] if destination_number was passed.
51
54
  def numbers(destination_number=:unset)
@@ -108,19 +111,19 @@ module Twilio
108
111
  end
109
112
 
110
113
  ##
111
- # @return [String] The name
114
+ # @return [String] The resource name
112
115
  def name
113
116
  @properties['name']
114
117
  end
115
118
 
116
119
  ##
117
- # @return [String] The url
120
+ # @return [String] The absolute URL of the resource
118
121
  def url
119
122
  @properties['url']
120
123
  end
121
124
 
122
125
  ##
123
- # @return [String] The links
126
+ # @return [String] The URLs of the related Countries and Numbers resources
124
127
  def links
125
128
  @properties['links']
126
129
  end
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -15,9 +15,46 @@ module Twilio
15
15
  def initialize(domain)
16
16
  super
17
17
  @version = 'v2'
18
+ @countries = nil
19
+ @numbers = nil
18
20
  @voice = nil
19
21
  end
20
22
 
23
+ ##
24
+ # @param [String] iso_country The {ISO country
25
+ # code}[https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2] of the origin-based
26
+ # voice pricing information to fetch.
27
+ # @return [Twilio::REST::Pricing::V2::CountryContext] if iso_country was passed.
28
+ # @return [Twilio::REST::Pricing::V2::CountryList]
29
+ def countries(iso_country=:unset)
30
+ if iso_country.nil?
31
+ raise ArgumentError, 'iso_country cannot be nil'
32
+ end
33
+ if iso_country == :unset
34
+ @countries ||= CountryList.new self
35
+ else
36
+ CountryContext.new(self, iso_country)
37
+ end
38
+ end
39
+
40
+ ##
41
+ # @param [String] destination_number The destination phone number, in
42
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, for which to
43
+ # fetch the origin-based voice pricing information. E.164 format consists of a +
44
+ # followed by the country code and subscriber number.
45
+ # @return [Twilio::REST::Pricing::V2::NumberContext] if destination_number was passed.
46
+ # @return [Twilio::REST::Pricing::V2::NumberList]
47
+ def numbers(destination_number=:unset)
48
+ if destination_number.nil?
49
+ raise ArgumentError, 'destination_number cannot be nil'
50
+ end
51
+ if destination_number == :unset
52
+ @numbers ||= NumberList.new self
53
+ else
54
+ NumberContext.new(self, destination_number)
55
+ end
56
+ end
57
+
21
58
  ##
22
59
  # @return [Twilio::REST::Pricing::V2::VoiceContext]
23
60
  def voice
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -53,6 +53,25 @@ module Twilio
53
53
  self.v2.voice()
54
54
  end
55
55
 
56
+ ##
57
+ # @param [String] iso_country The {ISO country
58
+ # code}[https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2].
59
+ # @return [Twilio::REST::Pricing::V2::CountryInstance] if iso_country was passed.
60
+ # @return [Twilio::REST::Pricing::V2::CountryList]
61
+ def countries(iso_country=:unset)
62
+ self.v2.countries(iso_country)
63
+ end
64
+
65
+ ##
66
+ # @param [String] destination_number The destination phone number in
67
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format, which consists
68
+ # of a + followed by the country code and subscriber number.
69
+ # @return [Twilio::REST::Pricing::V2::NumberInstance] if destination_number was passed.
70
+ # @return [Twilio::REST::Pricing::V2::NumberList]
71
+ def numbers(destination_number=:unset)
72
+ self.v2.numbers(destination_number)
73
+ end
74
+
56
75
  ##
57
76
  # Provide a user friendly representation
58
77
  def to_s
@@ -3,7 +3,7 @@
3
3
  # \ / _ _ _| _ _
4
4
  # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
5
  # / /
6
- #
6
+ #
7
7
  # frozen_string_literal: true
8
8
 
9
9
  module Twilio
@@ -17,8 +17,8 @@ module Twilio
17
17
  ##
18
18
  # Initialize the PhoneNumberList
19
19
  # @param [Version] version Version that contains the resource
20
- # @param [String] service_sid The unique SID identifier of the parent
21
- # [Service](https://www.twilio.com/docs/proxy/api/service).
20
+ # @param [String] service_sid The SID of the PhoneNumber resource's parent
21
+ # {Service}[https://www.twilio.com/docs/proxy/api/service] resource.
22
22
  # @return [PhoneNumberList] PhoneNumberList
23
23
  def initialize(version, service_sid: nil)
24
24
  super(version)
@@ -29,26 +29,24 @@ module Twilio
29
29
  end
30
30
 
31
31
  ##
32
- # Retrieve a single page of PhoneNumberInstance records from the API.
33
- # Request is executed immediately.
34
- # @param [String] sid A Twilio
35
- # [IncomingPhoneNumber](https://www.twilio.com/docs/phone-numbers/api/incoming-phone-numbers) Sid that represents the Twilio Number you would like to assign to your Proxy Service (e.g. `PN1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d`).
36
- # @param [String] phone_number A string that represents the Twilio Number you
37
- # would like to assign to your Proxy Service. Provide number in
38
- # [E.164](https://en.wikipedia.org/wiki/E.164) format (e.g. `+16175551212`).
39
- # @param [Boolean] is_reserved Whether or not the number should be excluded from
40
- # being assigned to a participant using proxy pool logic. See [Reserved Phone
41
- # Numbers](https://www.twilio.com/docs/proxy/reserved-phone-numbers) for more
32
+ # Create the PhoneNumberInstance
33
+ # @param [String] sid The SID of a Twilio
34
+ # {IncomingPhoneNumber}[https://www.twilio.com/docs/phone-numbers/api/incomingphonenumber-resource]
35
+ # resource that represents the Twilio Number you would like to assign to your
36
+ # Proxy Service.
37
+ # @param [String] phone_number The phone number in
38
+ # {E.164}[https://www.twilio.com/docs/glossary/what-e164] format. E.164 phone
39
+ # numbers consist of a + followed by the country code and subscriber number
40
+ # without punctuation characters. For example, +14155551234.
41
+ # @param [Boolean] is_reserved Whether the new phone number should be reserved and
42
+ # not be assigned to a participant using proxy pool logic. See {Reserved Phone
43
+ # Numbers}[https://www.twilio.com/docs/proxy/reserved-phone-numbers] for more
42
44
  # information.
43
- # @return [PhoneNumberInstance] Newly created PhoneNumberInstance
45
+ # @return [PhoneNumberInstance] Created PhoneNumberInstance
44
46
  def create(sid: :unset, phone_number: :unset, is_reserved: :unset)
45
47
  data = Twilio::Values.of({'Sid' => sid, 'PhoneNumber' => phone_number, 'IsReserved' => is_reserved, })
46
48
 
47
- payload = @version.create(
48
- 'POST',
49
- @uri,
50
- data: data
51
- )
49
+ payload = @version.create('POST', @uri, data: data)
52
50
 
53
51
  PhoneNumberInstance.new(@version, payload, service_sid: @solution[:service_sid], )
54
52
  end
@@ -114,11 +112,9 @@ module Twilio
114
112
  'Page' => page_number,
115
113
  'PageSize' => page_size,
116
114
  })
117
- response = @version.page(
118
- 'GET',
119
- @uri,
120
- params
121
- )
115
+
116
+ response = @version.page('GET', @uri, params: params)
117
+
122
118
  PhoneNumberPage.new(@version, response, @solution)
123
119
  end
124
120
 
@@ -179,10 +175,11 @@ module Twilio
179
175
  ##
180
176
  # Initialize the PhoneNumberContext
181
177
  # @param [Version] version Version that contains the resource
182
- # @param [String] service_sid The unique SID identifier of the parent
183
- # [Service](https://www.twilio.com/docs/proxy/api/service).
184
- # @param [String] sid A 34 character string that uniquely identifies the Phone
185
- # Number to fetch (e.g. `PN1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d`).
178
+ # @param [String] service_sid The SID of the parent
179
+ # {Service}[https://www.twilio.com/docs/proxy/api/service] of the PhoneNumber
180
+ # resource to fetch.
181
+ # @param [String] sid The Twilio-provided string that uniquely identifies the
182
+ # PhoneNumber resource to fetch.
186
183
  # @return [PhoneNumberContext] PhoneNumberContext
187
184
  def initialize(version, service_sid, sid)
188
185
  super(version)
@@ -193,23 +190,17 @@ module Twilio
193
190
  end
194
191
 
195
192
  ##
196
- # Deletes the PhoneNumberInstance
197
- # @return [Boolean] true if delete succeeds, true otherwise
193
+ # Delete the PhoneNumberInstance
194
+ # @return [Boolean] true if delete succeeds, false otherwise
198
195
  def delete
199
- @version.delete('delete', @uri)
196
+ @version.delete('DELETE', @uri)
200
197
  end
201
198
 
202
199
  ##
203
- # Fetch a PhoneNumberInstance
200
+ # Fetch the PhoneNumberInstance
204
201
  # @return [PhoneNumberInstance] Fetched PhoneNumberInstance
205
202
  def fetch
206
- params = Twilio::Values.of({})
207
-
208
- payload = @version.fetch(
209
- 'GET',
210
- @uri,
211
- params,
212
- )
203
+ payload = @version.fetch('GET', @uri)
213
204
 
214
205
  PhoneNumberInstance.new(
215
206
  @version,
@@ -221,19 +212,15 @@ module Twilio
221
212
 
222
213
  ##
223
214
  # Update the PhoneNumberInstance
224
- # @param [Boolean] is_reserved Whether or not the number should be excluded from
225
- # being assigned to a participant using proxy pool logic. See [Reserved Phone
226
- # Numbers](https://www.twilio.com/docs/proxy/reserved-phone-numbers) for more
215
+ # @param [Boolean] is_reserved Whether the phone number should be reserved and not
216
+ # be assigned to a participant using proxy pool logic. See {Reserved Phone
217
+ # Numbers}[https://www.twilio.com/docs/proxy/reserved-phone-numbers] for more
227
218
  # information.
228
219
  # @return [PhoneNumberInstance] Updated PhoneNumberInstance
229
220
  def update(is_reserved: :unset)
230
221
  data = Twilio::Values.of({'IsReserved' => is_reserved, })
231
222
 
232
- payload = @version.update(
233
- 'POST',
234
- @uri,
235
- data: data,
236
- )
223
+ payload = @version.update('POST', @uri, data: data)
237
224
 
238
225
  PhoneNumberInstance.new(
239
226
  @version,
@@ -249,6 +236,13 @@ module Twilio
249
236
  context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
250
237
  "#<Twilio.Proxy.V1.PhoneNumberContext #{context}>"
251
238
  end
239
+
240
+ ##
241
+ # Provide a detailed, user friendly representation
242
+ def inspect
243
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
244
+ "#<Twilio.Proxy.V1.PhoneNumberContext #{context}>"
245
+ end
252
246
  end
253
247
 
254
248
  ##
@@ -258,10 +252,10 @@ module Twilio
258
252
  # Initialize the PhoneNumberInstance
259
253
  # @param [Version] version Version that contains the resource
260
254
  # @param [Hash] payload payload that contains response from Twilio
261
- # @param [String] service_sid The unique SID identifier of the parent
262
- # [Service](https://www.twilio.com/docs/proxy/api/service).
263
- # @param [String] sid A 34 character string that uniquely identifies the Phone
264
- # Number to fetch (e.g. `PN1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d`).
255
+ # @param [String] service_sid The SID of the PhoneNumber resource's parent
256
+ # {Service}[https://www.twilio.com/docs/proxy/api/service] resource.
257
+ # @param [String] sid The Twilio-provided string that uniquely identifies the
258
+ # PhoneNumber resource to fetch.
265
259
  # @return [PhoneNumberInstance] PhoneNumberInstance
266
260
  def initialize(version, payload, service_sid: nil, sid: nil)
267
261
  super(version)
@@ -279,6 +273,7 @@ module Twilio
279
273
  'capabilities' => payload['capabilities'],
280
274
  'url' => payload['url'],
281
275
  'is_reserved' => payload['is_reserved'],
276
+ 'in_use' => payload['in_use'] == nil ? payload['in_use'] : payload['in_use'].to_i,
282
277
  }
283
278
 
284
279
  # Context
@@ -298,80 +293,86 @@ module Twilio
298
293
  end
299
294
 
300
295
  ##
301
- # @return [String] A string that uniquely identifies this Phone Number.
296
+ # @return [String] The unique string that identifies the resource
302
297
  def sid
303
298
  @properties['sid']
304
299
  end
305
300
 
306
301
  ##
307
- # @return [String] Account Sid.
302
+ # @return [String] The SID of the Account that created the resource
308
303
  def account_sid
309
304
  @properties['account_sid']
310
305
  end
311
306
 
312
307
  ##
313
- # @return [String] Service Sid.
308
+ # @return [String] The SID of the PhoneNumber resource's parent Service resource
314
309
  def service_sid
315
310
  @properties['service_sid']
316
311
  end
317
312
 
318
313
  ##
319
- # @return [Time] The date this Phone Number was added to the service
314
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was created
320
315
  def date_created
321
316
  @properties['date_created']
322
317
  end
323
318
 
324
319
  ##
325
- # @return [Time] The date this Phone Number was updated
320
+ # @return [Time] The ISO 8601 date and time in GMT when the resource was last updated
326
321
  def date_updated
327
322
  @properties['date_updated']
328
323
  end
329
324
 
330
325
  ##
331
- # @return [String] The phone number.
326
+ # @return [String] The phone number in E.164 format
332
327
  def phone_number
333
328
  @properties['phone_number']
334
329
  end
335
330
 
336
331
  ##
337
- # @return [String] A human-readable description of this resource.
332
+ # @return [String] The string that you assigned to describe the resource
338
333
  def friendly_name
339
334
  @properties['friendly_name']
340
335
  end
341
336
 
342
337
  ##
343
- # @return [String] ISO Country Code,
338
+ # @return [String] The ISO Country Code
344
339
  def iso_country
345
340
  @properties['iso_country']
346
341
  end
347
342
 
348
343
  ##
349
- # @return [String] A list of capabilities.
344
+ # @return [String] The capabilities of the phone number
350
345
  def capabilities
351
346
  @properties['capabilities']
352
347
  end
353
348
 
354
349
  ##
355
- # @return [String] The URL of this resource.
350
+ # @return [String] The absolute URL of the PhoneNumber resource
356
351
  def url
357
352
  @properties['url']
358
353
  end
359
354
 
360
355
  ##
361
- # @return [Boolean] Reserve for manual assignment to participants only.
356
+ # @return [Boolean] Reserve the phone number for manual assignment to participants only
362
357
  def is_reserved
363
358
  @properties['is_reserved']
364
359
  end
365
360
 
366
361
  ##
367
- # Deletes the PhoneNumberInstance
368
- # @return [Boolean] true if delete succeeds, true otherwise
362
+ # @return [String] The number of open session assigned to the number.
363
+ def in_use
364
+ @properties['in_use']
365
+ end
366
+
367
+ ##
368
+ # Delete the PhoneNumberInstance
369
+ # @return [Boolean] true if delete succeeds, false otherwise
369
370
  def delete
370
371
  context.delete
371
372
  end
372
373
 
373
374
  ##
374
- # Fetch a PhoneNumberInstance
375
+ # Fetch the PhoneNumberInstance
375
376
  # @return [PhoneNumberInstance] Fetched PhoneNumberInstance
376
377
  def fetch
377
378
  context.fetch
@@ -379,9 +380,9 @@ module Twilio
379
380
 
380
381
  ##
381
382
  # Update the PhoneNumberInstance
382
- # @param [Boolean] is_reserved Whether or not the number should be excluded from
383
- # being assigned to a participant using proxy pool logic. See [Reserved Phone
384
- # Numbers](https://www.twilio.com/docs/proxy/reserved-phone-numbers) for more
383
+ # @param [Boolean] is_reserved Whether the phone number should be reserved and not
384
+ # be assigned to a participant using proxy pool logic. See {Reserved Phone
385
+ # Numbers}[https://www.twilio.com/docs/proxy/reserved-phone-numbers] for more
385
386
  # information.
386
387
  # @return [PhoneNumberInstance] Updated PhoneNumberInstance
387
388
  def update(is_reserved: :unset)