twilio-ruby 4.13.0 → 5.0.0.alpha1

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 (643) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +21 -0
  3. data/.rubocop_todo.yml +187 -0
  4. data/.travis.yml +13 -0
  5. data/AUTHORS.md +46 -32
  6. data/CHANGES.md +87 -65
  7. data/Gemfile +2 -2
  8. data/LICENSE.md +12 -12
  9. data/Makefile +13 -3
  10. data/README.md +50 -139
  11. data/Rakefile +54 -0
  12. data/VERSIONS.md +64 -0
  13. data/examples/examples.rb +46 -57
  14. data/examples/{print-call-log.rb → print_call_log.rb} +7 -7
  15. data/lib/rack/twilio_webhook_authentication.rb +5 -6
  16. data/lib/twilio-ruby.rb +30 -102
  17. data/lib/twilio-ruby/framework/domain.rb +34 -0
  18. data/lib/twilio-ruby/framework/error.rb +30 -0
  19. data/lib/twilio-ruby/framework/helper.rb +9 -0
  20. data/lib/twilio-ruby/framework/page.rb +101 -0
  21. data/lib/twilio-ruby/framework/resource.rb +21 -0
  22. data/lib/twilio-ruby/framework/serialize.rb +70 -0
  23. data/lib/twilio-ruby/framework/twilio_response.rb +15 -0
  24. data/lib/twilio-ruby/framework/values.rb +7 -0
  25. data/lib/twilio-ruby/framework/version.rb +164 -0
  26. data/lib/twilio-ruby/http/http_client.rb +46 -0
  27. data/lib/twilio-ruby/jwt/access_token.rb +232 -0
  28. data/lib/twilio-ruby/jwt/client_capability.rb +102 -0
  29. data/lib/twilio-ruby/jwt/jwt.rb +50 -0
  30. data/lib/twilio-ruby/jwt/task_router.rb +174 -0
  31. data/lib/twilio-ruby/rest/accounts.rb +36 -10
  32. data/lib/twilio-ruby/rest/accounts/v1.rb +39 -0
  33. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +105 -0
  34. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +370 -0
  35. data/lib/twilio-ruby/rest/api.rb +234 -0
  36. data/lib/twilio-ruby/rest/api/v2010.rb +147 -0
  37. data/lib/twilio-ruby/rest/api/v2010/account.rb +1098 -0
  38. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +509 -0
  39. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +265 -0
  40. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +620 -0
  41. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +331 -0
  42. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +370 -0
  43. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +389 -0
  44. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +389 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +389 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +799 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +296 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +317 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +427 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +379 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +455 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +515 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +413 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +823 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +431 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +350 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +445 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +445 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +445 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +336 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +583 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +165 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +355 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +153 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +153 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +418 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +377 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +438 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +345 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +479 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +397 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +378 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +375 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +430 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +336 -0
  76. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +174 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +419 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +395 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +570 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +361 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +361 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +424 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +406 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +168 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +366 -0
  86. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +127 -0
  87. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +418 -0
  88. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +304 -0
  89. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +304 -0
  90. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +304 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +304 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +304 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +304 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +304 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +304 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +507 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +161 -0
  98. data/lib/twilio-ruby/rest/chat.rb +59 -0
  99. data/lib/twilio-ruby/rest/chat/v1.rb +56 -0
  100. data/lib/twilio-ruby/rest/chat/v1/credential.rb +403 -0
  101. data/lib/twilio-ruby/rest/chat/v1/service.rb +935 -0
  102. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +554 -0
  103. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +386 -0
  104. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +431 -0
  105. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +447 -0
  106. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +396 -0
  107. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +467 -0
  108. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +244 -0
  109. data/lib/twilio-ruby/rest/chat/v2.rb +56 -0
  110. data/lib/twilio-ruby/rest/chat/v2/credential.rb +403 -0
  111. data/lib/twilio-ruby/rest/chat/v2/service.rb +688 -0
  112. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +554 -0
  113. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +386 -0
  114. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +431 -0
  115. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +447 -0
  116. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +396 -0
  117. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +467 -0
  118. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +244 -0
  119. data/lib/twilio-ruby/rest/client.rb +352 -153
  120. data/lib/twilio-ruby/rest/fax.rb +44 -0
  121. data/lib/twilio-ruby/rest/fax/v1.rb +41 -0
  122. data/lib/twilio-ruby/rest/fax/v1/fax.rb +541 -0
  123. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +326 -0
  124. data/lib/twilio-ruby/rest/ip_messaging.rb +59 -0
  125. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +56 -0
  126. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +403 -0
  127. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +935 -0
  128. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +554 -0
  129. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +386 -0
  130. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +431 -0
  131. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +447 -0
  132. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +396 -0
  133. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +467 -0
  134. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +244 -0
  135. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +56 -0
  136. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +403 -0
  137. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +688 -0
  138. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +554 -0
  139. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +386 -0
  140. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +431 -0
  141. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +447 -0
  142. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +396 -0
  143. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +467 -0
  144. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +244 -0
  145. data/lib/twilio-ruby/rest/lookups.rb +44 -0
  146. data/lib/twilio-ruby/rest/lookups/v1.rb +41 -0
  147. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +224 -0
  148. data/lib/twilio-ruby/rest/messaging.rb +44 -0
  149. data/lib/twilio-ruby/rest/messaging/v1.rb +41 -0
  150. data/lib/twilio-ruby/rest/messaging/v1/service.rb +637 -0
  151. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +352 -0
  152. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +359 -0
  153. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +359 -0
  154. data/lib/twilio-ruby/rest/monitor.rb +52 -0
  155. data/lib/twilio-ruby/rest/monitor/v1.rb +56 -0
  156. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +398 -0
  157. data/lib/twilio-ruby/rest/monitor/v1/event.rb +381 -0
  158. data/lib/twilio-ruby/rest/notify.rb +52 -0
  159. data/lib/twilio-ruby/rest/notify/v1.rb +56 -0
  160. data/lib/twilio-ruby/rest/notify/v1/credential.rb +403 -0
  161. data/lib/twilio-ruby/rest/notify/v1/service.rb +639 -0
  162. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +430 -0
  163. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +288 -0
  164. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +224 -0
  165. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +445 -0
  166. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +254 -0
  167. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +434 -0
  168. data/lib/twilio-ruby/rest/preview.rb +145 -0
  169. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +56 -0
  170. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +203 -0
  171. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +210 -0
  172. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +243 -0
  173. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +42 -0
  174. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +557 -0
  175. data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -0
  176. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +333 -0
  177. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +301 -0
  178. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +440 -0
  179. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +341 -0
  180. data/lib/twilio-ruby/rest/preview/proxy.rb +41 -0
  181. data/lib/twilio-ruby/rest/preview/proxy/service.rb +500 -0
  182. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +359 -0
  183. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +536 -0
  184. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +429 -0
  185. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +506 -0
  186. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +452 -0
  187. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +359 -0
  188. data/lib/twilio-ruby/rest/preview/sync.rb +41 -0
  189. data/lib/twilio-ruby/rest/preview/sync/service.rb +504 -0
  190. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +445 -0
  191. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +395 -0
  192. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +438 -0
  193. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +430 -0
  194. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +395 -0
  195. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +438 -0
  196. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +432 -0
  197. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +395 -0
  198. data/lib/twilio-ruby/rest/preview/wireless.rb +71 -0
  199. data/lib/twilio-ruby/rest/preview/wireless/command.rb +382 -0
  200. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +435 -0
  201. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +544 -0
  202. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +236 -0
  203. data/lib/twilio-ruby/rest/pricing.rb +50 -2
  204. data/lib/twilio-ruby/rest/pricing/v1.rb +65 -0
  205. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +129 -0
  206. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +291 -0
  207. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +129 -0
  208. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +284 -0
  209. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +150 -0
  210. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +291 -0
  211. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +208 -0
  212. data/lib/twilio-ruby/rest/sync.rb +44 -0
  213. data/lib/twilio-ruby/rest/sync/v1.rb +41 -0
  214. data/lib/twilio-ruby/rest/sync/v1/service.rb +504 -0
  215. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +445 -0
  216. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +395 -0
  217. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +438 -0
  218. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +430 -0
  219. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +395 -0
  220. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +438 -0
  221. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +432 -0
  222. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +395 -0
  223. data/lib/twilio-ruby/rest/taskrouter.rb +44 -0
  224. data/lib/twilio-ruby/rest/taskrouter/v1.rb +41 -0
  225. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +712 -0
  226. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +399 -0
  227. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +418 -0
  228. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +584 -0
  229. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +461 -0
  230. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +315 -0
  231. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +527 -0
  232. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +230 -0
  233. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +243 -0
  234. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +585 -0
  235. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +461 -0
  236. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +406 -0
  237. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +223 -0
  238. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +226 -0
  239. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +475 -0
  240. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +230 -0
  241. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +212 -0
  242. data/lib/twilio-ruby/rest/trunking.rb +44 -0
  243. data/lib/twilio-ruby/rest/trunking/v1.rb +41 -0
  244. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +577 -0
  245. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +345 -0
  246. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +345 -0
  247. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +430 -0
  248. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +478 -0
  249. data/lib/twilio-ruby/rest/video.rb +52 -0
  250. data/lib/twilio-ruby/rest/video/v1.rb +56 -0
  251. data/lib/twilio-ruby/rest/video/v1/recording.rb +382 -0
  252. data/lib/twilio-ruby/rest/video/v1/room.rb +485 -0
  253. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +381 -0
  254. data/lib/twilio-ruby/rest/wireless.rb +60 -0
  255. data/lib/twilio-ruby/rest/wireless/v1.rb +71 -0
  256. data/lib/twilio-ruby/rest/wireless/v1/command.rb +367 -0
  257. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +452 -0
  258. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +548 -0
  259. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +235 -0
  260. data/lib/twilio-ruby/{util → security}/request_validator.rb +21 -4
  261. data/lib/twilio-ruby/twiml/messaging_response.rb +141 -0
  262. data/lib/twilio-ruby/twiml/twiml.rb +69 -0
  263. data/lib/twilio-ruby/twiml/voice_response.rb +916 -0
  264. data/lib/twilio-ruby/util.rb +1 -1
  265. data/lib/twilio-ruby/version.rb +1 -1
  266. data/spec/framework/serialize_spec.rb +59 -0
  267. data/spec/holodeck/holodeck.rb +61 -0
  268. data/spec/holodeck/hologram.rb +4 -0
  269. data/spec/integration/accounts/v1/credential/public_key_spec.rb +226 -0
  270. data/spec/integration/accounts/v1/credential_spec.rb +10 -0
  271. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +90 -0
  272. data/spec/integration/api/v2010/account/address_spec.rb +267 -0
  273. data/spec/integration/api/v2010/account/application_spec.rb +286 -0
  274. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +137 -0
  275. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +101 -0
  276. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +100 -0
  277. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +100 -0
  278. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +128 -0
  279. data/spec/integration/api/v2010/account/call/feedback_spec.rb +141 -0
  280. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +149 -0
  281. data/spec/integration/api/v2010/account/call/notification_spec.rb +179 -0
  282. data/spec/integration/api/v2010/account/call/recording_spec.rb +178 -0
  283. data/spec/integration/api/v2010/account/call_spec.rb +319 -0
  284. data/spec/integration/api/v2010/account/conference/participant_spec.rb +283 -0
  285. data/spec/integration/api/v2010/account/conference_spec.rb +174 -0
  286. data/spec/integration/api/v2010/account/connect_app_spec.rb +177 -0
  287. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +135 -0
  288. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +223 -0
  289. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +181 -0
  290. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +181 -0
  291. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +181 -0
  292. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +331 -0
  293. data/spec/integration/api/v2010/account/key_spec.rb +178 -0
  294. data/spec/integration/api/v2010/account/message/feedback_spec.rb +48 -0
  295. data/spec/integration/api/v2010/account/message/media_spec.rb +162 -0
  296. data/spec/integration/api/v2010/account/message_spec.rb +297 -0
  297. data/spec/integration/api/v2010/account/new_key_spec.rb +45 -0
  298. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +45 -0
  299. data/spec/integration/api/v2010/account/notification_spec.rb +172 -0
  300. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +193 -0
  301. data/spec/integration/api/v2010/account/queue/member_spec.rb +170 -0
  302. data/spec/integration/api/v2010/account/queue_spec.rb +242 -0
  303. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +175 -0
  304. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +166 -0
  305. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +174 -0
  306. data/spec/integration/api/v2010/account/recording_spec.rb +179 -0
  307. data/spec/integration/api/v2010/account/short_code_spec.rb +180 -0
  308. data/spec/integration/api/v2010/account/signing_key_spec.rb +178 -0
  309. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +257 -0
  310. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +246 -0
  311. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +210 -0
  312. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +220 -0
  313. data/spec/integration/api/v2010/account/sip/domain_spec.rb +283 -0
  314. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +261 -0
  315. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +256 -0
  316. data/spec/integration/api/v2010/account/sip_spec.rb +10 -0
  317. data/spec/integration/api/v2010/account/token_spec.rb +56 -0
  318. data/spec/integration/api/v2010/account/transcription_spec.rb +167 -0
  319. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +111 -0
  320. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +111 -0
  321. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +111 -0
  322. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +111 -0
  323. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +111 -0
  324. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +111 -0
  325. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +111 -0
  326. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +111 -0
  327. data/spec/integration/api/v2010/account/usage/record_spec.rb +108 -0
  328. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +283 -0
  329. data/spec/integration/api/v2010/account/usage_spec.rb +10 -0
  330. data/spec/integration/api/v2010/account/validation_request_spec.rb +48 -0
  331. data/spec/integration/api/v2010/account_spec.rb +254 -0
  332. data/spec/integration/chat/v1/credential_spec.rb +223 -0
  333. data/spec/integration/chat/v1/service/channel/invite_spec.rb +210 -0
  334. data/spec/integration/chat/v1/service/channel/member_spec.rb +284 -0
  335. data/spec/integration/chat/v1/service/channel/message_spec.rb +294 -0
  336. data/spec/integration/chat/v1/service/channel_spec.rb +275 -0
  337. data/spec/integration/chat/v1/service/role_spec.rb +263 -0
  338. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +92 -0
  339. data/spec/integration/chat/v1/service/user_spec.rb +266 -0
  340. data/spec/integration/chat/v1/service_spec.rb +299 -0
  341. data/spec/integration/chat/v2/credential_spec.rb +223 -0
  342. data/spec/integration/chat/v2/service/channel/invite_spec.rb +210 -0
  343. data/spec/integration/chat/v2/service/channel/member_spec.rb +284 -0
  344. data/spec/integration/chat/v2/service/channel/message_spec.rb +294 -0
  345. data/spec/integration/chat/v2/service/channel_spec.rb +275 -0
  346. data/spec/integration/chat/v2/service/role_spec.rb +263 -0
  347. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +92 -0
  348. data/spec/integration/chat/v2/service/user_spec.rb +266 -0
  349. data/spec/integration/chat/v2/service_spec.rb +325 -0
  350. data/spec/integration/fax/v1/fax/fax_media_spec.rb +126 -0
  351. data/spec/integration/fax/v1/fax_spec.rb +272 -0
  352. data/spec/integration/ip_messaging/v1/credential_spec.rb +223 -0
  353. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +210 -0
  354. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +284 -0
  355. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +294 -0
  356. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +275 -0
  357. data/spec/integration/ip_messaging/v1/service/role_spec.rb +263 -0
  358. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +92 -0
  359. data/spec/integration/ip_messaging/v1/service/user_spec.rb +266 -0
  360. data/spec/integration/ip_messaging/v1/service_spec.rb +299 -0
  361. data/spec/integration/ip_messaging/v2/credential_spec.rb +223 -0
  362. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +210 -0
  363. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +284 -0
  364. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +294 -0
  365. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +275 -0
  366. data/spec/integration/ip_messaging/v2/service/role_spec.rb +263 -0
  367. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +92 -0
  368. data/spec/integration/ip_messaging/v2/service/user_spec.rb +266 -0
  369. data/spec/integration/ip_messaging/v2/service_spec.rb +325 -0
  370. data/spec/integration/lookups/v1/phone_number_spec.rb +60 -0
  371. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +170 -0
  372. data/spec/integration/messaging/v1/service/phone_number_spec.rb +201 -0
  373. data/spec/integration/messaging/v1/service/short_code_spec.rb +173 -0
  374. data/spec/integration/messaging/v1/service_spec.rb +263 -0
  375. data/spec/integration/monitor/v1/alert_spec.rb +161 -0
  376. data/spec/integration/monitor/v1/event_spec.rb +148 -0
  377. data/spec/integration/notify/v1/credential_spec.rb +223 -0
  378. data/spec/integration/notify/v1/service/binding_spec.rb +227 -0
  379. data/spec/integration/notify/v1/service/notification_spec.rb +97 -0
  380. data/spec/integration/notify/v1/service/segment_spec.rb +84 -0
  381. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +118 -0
  382. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +269 -0
  383. data/spec/integration/notify/v1/service/user_spec.rb +213 -0
  384. data/spec/integration/notify/v1/service_spec.rb +280 -0
  385. data/spec/integration/preview/bulk_exports/export/day_spec.rb +56 -0
  386. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +79 -0
  387. data/spec/integration/preview/bulk_exports/export_spec.rb +43 -0
  388. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +280 -0
  389. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +121 -0
  390. data/spec/integration/preview/marketplace/available_add_on_spec.rb +142 -0
  391. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +164 -0
  392. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +252 -0
  393. data/spec/integration/preview/proxy/service/phone_number_spec.rb +173 -0
  394. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +104 -0
  395. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +164 -0
  396. data/spec/integration/preview/proxy/service/session/participant_spec.rb +226 -0
  397. data/spec/integration/preview/proxy/service/session_spec.rb +216 -0
  398. data/spec/integration/preview/proxy/service/short_code_spec.rb +173 -0
  399. data/spec/integration/preview/proxy/service_spec.rb +200 -0
  400. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +206 -0
  401. data/spec/integration/preview/sync/service/document_spec.rb +254 -0
  402. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +256 -0
  403. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +206 -0
  404. data/spec/integration/preview/sync/service/sync_list_spec.rb +207 -0
  405. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +257 -0
  406. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +206 -0
  407. data/spec/integration/preview/sync/service/sync_map_spec.rb +207 -0
  408. data/spec/integration/preview/sync/service_spec.rb +244 -0
  409. data/spec/integration/preview/wireless/command_spec.rb +169 -0
  410. data/spec/integration/preview/wireless/rate_plan_spec.rb +260 -0
  411. data/spec/integration/preview/wireless/sim/usage_spec.rb +49 -0
  412. data/spec/integration/preview/wireless/sim_spec.rb +208 -0
  413. data/spec/integration/pricing/v1/messaging/country_spec.rb +137 -0
  414. data/spec/integration/pricing/v1/messaging_spec.rb +10 -0
  415. data/spec/integration/pricing/v1/phone_number/country_spec.rb +128 -0
  416. data/spec/integration/pricing/v1/phone_number_spec.rb +10 -0
  417. data/spec/integration/pricing/v1/voice/country_spec.rb +266 -0
  418. data/spec/integration/pricing/v1/voice/number_spec.rb +54 -0
  419. data/spec/integration/pricing/v1/voice_spec.rb +10 -0
  420. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +206 -0
  421. data/spec/integration/sync/v1/service/document_spec.rb +254 -0
  422. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +256 -0
  423. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +206 -0
  424. data/spec/integration/sync/v1/service/sync_list_spec.rb +207 -0
  425. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +257 -0
  426. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +206 -0
  427. data/spec/integration/sync/v1/service/sync_map_spec.rb +207 -0
  428. data/spec/integration/sync/v1/service_spec.rb +244 -0
  429. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +236 -0
  430. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +157 -0
  431. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +192 -0
  432. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +127 -0
  433. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +106 -0
  434. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +144 -0
  435. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +292 -0
  436. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +324 -0
  437. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +192 -0
  438. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +201 -0
  439. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +107 -0
  440. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +141 -0
  441. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +282 -0
  442. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +69 -0
  443. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +265 -0
  444. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +103 -0
  445. data/spec/integration/taskrouter/v1/workspace_spec.rb +287 -0
  446. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +192 -0
  447. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +192 -0
  448. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +250 -0
  449. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +267 -0
  450. data/spec/integration/trunking/v1/trunk_spec.rb +276 -0
  451. data/spec/integration/video/v1/recording_spec.rb +165 -0
  452. data/spec/integration/video/v1/room/recording_spec.rb +146 -0
  453. data/spec/integration/video/v1/room_spec.rb +237 -0
  454. data/spec/integration/wireless/v1/command_spec.rb +166 -0
  455. data/spec/integration/wireless/v1/rate_plan_spec.rb +268 -0
  456. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +65 -0
  457. data/spec/integration/wireless/v1/sim_spec.rb +208 -0
  458. data/spec/jwt/access_token_spec.rb +130 -0
  459. data/spec/jwt/client_capability_spec.rb +104 -0
  460. data/spec/jwt/task_router_spec.rb +172 -0
  461. data/spec/rack/twilio_webhook_authentication_spec.rb +19 -23
  462. data/spec/{util → security}/request_validator_spec.rb +5 -5
  463. data/spec/spec_helper.rb +18 -1
  464. data/spec/support/fakeweb.rb +1 -1
  465. data/spec/twiml/messaging_response_spec.rb +90 -0
  466. data/spec/twiml/voice_response_spec.rb +474 -0
  467. data/twilio-ruby.gemspec +13 -8
  468. metadata +708 -251
  469. data/docs/Makefile +0 -130
  470. data/docs/_themes/LICENSE +0 -45
  471. data/docs/_themes/README.rst +0 -25
  472. data/docs/_themes/flask_theme_support.py +0 -86
  473. data/docs/_themes/kr/layout.html +0 -32
  474. data/docs/_themes/kr/relations.html +0 -19
  475. data/docs/_themes/kr/static/flasky.css_t +0 -469
  476. data/docs/_themes/kr/static/small_flask.css +0 -70
  477. data/docs/_themes/kr/theme.conf +0 -7
  478. data/docs/_themes/kr_small/layout.html +0 -22
  479. data/docs/_themes/kr_small/static/flasky.css_t +0 -287
  480. data/docs/_themes/kr_small/theme.conf +0 -10
  481. data/docs/changelog.rst +0 -1
  482. data/docs/conf.py +0 -266
  483. data/docs/faq.rst +0 -42
  484. data/docs/getting-started.rst +0 -117
  485. data/docs/index.rst +0 -135
  486. data/docs/make.bat +0 -170
  487. data/docs/src/pip-delete-this-directory.txt +0 -5
  488. data/docs/usage/accounts.rst +0 -89
  489. data/docs/usage/addresses.rst +0 -101
  490. data/docs/usage/applications.rst +0 -108
  491. data/docs/usage/basics.rst +0 -115
  492. data/docs/usage/caller-ids.rst +0 -47
  493. data/docs/usage/conferences.rst +0 -108
  494. data/docs/usage/errors.rst +0 -29
  495. data/docs/usage/lookups.rst +0 -62
  496. data/docs/usage/messages.rst +0 -137
  497. data/docs/usage/notifications.rst +0 -72
  498. data/docs/usage/phone-calls.rst +0 -185
  499. data/docs/usage/phone-numbers.rst +0 -189
  500. data/docs/usage/pricing.rst +0 -169
  501. data/docs/usage/queues.rst +0 -112
  502. data/docs/usage/recordings.rst +0 -98
  503. data/docs/usage/sip.rst +0 -104
  504. data/docs/usage/taskrouter-tokens.rst +0 -98
  505. data/docs/usage/taskrouter.rst +0 -440
  506. data/docs/usage/token-generation.rst +0 -115
  507. data/docs/usage/transcriptions.rst +0 -32
  508. data/docs/usage/twiml.rst +0 -69
  509. data/docs/usage/validation.rst +0 -107
  510. data/examples/taskrouter.examples.rb +0 -86
  511. data/issue_template.md +0 -25
  512. data/lib/twilio-ruby/rest/addresses.rb +0 -12
  513. data/lib/twilio-ruby/rest/addresses/dependent_phone_numbers.rb +0 -6
  514. data/lib/twilio-ruby/rest/applications.rb +0 -6
  515. data/lib/twilio-ruby/rest/authorized_connect_apps.rb +0 -6
  516. data/lib/twilio-ruby/rest/available_phone_numbers.rb +0 -13
  517. data/lib/twilio-ruby/rest/available_phone_numbers/country.rb +0 -10
  518. data/lib/twilio-ruby/rest/available_phone_numbers/local.rb +0 -11
  519. data/lib/twilio-ruby/rest/available_phone_numbers/mobile.rb +0 -11
  520. data/lib/twilio-ruby/rest/available_phone_numbers/toll_free.rb +0 -11
  521. data/lib/twilio-ruby/rest/base_client.rb +0 -131
  522. data/lib/twilio-ruby/rest/call_feedback.rb +0 -28
  523. data/lib/twilio-ruby/rest/call_feedback_summary.rb +0 -13
  524. data/lib/twilio-ruby/rest/calls.rb +0 -33
  525. data/lib/twilio-ruby/rest/conferences.rb +0 -12
  526. data/lib/twilio-ruby/rest/conferences/participants.rb +0 -23
  527. data/lib/twilio-ruby/rest/connect_apps.rb +0 -6
  528. data/lib/twilio-ruby/rest/errors.rb +0 -14
  529. data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +0 -17
  530. data/lib/twilio-ruby/rest/incoming_phone_numbers/local.rb +0 -13
  531. data/lib/twilio-ruby/rest/incoming_phone_numbers/mobile.rb +0 -13
  532. data/lib/twilio-ruby/rest/incoming_phone_numbers/toll_free.rb +0 -13
  533. data/lib/twilio-ruby/rest/instance_resource.rb +0 -87
  534. data/lib/twilio-ruby/rest/ip-messaging/channels.rb +0 -15
  535. data/lib/twilio-ruby/rest/ip-messaging/credentials.rb +0 -19
  536. data/lib/twilio-ruby/rest/ip-messaging/members.rb +0 -8
  537. data/lib/twilio-ruby/rest/ip-messaging/messages.rb +0 -8
  538. data/lib/twilio-ruby/rest/ip-messaging/roles.rb +0 -8
  539. data/lib/twilio-ruby/rest/ip-messaging/services.rb +0 -17
  540. data/lib/twilio-ruby/rest/ip-messaging/users.rb +0 -8
  541. data/lib/twilio-ruby/rest/ip_messaging_client.rb +0 -100
  542. data/lib/twilio-ruby/rest/keys.rb +0 -6
  543. data/lib/twilio-ruby/rest/list_resource.rb +0 -100
  544. data/lib/twilio-ruby/rest/lookups/phone_numbers.rb +0 -17
  545. data/lib/twilio-ruby/rest/lookups_client.rb +0 -99
  546. data/lib/twilio-ruby/rest/media.rb +0 -14
  547. data/lib/twilio-ruby/rest/messages.rb +0 -22
  548. data/lib/twilio-ruby/rest/monitor/alerts.rb +0 -8
  549. data/lib/twilio-ruby/rest/monitor/events.rb +0 -8
  550. data/lib/twilio-ruby/rest/monitor_client.rb +0 -101
  551. data/lib/twilio-ruby/rest/next_gen_list_resource.rb +0 -36
  552. data/lib/twilio-ruby/rest/notifications.rb +0 -6
  553. data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +0 -25
  554. data/lib/twilio-ruby/rest/pricing/countries.rb +0 -21
  555. data/lib/twilio-ruby/rest/pricing/messaging.rb +0 -15
  556. data/lib/twilio-ruby/rest/pricing/phone_numbers.rb +0 -14
  557. data/lib/twilio-ruby/rest/pricing/voice.rb +0 -15
  558. data/lib/twilio-ruby/rest/pricing/voice/numbers.rb +0 -19
  559. data/lib/twilio-ruby/rest/pricing_client.rb +0 -108
  560. data/lib/twilio-ruby/rest/queues.rb +0 -12
  561. data/lib/twilio-ruby/rest/queues/members.rb +0 -29
  562. data/lib/twilio-ruby/rest/recordings.rb +0 -35
  563. data/lib/twilio-ruby/rest/sandbox.rb +0 -5
  564. data/lib/twilio-ruby/rest/sip.rb +0 -10
  565. data/lib/twilio-ruby/rest/sip/credential_lists.rb +0 -11
  566. data/lib/twilio-ruby/rest/sip/credential_lists/credentials.rb +0 -6
  567. data/lib/twilio-ruby/rest/sip/domains.rb +0 -12
  568. data/lib/twilio-ruby/rest/sip/domains/credential_list_mappings.rb +0 -6
  569. data/lib/twilio-ruby/rest/sip/domains/ip_access_control_list_mappings.rb +0 -6
  570. data/lib/twilio-ruby/rest/sip/ip_access_control_lists.rb +0 -11
  571. data/lib/twilio-ruby/rest/sip/ip_access_control_lists/ip_addresses.rb +0 -6
  572. data/lib/twilio-ruby/rest/sms.rb +0 -11
  573. data/lib/twilio-ruby/rest/sms/messages.rb +0 -38
  574. data/lib/twilio-ruby/rest/sms/short_codes.rb +0 -8
  575. data/lib/twilio-ruby/rest/task_router/activities.rb +0 -8
  576. data/lib/twilio-ruby/rest/task_router/events.rb +0 -8
  577. data/lib/twilio-ruby/rest/task_router/reservations.rb +0 -8
  578. data/lib/twilio-ruby/rest/task_router/statistics.rb +0 -26
  579. data/lib/twilio-ruby/rest/task_router/task_queues.rb +0 -17
  580. data/lib/twilio-ruby/rest/task_router/task_queues_statistics.rb +0 -15
  581. data/lib/twilio-ruby/rest/task_router/tasks.rb +0 -15
  582. data/lib/twilio-ruby/rest/task_router/workers.rb +0 -19
  583. data/lib/twilio-ruby/rest/task_router/workers_statistics.rb +0 -8
  584. data/lib/twilio-ruby/rest/task_router/workflow_statistics.rb +0 -7
  585. data/lib/twilio-ruby/rest/task_router/workflows.rb +0 -11
  586. data/lib/twilio-ruby/rest/task_router/workspace_statistics.rb +0 -7
  587. data/lib/twilio-ruby/rest/task_router/workspaces.rb +0 -17
  588. data/lib/twilio-ruby/rest/task_router_client.rb +0 -176
  589. data/lib/twilio-ruby/rest/tokens.rb +0 -7
  590. data/lib/twilio-ruby/rest/transcriptions.rb +0 -6
  591. data/lib/twilio-ruby/rest/trunking/credential_lists.rb +0 -8
  592. data/lib/twilio-ruby/rest/trunking/ip_access_control_lists.rb +0 -8
  593. data/lib/twilio-ruby/rest/trunking/origination_urls.rb +0 -8
  594. data/lib/twilio-ruby/rest/trunking/phone_numbers.rb +0 -8
  595. data/lib/twilio-ruby/rest/trunking/trunks.rb +0 -19
  596. data/lib/twilio-ruby/rest/trunking_client.rb +0 -106
  597. data/lib/twilio-ruby/rest/usage.rb +0 -10
  598. data/lib/twilio-ruby/rest/usage/records.rb +0 -21
  599. data/lib/twilio-ruby/rest/usage/triggers.rb +0 -12
  600. data/lib/twilio-ruby/rest/utils.rb +0 -49
  601. data/lib/twilio-ruby/task_router.rb +0 -0
  602. data/lib/twilio-ruby/task_router/capability.rb +0 -230
  603. data/lib/twilio-ruby/task_router/workflow_builder.rb +0 -135
  604. data/lib/twilio-ruby/twiml/response.rb +0 -16
  605. data/lib/twilio-ruby/util/access_token.rb +0 -158
  606. data/lib/twilio-ruby/util/capability.rb +0 -64
  607. data/lib/twilio-ruby/util/client_config.rb +0 -29
  608. data/spec/rest/account_spec.rb +0 -89
  609. data/spec/rest/address_spec.rb +0 -11
  610. data/spec/rest/call_feedback_spec.rb +0 -12
  611. data/spec/rest/call_feedback_summary_spec.rb +0 -9
  612. data/spec/rest/call_spec.rb +0 -22
  613. data/spec/rest/client_spec.rb +0 -277
  614. data/spec/rest/conference_spec.rb +0 -11
  615. data/spec/rest/instance_resource_spec.rb +0 -15
  616. data/spec/rest/ip-messaging/channel_spec.rb +0 -21
  617. data/spec/rest/ip-messaging/service_spec.rb +0 -30
  618. data/spec/rest/ip_messaging_client_spec.rb +0 -21
  619. data/spec/rest/key_spec.rb +0 -11
  620. data/spec/rest/lookups/phone_number_spec.rb +0 -28
  621. data/spec/rest/message_spec.rb +0 -12
  622. data/spec/rest/monitor_client_spec.rb +0 -17
  623. data/spec/rest/numbers_spec.rb +0 -58
  624. data/spec/rest/pricing_client_spec.rb +0 -60
  625. data/spec/rest/queue_spec.rb +0 -11
  626. data/spec/rest/recording_spec.rb +0 -11
  627. data/spec/rest/sms/message_spec.rb +0 -37
  628. data/spec/rest/sms/messages_spec.rb +0 -31
  629. data/spec/rest/task_router/reservation_spec.rb +0 -14
  630. data/spec/rest/task_router/statistics_spec.rb +0 -37
  631. data/spec/rest/task_router/task_queue_spec.rb +0 -9
  632. data/spec/rest/token_spec.rb +0 -7
  633. data/spec/rest/trunking/trunk_spec.rb +0 -36
  634. data/spec/rest/utils_spec.rb +0 -45
  635. data/spec/task_router/workflow_builder_spec.rb +0 -501
  636. data/spec/task_router_deprecated_spec.rb +0 -139
  637. data/spec/task_router_spec.rb +0 -110
  638. data/spec/task_router_taskqueue_spec.rb +0 -111
  639. data/spec/task_router_worker_spec.rb +0 -146
  640. data/spec/task_router_workspace_spec.rb +0 -110
  641. data/spec/util/access_token_spec.rb +0 -161
  642. data/spec/util/capability_spec.rb +0 -186
  643. data/spec/util/client_config_spec.rb +0 -21
@@ -0,0 +1,243 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Preview < Domain
10
+ class BulkExports < Version
11
+ class ExportConfigurationList < ListResource
12
+ ##
13
+ # Initialize the ExportConfigurationList
14
+ # @param [Version] version Version that contains the resource
15
+ # @return [ExportConfigurationList] ExportConfigurationList
16
+ def initialize(version)
17
+ super(version)
18
+
19
+ # Path Solution
20
+ @solution = {}
21
+ end
22
+
23
+ ##
24
+ # Provide a user friendly representation
25
+ def to_s
26
+ '#<Twilio.Preview.BulkExports.ExportConfigurationList>'
27
+ end
28
+ end
29
+
30
+ class ExportConfigurationPage < Page
31
+ ##
32
+ # Initialize the ExportConfigurationPage
33
+ # @param [Version] version Version that contains the resource
34
+ # @param [Response] response Response from the API
35
+ # @param [Hash] solution Path solution for the resource
36
+ # @return [ExportConfigurationPage] ExportConfigurationPage
37
+ def initialize(version, response, solution)
38
+ super(version, response)
39
+
40
+ # Path Solution
41
+ @solution = solution
42
+ end
43
+
44
+ ##
45
+ # Build an instance of ExportConfigurationInstance
46
+ # @param [Hash] payload Payload response from the API
47
+ # @return [ExportConfigurationInstance] ExportConfigurationInstance
48
+ def get_instance(payload)
49
+ ExportConfigurationInstance.new(
50
+ @version,
51
+ payload,
52
+ )
53
+ end
54
+
55
+ ##
56
+ # Provide a user friendly representation
57
+ def to_s
58
+ '<Twilio.Preview.BulkExports.ExportConfigurationPage>'
59
+ end
60
+ end
61
+
62
+ class ExportConfigurationContext < InstanceContext
63
+ ##
64
+ # Initialize the ExportConfigurationContext
65
+ # @param [Version] version Version that contains the resource
66
+ # @param [String] resource_type The resource_type
67
+ # @return [ExportConfigurationContext] ExportConfigurationContext
68
+ def initialize(version, resource_type)
69
+ super(version)
70
+
71
+ # Path Solution
72
+ @solution = {
73
+ resource_type: resource_type,
74
+ }
75
+ @uri = "/Exports/#{@solution[:resource_type]}/Configuration"
76
+ end
77
+
78
+ ##
79
+ # Fetch a ExportConfigurationInstance
80
+ # @return [ExportConfigurationInstance] Fetched ExportConfigurationInstance
81
+ def fetch
82
+ params = Twilio::Values.of({})
83
+
84
+ payload = @version.fetch(
85
+ 'GET',
86
+ @uri,
87
+ params,
88
+ )
89
+
90
+ ExportConfigurationInstance.new(
91
+ @version,
92
+ payload,
93
+ resource_type: @solution[:resource_type],
94
+ )
95
+ end
96
+
97
+ ##
98
+ # Update the ExportConfigurationInstance
99
+ # @param [Boolean] enabled The enabled
100
+ # @param [String] webhook_url The webhook_url
101
+ # @param [String] webhook_method The webhook_method
102
+ # @param [String] email The email
103
+ # @return [ExportConfigurationInstance] Updated ExportConfigurationInstance
104
+ def update(enabled: :unset, webhook_url: :unset, webhook_method: :unset, email: :unset)
105
+ data = Twilio::Values.of({
106
+ 'Enabled' => enabled,
107
+ 'WebhookUrl' => webhook_url,
108
+ 'WebhookMethod' => webhook_method,
109
+ 'Email' => email,
110
+ })
111
+
112
+ payload = @version.update(
113
+ 'POST',
114
+ @uri,
115
+ data: data,
116
+ )
117
+
118
+ ExportConfigurationInstance.new(
119
+ @version,
120
+ payload,
121
+ resource_type: @solution[:resource_type],
122
+ )
123
+ end
124
+
125
+ ##
126
+ # Provide a user friendly representation
127
+ def to_s
128
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
129
+ "#<Twilio.Preview.BulkExports.ExportConfigurationContext #{context}>"
130
+ end
131
+ end
132
+
133
+ class ExportConfigurationInstance < InstanceResource
134
+ ##
135
+ # Initialize the ExportConfigurationInstance
136
+ # @param [Version] version Version that contains the resource
137
+ # @param [Hash] payload payload that contains response from Twilio
138
+ # @param [String] resource_type The resource_type
139
+ # @return [ExportConfigurationInstance] ExportConfigurationInstance
140
+ def initialize(version, payload, resource_type: nil)
141
+ super(version)
142
+
143
+ # Marshaled Properties
144
+ @properties = {
145
+ 'enabled' => payload['enabled'],
146
+ 'webhook_url' => payload['webhook_url'],
147
+ 'webhook_method' => payload['webhook_method'],
148
+ 'email' => payload['email'],
149
+ 'resource_type' => payload['resource_type'],
150
+ 'url' => payload['url'],
151
+ }
152
+
153
+ # Context
154
+ @instance_context = nil
155
+ @params = {
156
+ 'resource_type' => resource_type || @properties['resource_type'],
157
+ }
158
+ end
159
+
160
+ ##
161
+ # Generate an instance context for the instance, the context is capable of
162
+ # performing various actions. All instance actions are proxied to the context
163
+ # @return [ExportConfigurationContext] ExportConfigurationContext for this ExportConfigurationInstance
164
+ def context
165
+ unless @instance_context
166
+ @instance_context = ExportConfigurationContext.new(
167
+ @version,
168
+ @params['resource_type'],
169
+ )
170
+ end
171
+ @instance_context
172
+ end
173
+
174
+ ##
175
+ # @return [Boolean] The enabled
176
+ def enabled
177
+ @properties['enabled']
178
+ end
179
+
180
+ ##
181
+ # @return [String] The webhook_url
182
+ def webhook_url
183
+ @properties['webhook_url']
184
+ end
185
+
186
+ ##
187
+ # @return [String] The webhook_method
188
+ def webhook_method
189
+ @properties['webhook_method']
190
+ end
191
+
192
+ ##
193
+ # @return [String] The email
194
+ def email
195
+ @properties['email']
196
+ end
197
+
198
+ ##
199
+ # @return [String] The resource_type
200
+ def resource_type
201
+ @properties['resource_type']
202
+ end
203
+
204
+ ##
205
+ # @return [String] The url
206
+ def url
207
+ @properties['url']
208
+ end
209
+
210
+ ##
211
+ # Fetch a ExportConfigurationInstance
212
+ # @return [ExportConfigurationInstance] Fetched ExportConfigurationInstance
213
+ def fetch
214
+ context.fetch
215
+ end
216
+
217
+ ##
218
+ # Update the ExportConfigurationInstance
219
+ # @param [Boolean] enabled The enabled
220
+ # @param [String] webhook_url The webhook_url
221
+ # @param [String] webhook_method The webhook_method
222
+ # @param [String] email The email
223
+ # @return [ExportConfigurationInstance] Updated ExportConfigurationInstance
224
+ def update(enabled: :unset, webhook_url: :unset, webhook_method: :unset, email: :unset)
225
+ context.update(
226
+ enabled: enabled,
227
+ webhook_url: webhook_url,
228
+ webhook_method: webhook_method,
229
+ email: email,
230
+ )
231
+ end
232
+
233
+ ##
234
+ # Provide a user friendly representation
235
+ def to_s
236
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
237
+ "<Twilio.Preview.BulkExports.ExportConfigurationInstance #{values}>"
238
+ end
239
+ end
240
+ end
241
+ end
242
+ end
243
+ end
@@ -0,0 +1,42 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Preview
10
+ class HostedNumbers < Version
11
+ ##
12
+ # Initialize the HostedNumbers version of Preview
13
+ def initialize(domain)
14
+ super
15
+ @version = 'HostedNumbers'
16
+ @hosted_number_orders = nil
17
+ end
18
+
19
+ ##
20
+ # @param [String] sid A 34 character string that uniquely identifies this
21
+ # HostedNumberOrder.
22
+ # @return [Twilio::REST::Preview::HostedNumbers::HostedNumberOrderInstance] if sid was passed.
23
+ # @return [Twilio::REST::Preview::HostedNumbers::HostedNumberOrderList]
24
+ def hosted_number_orders(sid=:unset)
25
+ if sid.nil?
26
+ raise ArgumentError, 'sid cannot be nil'
27
+ elsif sid == :unset
28
+ @hosted_number_orders ||= HostedNumberOrderList.new self
29
+ else
30
+ HostedNumberOrderContext.new(self, sid)
31
+ end
32
+ end
33
+
34
+ ##
35
+ # Provide a user friendly representation
36
+ def to_s
37
+ '<Twilio::REST::Preview::HostedNumbers>'
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,557 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Preview < Domain
10
+ class HostedNumbers < Version
11
+ class HostedNumberOrderList < ListResource
12
+ ##
13
+ # Initialize the HostedNumberOrderList
14
+ # @param [Version] version Version that contains the resource
15
+ # @return [HostedNumberOrderList] HostedNumberOrderList
16
+ def initialize(version)
17
+ super(version)
18
+
19
+ # Path Solution
20
+ @solution = {}
21
+ @uri = "/HostedNumberOrders"
22
+ end
23
+
24
+ ##
25
+ # Lists HostedNumberOrderInstance records from the API as a list.
26
+ # Unlike stream(), this operation is eager and will load `limit` records into
27
+ # memory before returning.
28
+ # @param [hosted_number_order.Status] status The Status of this HostedNumberOrder.
29
+ # One of `received`, `pending-verification`, `verified`, `pending-loa`,
30
+ # `carrier-processing`, `testing`, `completed`, `failed`, or `action-required`.
31
+ # @param [String] phone_number An E164 formatted phone number hosted by this
32
+ # HostedNumberOrder.
33
+ # @param [String] incoming_phone_number_sid A 34 character string that uniquely
34
+ # identifies the IncomingPhoneNumber resource created by this HostedNumberOrder.
35
+ # @param [String] friendly_name A human readable description of this resource, up
36
+ # to 64 characters.
37
+ # @param [String] unique_name Provides a unique and addressable name to be
38
+ # assigned to this HostedNumberOrder, assigned by the developer, to be optionally
39
+ # used in addition to SID.
40
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
41
+ # guarantees to never return more than limit. Default is no limit
42
+ # @param [Integer] page_size Number of records to fetch per request, when not set will use
43
+ # the default value of 50 records. If no page_size is defined
44
+ # but a limit is defined, stream() will attempt to read the
45
+ # limit with the most efficient page size, i.e. min(limit, 1000)
46
+ # @return [Array] Array of up to limit results
47
+ def list(status: :unset, phone_number: :unset, incoming_phone_number_sid: :unset, friendly_name: :unset, unique_name: :unset, limit: nil, page_size: nil)
48
+ self.stream(
49
+ status: status,
50
+ phone_number: phone_number,
51
+ incoming_phone_number_sid: incoming_phone_number_sid,
52
+ friendly_name: friendly_name,
53
+ unique_name: unique_name,
54
+ limit: limit,
55
+ page_size: page_size
56
+ ).entries
57
+ end
58
+
59
+ ##
60
+ # Streams HostedNumberOrderInstance records from the API as an Enumerable.
61
+ # This operation lazily loads records as efficiently as possible until the limit
62
+ # is reached.
63
+ # @param [hosted_number_order.Status] status The Status of this HostedNumberOrder.
64
+ # One of `received`, `pending-verification`, `verified`, `pending-loa`,
65
+ # `carrier-processing`, `testing`, `completed`, `failed`, or `action-required`.
66
+ # @param [String] phone_number An E164 formatted phone number hosted by this
67
+ # HostedNumberOrder.
68
+ # @param [String] incoming_phone_number_sid A 34 character string that uniquely
69
+ # identifies the IncomingPhoneNumber resource created by this HostedNumberOrder.
70
+ # @param [String] friendly_name A human readable description of this resource, up
71
+ # to 64 characters.
72
+ # @param [String] unique_name Provides a unique and addressable name to be
73
+ # assigned to this HostedNumberOrder, assigned by the developer, to be optionally
74
+ # used in addition to SID.
75
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
76
+ # guarantees to never return more than limit. Default is no limit
77
+ # @param [Integer] page_size Number of records to fetch per request, when not set will use
78
+ # the default value of 50 records. If no page_size is defined
79
+ # but a limit is defined, stream() will attempt to read the
80
+ # limit with the most efficient page size, i.e. min(limit, 1000)
81
+ # @return [Enumerable] Enumerable that will yield up to limit results
82
+ def stream(status: :unset, phone_number: :unset, incoming_phone_number_sid: :unset, friendly_name: :unset, unique_name: :unset, limit: nil, page_size: nil)
83
+ limits = @version.read_limits(limit, page_size)
84
+
85
+ page = self.page(
86
+ status: status,
87
+ phone_number: phone_number,
88
+ incoming_phone_number_sid: incoming_phone_number_sid,
89
+ friendly_name: friendly_name,
90
+ unique_name: unique_name,
91
+ page_size: limits[:page_size],
92
+ )
93
+
94
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
95
+ end
96
+
97
+ ##
98
+ # When passed a block, yields HostedNumberOrderInstance records from the API.
99
+ # This operation lazily loads records as efficiently as possible until the limit
100
+ # is reached.
101
+ def each
102
+ limits = @version.read_limits
103
+
104
+ page = self.page(
105
+ page_size: limits[:page_size],
106
+ )
107
+
108
+ @version.stream(page,
109
+ limit: limits[:limit],
110
+ page_limit: limits[:page_limit]).each {|x| yield x}
111
+ end
112
+
113
+ ##
114
+ # Retrieve a single page of HostedNumberOrderInstance records from the API.
115
+ # Request is executed immediately.
116
+ # @param [hosted_number_order.Status] status The Status of this HostedNumberOrder.
117
+ # One of `received`, `pending-verification`, `verified`, `pending-loa`,
118
+ # `carrier-processing`, `testing`, `completed`, `failed`, or `action-required`.
119
+ # @param [String] phone_number An E164 formatted phone number hosted by this
120
+ # HostedNumberOrder.
121
+ # @param [String] incoming_phone_number_sid A 34 character string that uniquely
122
+ # identifies the IncomingPhoneNumber resource created by this HostedNumberOrder.
123
+ # @param [String] friendly_name A human readable description of this resource, up
124
+ # to 64 characters.
125
+ # @param [String] unique_name Provides a unique and addressable name to be
126
+ # assigned to this HostedNumberOrder, assigned by the developer, to be optionally
127
+ # used in addition to SID.
128
+ # @param [String] page_token PageToken provided by the API
129
+ # @param [Integer] page_number Page Number, this value is simply for client state
130
+ # @param [Integer] page_size Number of records to return, defaults to 50
131
+ # @return [Page] Page of HostedNumberOrderInstance
132
+ def page(status: :unset, phone_number: :unset, incoming_phone_number_sid: :unset, friendly_name: :unset, unique_name: :unset, page_token: :unset, page_number: :unset, page_size: :unset)
133
+ params = Twilio::Values.of({
134
+ 'Status' => status,
135
+ 'PhoneNumber' => phone_number,
136
+ 'IncomingPhoneNumberSid' => incoming_phone_number_sid,
137
+ 'FriendlyName' => friendly_name,
138
+ 'UniqueName' => unique_name,
139
+ 'PageToken' => page_token,
140
+ 'Page' => page_number,
141
+ 'PageSize' => page_size,
142
+ })
143
+ response = @version.page(
144
+ 'GET',
145
+ @uri,
146
+ params
147
+ )
148
+ HostedNumberOrderPage.new(@version, response, @solution)
149
+ end
150
+
151
+ ##
152
+ # Retrieve a single page of HostedNumberOrderInstance records from the API.
153
+ # Request is executed immediately.
154
+ # @param [String] target_url API-generated URL for the requested results page
155
+ # @return [Page] Page of HostedNumberOrderInstance
156
+ def get_page(target_url)
157
+ response = @version.domain.request(
158
+ 'GET',
159
+ target_url
160
+ )
161
+ HostedNumberOrderPage.new(@version, response, @solution)
162
+ end
163
+
164
+ ##
165
+ # Retrieve a single page of HostedNumberOrderInstance records from the API.
166
+ # Request is executed immediately.
167
+ # @param [String] address_sid A 34 character string that uniquely identifies the
168
+ # Address resource that represents the address of the owner of this phone number.
169
+ # @param [String] phone_number An E164 formatted phone number hosted by this
170
+ # HostedNumberOrder.
171
+ # @param [String] iso_country The ISO country code of the phone_number.
172
+ # @param [Boolean] sms_capability Used to specify that the SMS capability will be
173
+ # hosted on Twilio's platform.
174
+ # @param [String] email Email of the owner of this phone number that is being
175
+ # hosted.
176
+ # @param [String] account_sid Optional. The unique SID identifier of the Account
177
+ # or Sub-Account to create this HostedNumberOrder on.
178
+ # @param [String] friendly_name Optional. A human readable description of this
179
+ # resource, up to 64 characters.
180
+ # @param [String] unique_name Optional. Provides a unique and addressable name to
181
+ # be assigned to this HostedNumberOrder, assigned by the developer, to be
182
+ # optionally used in addition to SID.
183
+ # @param [String] cc_emails Optional. A list of emails that LOA document for this
184
+ # HostedNumberOrder will be carbon copied to.
185
+ # @param [String] sms_url Optional. The SMS URL attached to the
186
+ # IncomingPhoneNumber resource.
187
+ # @param [String] sms_method Optional. The SMS Method attached to the
188
+ # IncomingPhoneNumber resource.
189
+ # @param [String] sms_fallback_url Optional. The SMS Fallback URL attached to the
190
+ # IncomingPhoneNumber resource.
191
+ # @param [String] sms_fallback_method Optional. The SMS Fallback Method attached
192
+ # to the IncomingPhoneNumber resource.
193
+ # @param [String] status_callback_url Optional. The Status Callback URL attached
194
+ # to the IncomingPhoneNumber resource.
195
+ # @param [String] status_callback_method Optional. The Status Callback Method
196
+ # attached to the IncomingPhoneNumber resource.
197
+ # @return [HostedNumberOrderInstance] Newly created HostedNumberOrderInstance
198
+ def create(address_sid: nil, phone_number: nil, iso_country: nil, sms_capability: nil, email: nil, account_sid: :unset, friendly_name: :unset, unique_name: :unset, cc_emails: :unset, sms_url: :unset, sms_method: :unset, sms_fallback_url: :unset, sms_fallback_method: :unset, status_callback_url: :unset, status_callback_method: :unset)
199
+ data = Twilio::Values.of({
200
+ 'AddressSid' => address_sid,
201
+ 'PhoneNumber' => phone_number,
202
+ 'IsoCountry' => iso_country,
203
+ 'SmsCapability' => sms_capability,
204
+ 'Email' => email,
205
+ 'AccountSid' => account_sid,
206
+ 'FriendlyName' => friendly_name,
207
+ 'UniqueName' => unique_name,
208
+ 'CcEmails' => cc_emails,
209
+ 'SmsUrl' => sms_url,
210
+ 'SmsMethod' => sms_method,
211
+ 'SmsFallbackUrl' => sms_fallback_url,
212
+ 'SmsFallbackMethod' => sms_fallback_method,
213
+ 'StatusCallbackUrl' => status_callback_url,
214
+ 'StatusCallbackMethod' => status_callback_method,
215
+ })
216
+
217
+ payload = @version.create(
218
+ 'POST',
219
+ @uri,
220
+ data: data
221
+ )
222
+
223
+ HostedNumberOrderInstance.new(
224
+ @version,
225
+ payload,
226
+ )
227
+ end
228
+
229
+ ##
230
+ # Provide a user friendly representation
231
+ def to_s
232
+ '#<Twilio.Preview.HostedNumbers.HostedNumberOrderList>'
233
+ end
234
+ end
235
+
236
+ class HostedNumberOrderPage < Page
237
+ ##
238
+ # Initialize the HostedNumberOrderPage
239
+ # @param [Version] version Version that contains the resource
240
+ # @param [Response] response Response from the API
241
+ # @param [Hash] solution Path solution for the resource
242
+ # @return [HostedNumberOrderPage] HostedNumberOrderPage
243
+ def initialize(version, response, solution)
244
+ super(version, response)
245
+
246
+ # Path Solution
247
+ @solution = solution
248
+ end
249
+
250
+ ##
251
+ # Build an instance of HostedNumberOrderInstance
252
+ # @param [Hash] payload Payload response from the API
253
+ # @return [HostedNumberOrderInstance] HostedNumberOrderInstance
254
+ def get_instance(payload)
255
+ HostedNumberOrderInstance.new(
256
+ @version,
257
+ payload,
258
+ )
259
+ end
260
+
261
+ ##
262
+ # Provide a user friendly representation
263
+ def to_s
264
+ '<Twilio.Preview.HostedNumbers.HostedNumberOrderPage>'
265
+ end
266
+ end
267
+
268
+ class HostedNumberOrderContext < InstanceContext
269
+ ##
270
+ # Initialize the HostedNumberOrderContext
271
+ # @param [Version] version Version that contains the resource
272
+ # @param [String] sid A 34 character string that uniquely identifies this
273
+ # HostedNumberOrder.
274
+ # @return [HostedNumberOrderContext] HostedNumberOrderContext
275
+ def initialize(version, sid)
276
+ super(version)
277
+
278
+ # Path Solution
279
+ @solution = {
280
+ sid: sid,
281
+ }
282
+ @uri = "/HostedNumberOrders/#{@solution[:sid]}"
283
+ end
284
+
285
+ ##
286
+ # Fetch a HostedNumberOrderInstance
287
+ # @return [HostedNumberOrderInstance] Fetched HostedNumberOrderInstance
288
+ def fetch
289
+ params = Twilio::Values.of({})
290
+
291
+ payload = @version.fetch(
292
+ 'GET',
293
+ @uri,
294
+ params,
295
+ )
296
+
297
+ HostedNumberOrderInstance.new(
298
+ @version,
299
+ payload,
300
+ sid: @solution[:sid],
301
+ )
302
+ end
303
+
304
+ ##
305
+ # Deletes the HostedNumberOrderInstance
306
+ # @return [Boolean] true if delete succeeds, true otherwise
307
+ def delete
308
+ @version.delete('delete', @uri)
309
+ end
310
+
311
+ ##
312
+ # Update the HostedNumberOrderInstance
313
+ # @param [String] friendly_name A human readable description of this resource, up
314
+ # to 64 characters.
315
+ # @param [String] unique_name Provides a unique and addressable name to be
316
+ # assigned to this HostedNumberOrder, assigned by the developer, to be optionally
317
+ # used in addition to SID.
318
+ # @param [String] email Email of the owner of this phone number that is being
319
+ # hosted.
320
+ # @param [String] cc_emails Optional. A list of emails that LOA document for this
321
+ # HostedNumberOrder will be carbon copied to.
322
+ # @param [hosted_number_order.Status] status The Status of this HostedNumberOrder.
323
+ # User can only update this to `pending-loa` or `pending-verification`.
324
+ # @param [String] verification_code A verification code that is given to the user
325
+ # via a phone call to the phone number that is being hosted.
326
+ # @return [HostedNumberOrderInstance] Updated HostedNumberOrderInstance
327
+ def update(friendly_name: :unset, unique_name: :unset, email: :unset, cc_emails: :unset, status: :unset, verification_code: :unset)
328
+ data = Twilio::Values.of({
329
+ 'FriendlyName' => friendly_name,
330
+ 'UniqueName' => unique_name,
331
+ 'Email' => email,
332
+ 'CcEmails' => cc_emails,
333
+ 'Status' => status,
334
+ 'VerificationCode' => verification_code,
335
+ })
336
+
337
+ payload = @version.update(
338
+ 'POST',
339
+ @uri,
340
+ data: data,
341
+ )
342
+
343
+ HostedNumberOrderInstance.new(
344
+ @version,
345
+ payload,
346
+ sid: @solution[:sid],
347
+ )
348
+ end
349
+
350
+ ##
351
+ # Provide a user friendly representation
352
+ def to_s
353
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
354
+ "#<Twilio.Preview.HostedNumbers.HostedNumberOrderContext #{context}>"
355
+ end
356
+ end
357
+
358
+ class HostedNumberOrderInstance < InstanceResource
359
+ ##
360
+ # Initialize the HostedNumberOrderInstance
361
+ # @param [Version] version Version that contains the resource
362
+ # @param [Hash] payload payload that contains response from Twilio
363
+ # @param [String] sid A 34 character string that uniquely identifies this
364
+ # HostedNumberOrder.
365
+ # @return [HostedNumberOrderInstance] HostedNumberOrderInstance
366
+ def initialize(version, payload, sid: nil)
367
+ super(version)
368
+
369
+ # Marshaled Properties
370
+ @properties = {
371
+ 'sid' => payload['sid'],
372
+ 'account_sid' => payload['account_sid'],
373
+ 'incoming_phone_number_sid' => payload['incoming_phone_number_sid'],
374
+ 'address_sid' => payload['address_sid'],
375
+ 'signing_document_sid' => payload['signing_document_sid'],
376
+ 'phone_number' => payload['phone_number'],
377
+ 'capabilities' => payload['capabilities'],
378
+ 'friendly_name' => payload['friendly_name'],
379
+ 'unique_name' => payload['unique_name'],
380
+ 'status' => payload['status'],
381
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
382
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
383
+ 'verification_attempts' => payload['verification_attempts'].to_i,
384
+ 'email' => payload['email'],
385
+ 'cc_emails' => payload['cc_emails'],
386
+ 'url' => payload['url'],
387
+ }
388
+
389
+ # Context
390
+ @instance_context = nil
391
+ @params = {
392
+ 'sid' => sid || @properties['sid'],
393
+ }
394
+ end
395
+
396
+ ##
397
+ # Generate an instance context for the instance, the context is capable of
398
+ # performing various actions. All instance actions are proxied to the context
399
+ # @return [HostedNumberOrderContext] HostedNumberOrderContext for this HostedNumberOrderInstance
400
+ def context
401
+ unless @instance_context
402
+ @instance_context = HostedNumberOrderContext.new(
403
+ @version,
404
+ @params['sid'],
405
+ )
406
+ end
407
+ @instance_context
408
+ end
409
+
410
+ ##
411
+ # @return [String] HostedNumberOrder sid.
412
+ def sid
413
+ @properties['sid']
414
+ end
415
+
416
+ ##
417
+ # @return [String] Account Sid.
418
+ def account_sid
419
+ @properties['account_sid']
420
+ end
421
+
422
+ ##
423
+ # @return [String] IncomingPhoneNumber sid.
424
+ def incoming_phone_number_sid
425
+ @properties['incoming_phone_number_sid']
426
+ end
427
+
428
+ ##
429
+ # @return [String] Address sid.
430
+ def address_sid
431
+ @properties['address_sid']
432
+ end
433
+
434
+ ##
435
+ # @return [String] LOA document sid.
436
+ def signing_document_sid
437
+ @properties['signing_document_sid']
438
+ end
439
+
440
+ ##
441
+ # @return [String] An E164 formatted phone number.
442
+ def phone_number
443
+ @properties['phone_number']
444
+ end
445
+
446
+ ##
447
+ # @return [String] A mapping of phone number capabilities.
448
+ def capabilities
449
+ @properties['capabilities']
450
+ end
451
+
452
+ ##
453
+ # @return [String] A human readable description of this resource.
454
+ def friendly_name
455
+ @properties['friendly_name']
456
+ end
457
+
458
+ ##
459
+ # @return [String] A unique, developer assigned name of this HostedNumberOrder.
460
+ def unique_name
461
+ @properties['unique_name']
462
+ end
463
+
464
+ ##
465
+ # @return [hosted_number_order.Status] The Status of this HostedNumberOrder.
466
+ def status
467
+ @properties['status']
468
+ end
469
+
470
+ ##
471
+ # @return [Time] The date this HostedNumberOrder was created.
472
+ def date_created
473
+ @properties['date_created']
474
+ end
475
+
476
+ ##
477
+ # @return [Time] The date this HostedNumberOrder was updated.
478
+ def date_updated
479
+ @properties['date_updated']
480
+ end
481
+
482
+ ##
483
+ # @return [String] The number of verification attempts made to verify ownership of the phone number.
484
+ def verification_attempts
485
+ @properties['verification_attempts']
486
+ end
487
+
488
+ ##
489
+ # @return [String] Email.
490
+ def email
491
+ @properties['email']
492
+ end
493
+
494
+ ##
495
+ # @return [String] A list of emails.
496
+ def cc_emails
497
+ @properties['cc_emails']
498
+ end
499
+
500
+ ##
501
+ # @return [String] The URL of this HostedNumberOrder.
502
+ def url
503
+ @properties['url']
504
+ end
505
+
506
+ ##
507
+ # Fetch a HostedNumberOrderInstance
508
+ # @return [HostedNumberOrderInstance] Fetched HostedNumberOrderInstance
509
+ def fetch
510
+ context.fetch
511
+ end
512
+
513
+ ##
514
+ # Deletes the HostedNumberOrderInstance
515
+ # @return [Boolean] true if delete succeeds, true otherwise
516
+ def delete
517
+ context.delete
518
+ end
519
+
520
+ ##
521
+ # Update the HostedNumberOrderInstance
522
+ # @param [String] friendly_name A human readable description of this resource, up
523
+ # to 64 characters.
524
+ # @param [String] unique_name Provides a unique and addressable name to be
525
+ # assigned to this HostedNumberOrder, assigned by the developer, to be optionally
526
+ # used in addition to SID.
527
+ # @param [String] email Email of the owner of this phone number that is being
528
+ # hosted.
529
+ # @param [String] cc_emails Optional. A list of emails that LOA document for this
530
+ # HostedNumberOrder will be carbon copied to.
531
+ # @param [hosted_number_order.Status] status The Status of this HostedNumberOrder.
532
+ # User can only update this to `pending-loa` or `pending-verification`.
533
+ # @param [String] verification_code A verification code that is given to the user
534
+ # via a phone call to the phone number that is being hosted.
535
+ # @return [HostedNumberOrderInstance] Updated HostedNumberOrderInstance
536
+ def update(friendly_name: :unset, unique_name: :unset, email: :unset, cc_emails: :unset, status: :unset, verification_code: :unset)
537
+ context.update(
538
+ friendly_name: friendly_name,
539
+ unique_name: unique_name,
540
+ email: email,
541
+ cc_emails: cc_emails,
542
+ status: status,
543
+ verification_code: verification_code,
544
+ )
545
+ end
546
+
547
+ ##
548
+ # Provide a user friendly representation
549
+ def to_s
550
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
551
+ "<Twilio.Preview.HostedNumbers.HostedNumberOrderInstance #{values}>"
552
+ end
553
+ end
554
+ end
555
+ end
556
+ end
557
+ end