twilio-ruby 4.13.0 → 5.6.4

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 (773) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.rubocop.yml +40 -0
  4. data/.rubocop_todo.yml +187 -0
  5. data/.travis.yml +11 -21
  6. data/AUTHORS.md +46 -32
  7. data/CHANGES.md +400 -62
  8. data/CONTRIBUTING.md +159 -0
  9. data/Gemfile +2 -2
  10. data/ISSUE_TEMPLATE.md +26 -0
  11. data/LICENSE.md +12 -12
  12. data/Makefile +18 -4
  13. data/README.md +76 -146
  14. data/Rakefile +54 -0
  15. data/UPGRADE.md +30 -0
  16. data/VERSIONS.md +36 -0
  17. data/examples/examples.rb +46 -57
  18. data/examples/{print-call-log.rb → print_call_log.rb} +6 -6
  19. data/githooks/pre-commit +1 -0
  20. data/lib/rack/twilio_webhook_authentication.rb +5 -6
  21. data/lib/twilio-ruby/framework/domain.rb +34 -0
  22. data/lib/twilio-ruby/framework/error.rb +33 -0
  23. data/lib/twilio-ruby/framework/helper.rb +9 -0
  24. data/lib/twilio-ruby/framework/obsolete_client.rb +10 -0
  25. data/lib/twilio-ruby/framework/page.rb +101 -0
  26. data/lib/twilio-ruby/framework/request.rb +39 -0
  27. data/lib/twilio-ruby/framework/resource.rb +21 -0
  28. data/lib/twilio-ruby/framework/response.rb +16 -0
  29. data/lib/twilio-ruby/framework/serialize.rb +79 -0
  30. data/lib/twilio-ruby/framework/twilio_response.rb +17 -0
  31. data/lib/twilio-ruby/framework/values.rb +7 -0
  32. data/lib/twilio-ruby/framework/version.rb +164 -0
  33. data/lib/twilio-ruby/http/http_client.rb +58 -0
  34. data/lib/twilio-ruby/jwt/access_token.rb +263 -0
  35. data/lib/twilio-ruby/jwt/client_capability.rb +100 -0
  36. data/lib/twilio-ruby/jwt/jwt.rb +51 -0
  37. data/lib/twilio-ruby/jwt/task_router.rb +170 -0
  38. data/lib/twilio-ruby/rest/accounts/v1/credential/aws.rb +338 -0
  39. data/lib/twilio-ruby/rest/accounts/v1/credential/public_key.rb +345 -0
  40. data/lib/twilio-ruby/rest/accounts/v1/credential.rb +119 -0
  41. data/lib/twilio-ruby/rest/accounts/v1.rb +33 -0
  42. data/lib/twilio-ruby/rest/accounts.rb +36 -10
  43. data/lib/twilio-ruby/rest/api/v2010/account/address/dependent_phone_number.rb +366 -0
  44. data/lib/twilio-ruby/rest/api/v2010/account/address.rb +490 -0
  45. data/lib/twilio-ruby/rest/api/v2010/account/application.rb +598 -0
  46. data/lib/twilio-ruby/rest/api/v2010/account/authorized_connect_app.rb +322 -0
  47. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/local.rb +396 -0
  48. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/machine_to_machine.rb +396 -0
  49. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/mobile.rb +396 -0
  50. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/national.rb +396 -0
  51. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/shared_cost.rb +396 -0
  52. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/toll_free.rb +396 -0
  53. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number/voip.rb +396 -0
  54. data/lib/twilio-ruby/rest/api/v2010/account/available_phone_number.rb +457 -0
  55. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback.rb +284 -0
  56. data/lib/twilio-ruby/rest/api/v2010/account/call/feedback_summary.rb +304 -0
  57. data/lib/twilio-ruby/rest/api/v2010/account/call/notification.rb +421 -0
  58. data/lib/twilio-ruby/rest/api/v2010/account/call/recording.rb +408 -0
  59. data/lib/twilio-ruby/rest/api/v2010/account/call.rb +756 -0
  60. data/lib/twilio-ruby/rest/api/v2010/account/conference/participant.rb +510 -0
  61. data/lib/twilio-ruby/rest/api/v2010/account/conference.rb +443 -0
  62. data/lib/twilio-ruby/rest/api/v2010/account/connect_app.rb +397 -0
  63. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension.rb +358 -0
  64. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/assigned_add_on.rb +430 -0
  65. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/local.rb +457 -0
  66. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/mobile.rb +457 -0
  67. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number/toll_free.rb +457 -0
  68. data/lib/twilio-ruby/rest/api/v2010/account/incoming_phone_number.rb +844 -0
  69. data/lib/twilio-ruby/rest/api/v2010/account/key.rb +306 -0
  70. data/lib/twilio-ruby/rest/api/v2010/account/message/feedback.rb +166 -0
  71. data/lib/twilio-ruby/rest/api/v2010/account/message/media.rb +353 -0
  72. data/lib/twilio-ruby/rest/api/v2010/account/message.rb +557 -0
  73. data/lib/twilio-ruby/rest/api/v2010/account/new_key.rb +147 -0
  74. data/lib/twilio-ruby/rest/api/v2010/account/new_signing_key.rb +147 -0
  75. data/lib/twilio-ruby/rest/api/v2010/account/notification.rb +407 -0
  76. data/lib/twilio-ruby/rest/api/v2010/account/outgoing_caller_id.rb +362 -0
  77. data/lib/twilio-ruby/rest/api/v2010/account/queue/member.rb +332 -0
  78. data/lib/twilio-ruby/rest/api/v2010/account/queue.rb +394 -0
  79. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result/payload.rb +378 -0
  80. data/lib/twilio-ruby/rest/api/v2010/account/recording/add_on_result.rb +390 -0
  81. data/lib/twilio-ruby/rest/api/v2010/account/recording/transcription.rb +368 -0
  82. data/lib/twilio-ruby/rest/api/v2010/account/recording.rb +473 -0
  83. data/lib/twilio-ruby/rest/api/v2010/account/short_code.rb +409 -0
  84. data/lib/twilio-ruby/rest/api/v2010/account/signing_key.rb +316 -0
  85. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list/credential.rb +381 -0
  86. data/lib/twilio-ruby/rest/api/v2010/account/sip/credential_list.rb +388 -0
  87. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/credential_list_mapping.rb +352 -0
  88. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain/ip_access_control_list_mapping.rb +352 -0
  89. data/lib/twilio-ruby/rest/api/v2010/account/sip/domain.rb +548 -0
  90. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list/ip_address.rb +394 -0
  91. data/lib/twilio-ruby/rest/api/v2010/account/sip/ip_access_control_list.rb +393 -0
  92. data/lib/twilio-ruby/rest/api/v2010/account/sip.rb +153 -0
  93. data/lib/twilio-ruby/rest/api/v2010/account/token.rb +162 -0
  94. data/lib/twilio-ruby/rest/api/v2010/account/transcription.rb +350 -0
  95. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/all_time.rb +302 -0
  96. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/daily.rb +302 -0
  97. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/last_month.rb +302 -0
  98. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/monthly.rb +302 -0
  99. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/this_month.rb +302 -0
  100. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/today.rb +302 -0
  101. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yearly.rb +302 -0
  102. data/lib/twilio-ruby/rest/api/v2010/account/usage/record/yesterday.rb +302 -0
  103. data/lib/twilio-ruby/rest/api/v2010/account/usage/record.rb +392 -0
  104. data/lib/twilio-ruby/rest/api/v2010/account/usage/trigger.rb +482 -0
  105. data/lib/twilio-ruby/rest/api/v2010/account/usage.rb +117 -0
  106. data/lib/twilio-ruby/rest/api/v2010/account/validation_request.rb +157 -0
  107. data/lib/twilio-ruby/rest/api/v2010/account.rb +936 -0
  108. data/lib/twilio-ruby/rest/api/v2010.rb +147 -0
  109. data/lib/twilio-ruby/rest/api.rb +234 -0
  110. data/lib/twilio-ruby/rest/chat/v1/credential.rb +382 -0
  111. data/lib/twilio-ruby/rest/chat/v1/service/channel/invite.rb +374 -0
  112. data/lib/twilio-ruby/rest/chat/v1/service/channel/member.rb +416 -0
  113. data/lib/twilio-ruby/rest/chat/v1/service/channel/message.rb +428 -0
  114. data/lib/twilio-ruby/rest/chat/v1/service/channel.rb +503 -0
  115. data/lib/twilio-ruby/rest/chat/v1/service/role.rb +362 -0
  116. data/lib/twilio-ruby/rest/chat/v1/service/user/user_channel.rb +240 -0
  117. data/lib/twilio-ruby/rest/chat/v1/service/user.rb +433 -0
  118. data/lib/twilio-ruby/rest/chat/v1/service.rb +891 -0
  119. data/lib/twilio-ruby/rest/chat/v1.rb +56 -0
  120. data/lib/twilio-ruby/rest/chat/v2/credential.rb +382 -0
  121. data/lib/twilio-ruby/rest/chat/v2/service/binding.rb +349 -0
  122. data/lib/twilio-ruby/rest/chat/v2/service/channel/invite.rb +374 -0
  123. data/lib/twilio-ruby/rest/chat/v2/service/channel/member.rb +442 -0
  124. data/lib/twilio-ruby/rest/chat/v2/service/channel/message.rb +479 -0
  125. data/lib/twilio-ruby/rest/chat/v2/service/channel.rb +525 -0
  126. data/lib/twilio-ruby/rest/chat/v2/service/role.rb +362 -0
  127. data/lib/twilio-ruby/rest/chat/v2/service/user/user_binding.rb +361 -0
  128. data/lib/twilio-ruby/rest/chat/v2/service/user/user_channel.rb +240 -0
  129. data/lib/twilio-ruby/rest/chat/v2/service/user.rb +463 -0
  130. data/lib/twilio-ruby/rest/chat/v2/service.rb +707 -0
  131. data/lib/twilio-ruby/rest/chat/v2.rb +56 -0
  132. data/lib/twilio-ruby/rest/chat.rb +59 -0
  133. data/lib/twilio-ruby/rest/client.rb +394 -153
  134. data/lib/twilio-ruby/rest/fax/v1/fax/fax_media.rb +313 -0
  135. data/lib/twilio-ruby/rest/fax/v1/fax.rb +525 -0
  136. data/lib/twilio-ruby/rest/fax/v1.rb +41 -0
  137. data/lib/twilio-ruby/rest/fax.rb +44 -0
  138. data/lib/twilio-ruby/rest/ip_messaging/v1/credential.rb +382 -0
  139. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/invite.rb +374 -0
  140. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/member.rb +416 -0
  141. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel/message.rb +428 -0
  142. data/lib/twilio-ruby/rest/ip_messaging/v1/service/channel.rb +503 -0
  143. data/lib/twilio-ruby/rest/ip_messaging/v1/service/role.rb +362 -0
  144. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user/user_channel.rb +240 -0
  145. data/lib/twilio-ruby/rest/ip_messaging/v1/service/user.rb +433 -0
  146. data/lib/twilio-ruby/rest/ip_messaging/v1/service.rb +891 -0
  147. data/lib/twilio-ruby/rest/ip_messaging/v1.rb +56 -0
  148. data/lib/twilio-ruby/rest/ip_messaging/v2/credential.rb +382 -0
  149. data/lib/twilio-ruby/rest/ip_messaging/v2/service/binding.rb +349 -0
  150. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/invite.rb +374 -0
  151. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/member.rb +442 -0
  152. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel/message.rb +479 -0
  153. data/lib/twilio-ruby/rest/ip_messaging/v2/service/channel.rb +525 -0
  154. data/lib/twilio-ruby/rest/ip_messaging/v2/service/role.rb +362 -0
  155. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_binding.rb +361 -0
  156. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user/user_channel.rb +240 -0
  157. data/lib/twilio-ruby/rest/ip_messaging/v2/service/user.rb +463 -0
  158. data/lib/twilio-ruby/rest/ip_messaging/v2/service.rb +707 -0
  159. data/lib/twilio-ruby/rest/ip_messaging/v2.rb +56 -0
  160. data/lib/twilio-ruby/rest/ip_messaging.rb +59 -0
  161. data/lib/twilio-ruby/rest/lookups/v1/phone_number.rb +219 -0
  162. data/lib/twilio-ruby/rest/lookups/v1.rb +41 -0
  163. data/lib/twilio-ruby/rest/lookups.rb +44 -0
  164. data/lib/twilio-ruby/rest/messaging/v1/service/alpha_sender.rb +338 -0
  165. data/lib/twilio-ruby/rest/messaging/v1/service/phone_number.rb +345 -0
  166. data/lib/twilio-ruby/rest/messaging/v1/service/short_code.rb +340 -0
  167. data/lib/twilio-ruby/rest/messaging/v1/service.rb +603 -0
  168. data/lib/twilio-ruby/rest/messaging/v1.rb +41 -0
  169. data/lib/twilio-ruby/rest/messaging.rb +44 -0
  170. data/lib/twilio-ruby/rest/monitor/v1/alert.rb +389 -0
  171. data/lib/twilio-ruby/rest/monitor/v1/event.rb +372 -0
  172. data/lib/twilio-ruby/rest/monitor/v1.rb +56 -0
  173. data/lib/twilio-ruby/rest/monitor.rb +52 -0
  174. data/lib/twilio-ruby/rest/notify/v1/credential.rb +390 -0
  175. data/lib/twilio-ruby/rest/notify/v1/service/binding.rb +418 -0
  176. data/lib/twilio-ruby/rest/notify/v1/service/notification.rb +290 -0
  177. data/lib/twilio-ruby/rest/notify/v1/service/segment.rb +223 -0
  178. data/lib/twilio-ruby/rest/notify/v1/service/user/segment_memberships.rb +260 -0
  179. data/lib/twilio-ruby/rest/notify/v1/service/user/user_binding.rb +436 -0
  180. data/lib/twilio-ruby/rest/notify/v1/service/user.rb +424 -0
  181. data/lib/twilio-ruby/rest/notify/v1/service.rb +604 -0
  182. data/lib/twilio-ruby/rest/notify/v1.rb +56 -0
  183. data/lib/twilio-ruby/rest/notify.rb +52 -0
  184. data/lib/twilio-ruby/rest/preview/acc_security/service/verification.rb +183 -0
  185. data/lib/twilio-ruby/rest/preview/acc_security/service/verification_check.rb +180 -0
  186. data/lib/twilio-ruby/rest/preview/acc_security/service.rb +386 -0
  187. data/lib/twilio-ruby/rest/preview/acc_security.rb +41 -0
  188. data/lib/twilio-ruby/rest/preview/bulk_exports/export/day.rb +209 -0
  189. data/lib/twilio-ruby/rest/preview/bulk_exports/export.rb +201 -0
  190. data/lib/twilio-ruby/rest/preview/bulk_exports/export_configuration.rb +225 -0
  191. data/lib/twilio-ruby/rest/preview/bulk_exports.rb +56 -0
  192. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/certificate.rb +390 -0
  193. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/deployment.rb +373 -0
  194. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/device.rb +433 -0
  195. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet/key.rb +384 -0
  196. data/lib/twilio-ruby/rest/preview/deployed_devices/fleet.rb +477 -0
  197. data/lib/twilio-ruby/rest/preview/deployed_devices.rb +42 -0
  198. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document/dependent_hosted_number_order.rb +400 -0
  199. data/lib/twilio-ruby/rest/preview/hosted_numbers/authorization_document.rb +438 -0
  200. data/lib/twilio-ruby/rest/preview/hosted_numbers/hosted_number_order.rb +634 -0
  201. data/lib/twilio-ruby/rest/preview/hosted_numbers.rb +58 -0
  202. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on/available_add_on_extension.rb +301 -0
  203. data/lib/twilio-ruby/rest/preview/marketplace/available_add_on.rb +320 -0
  204. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on/installed_add_on_extension.rb +337 -0
  205. data/lib/twilio-ruby/rest/preview/marketplace/installed_add_on.rb +417 -0
  206. data/lib/twilio-ruby/rest/preview/marketplace.rb +58 -0
  207. data/lib/twilio-ruby/rest/preview/proxy/service/phone_number.rb +345 -0
  208. data/lib/twilio-ruby/rest/preview/proxy/service/session/interaction.rb +435 -0
  209. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant/message_interaction.rb +453 -0
  210. data/lib/twilio-ruby/rest/preview/proxy/service/session/participant.rb +512 -0
  211. data/lib/twilio-ruby/rest/preview/proxy/service/session.rb +495 -0
  212. data/lib/twilio-ruby/rest/preview/proxy/service/short_code.rb +340 -0
  213. data/lib/twilio-ruby/rest/preview/proxy/service.rb +462 -0
  214. data/lib/twilio-ruby/rest/preview/proxy.rb +41 -0
  215. data/lib/twilio-ruby/rest/preview/studio/flow/engagement/step.rb +348 -0
  216. data/lib/twilio-ruby/rest/preview/studio/flow/engagement.rb +370 -0
  217. data/lib/twilio-ruby/rest/preview/studio/flow.rb +353 -0
  218. data/lib/twilio-ruby/rest/preview/studio.rb +41 -0
  219. data/lib/twilio-ruby/rest/preview/sync/service/document/document_permission.rb +388 -0
  220. data/lib/twilio-ruby/rest/preview/sync/service/document.rb +411 -0
  221. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_item.rb +419 -0
  222. data/lib/twilio-ruby/rest/preview/sync/service/sync_list/sync_list_permission.rb +388 -0
  223. data/lib/twilio-ruby/rest/preview/sync/service/sync_list.rb +409 -0
  224. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_item.rb +416 -0
  225. data/lib/twilio-ruby/rest/preview/sync/service/sync_map/sync_map_permission.rb +388 -0
  226. data/lib/twilio-ruby/rest/preview/sync/service/sync_map.rb +409 -0
  227. data/lib/twilio-ruby/rest/preview/sync/service.rb +470 -0
  228. data/lib/twilio-ruby/rest/preview/sync.rb +41 -0
  229. data/lib/twilio-ruby/rest/preview/understand/service/field_type/field_value.rb +375 -0
  230. data/lib/twilio-ruby/rest/preview/understand/service/field_type.rb +399 -0
  231. data/lib/twilio-ruby/rest/preview/understand/service/intent/field.rb +371 -0
  232. data/lib/twilio-ruby/rest/preview/understand/service/intent/sample.rb +407 -0
  233. data/lib/twilio-ruby/rest/preview/understand/service/intent.rb +425 -0
  234. data/lib/twilio-ruby/rest/preview/understand/service/model_build.rb +368 -0
  235. data/lib/twilio-ruby/rest/preview/understand/service/query.rb +422 -0
  236. data/lib/twilio-ruby/rest/preview/understand/service.rb +503 -0
  237. data/lib/twilio-ruby/rest/preview/understand.rb +41 -0
  238. data/lib/twilio-ruby/rest/preview/wireless/command.rb +378 -0
  239. data/lib/twilio-ruby/rest/preview/wireless/rate_plan.rb +416 -0
  240. data/lib/twilio-ruby/rest/preview/wireless/sim/usage.rb +228 -0
  241. data/lib/twilio-ruby/rest/preview/wireless/sim.rb +536 -0
  242. data/lib/twilio-ruby/rest/preview/wireless.rb +71 -0
  243. data/lib/twilio-ruby/rest/preview.rb +199 -0
  244. data/lib/twilio-ruby/rest/pricing/v1/messaging/country.rb +277 -0
  245. data/lib/twilio-ruby/rest/pricing/v1/messaging.rb +123 -0
  246. data/lib/twilio-ruby/rest/pricing/v1/phone_number/country.rb +270 -0
  247. data/lib/twilio-ruby/rest/pricing/v1/phone_number.rb +123 -0
  248. data/lib/twilio-ruby/rest/pricing/v1/voice/country.rb +277 -0
  249. data/lib/twilio-ruby/rest/pricing/v1/voice/number.rb +201 -0
  250. data/lib/twilio-ruby/rest/pricing/v1/voice.rb +139 -0
  251. data/lib/twilio-ruby/rest/pricing/v1.rb +47 -0
  252. data/lib/twilio-ruby/rest/pricing.rb +50 -2
  253. data/lib/twilio-ruby/rest/proxy/v1/service/phone_number.rb +356 -0
  254. data/lib/twilio-ruby/rest/proxy/v1/service/session/interaction.rb +461 -0
  255. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant/message_interaction.rb +451 -0
  256. data/lib/twilio-ruby/rest/proxy/v1/service/session/participant.rb +503 -0
  257. data/lib/twilio-ruby/rest/proxy/v1/service/session.rb +543 -0
  258. data/lib/twilio-ruby/rest/proxy/v1/service/short_code.rb +343 -0
  259. data/lib/twilio-ruby/rest/proxy/v1/service.rb +524 -0
  260. data/lib/twilio-ruby/rest/proxy/v1.rb +41 -0
  261. data/lib/twilio-ruby/rest/proxy.rb +44 -0
  262. data/lib/twilio-ruby/rest/studio/v1/flow/engagement/step.rb +348 -0
  263. data/lib/twilio-ruby/rest/studio/v1/flow/engagement.rb +370 -0
  264. data/lib/twilio-ruby/rest/studio/v1/flow.rb +346 -0
  265. data/lib/twilio-ruby/rest/studio/v1.rb +41 -0
  266. data/lib/twilio-ruby/rest/studio.rb +44 -0
  267. data/lib/twilio-ruby/rest/sync/v1/service/document/document_permission.rb +388 -0
  268. data/lib/twilio-ruby/rest/sync/v1/service/document.rb +425 -0
  269. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_item.rb +429 -0
  270. data/lib/twilio-ruby/rest/sync/v1/service/sync_list/sync_list_permission.rb +388 -0
  271. data/lib/twilio-ruby/rest/sync/v1/service/sync_list.rb +441 -0
  272. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_item.rb +426 -0
  273. data/lib/twilio-ruby/rest/sync/v1/service/sync_map/sync_map_permission.rb +388 -0
  274. data/lib/twilio-ruby/rest/sync/v1/service/sync_map.rb +441 -0
  275. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream/stream_message.rb +142 -0
  276. data/lib/twilio-ruby/rest/sync/v1/service/sync_stream.rb +412 -0
  277. data/lib/twilio-ruby/rest/sync/v1/service.rb +503 -0
  278. data/lib/twilio-ruby/rest/sync/v1.rb +41 -0
  279. data/lib/twilio-ruby/rest/sync.rb +44 -0
  280. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/activity.rb +373 -0
  281. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/event.rb +402 -0
  282. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task/reservation.rb +582 -0
  283. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task.rb +554 -0
  284. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_channel.rb +299 -0
  285. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics.rb +341 -0
  286. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics.rb +251 -0
  287. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queue_statistics.rb +236 -0
  288. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue/task_queues_statistics.rb +253 -0
  289. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/task_queue.rb +528 -0
  290. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/reservation.rb +582 -0
  291. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_channel.rb +386 -0
  292. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/worker_statistics.rb +225 -0
  293. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_cumulative_statistics.rb +257 -0
  294. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_real_time_statistics.rb +192 -0
  295. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker/workers_statistics.rb +220 -0
  296. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/worker.rb +578 -0
  297. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics.rb +348 -0
  298. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_real_time_statistics.rb +230 -0
  299. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow/workflow_statistics.rb +236 -0
  300. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workflow.rb +481 -0
  301. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_cumulative_statistics.rb +330 -0
  302. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_real_time_statistics.rb +218 -0
  303. data/lib/twilio-ruby/rest/taskrouter/v1/workspace/workspace_statistics.rb +210 -0
  304. data/lib/twilio-ruby/rest/taskrouter/v1/workspace.rb +669 -0
  305. data/lib/twilio-ruby/rest/taskrouter/v1.rb +41 -0
  306. data/lib/twilio-ruby/rest/taskrouter.rb +44 -0
  307. data/lib/twilio-ruby/rest/trunking/v1/trunk/credential_list.rb +323 -0
  308. data/lib/twilio-ruby/rest/trunking/v1/trunk/ip_access_control_list.rb +323 -0
  309. data/lib/twilio-ruby/rest/trunking/v1/trunk/origination_url.rb +410 -0
  310. data/lib/twilio-ruby/rest/trunking/v1/trunk/phone_number.rb +451 -0
  311. data/lib/twilio-ruby/rest/trunking/v1/trunk.rb +528 -0
  312. data/lib/twilio-ruby/rest/trunking/v1.rb +41 -0
  313. data/lib/twilio-ruby/rest/trunking.rb +44 -0
  314. data/lib/twilio-ruby/rest/video/v1/composition.rb +429 -0
  315. data/lib/twilio-ruby/rest/video/v1/recording.rb +380 -0
  316. data/lib/twilio-ruby/rest/video/v1/room/recording.rb +365 -0
  317. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_published_track.rb +326 -0
  318. data/lib/twilio-ruby/rest/video/v1/room/room_participant/room_participant_subscribed_track.rb +311 -0
  319. data/lib/twilio-ruby/rest/video/v1/room/room_participant.rb +431 -0
  320. data/lib/twilio-ruby/rest/video/v1/room.rb +502 -0
  321. data/lib/twilio-ruby/rest/video/v1.rb +71 -0
  322. data/lib/twilio-ruby/rest/video.rb +60 -0
  323. data/lib/twilio-ruby/rest/wireless/v1/command.rb +358 -0
  324. data/lib/twilio-ruby/rest/wireless/v1/rate_plan.rb +433 -0
  325. data/lib/twilio-ruby/rest/wireless/v1/sim/data_session.rb +294 -0
  326. data/lib/twilio-ruby/rest/wireless/v1/sim/usage_record.rb +234 -0
  327. data/lib/twilio-ruby/rest/wireless/v1/sim.rb +567 -0
  328. data/lib/twilio-ruby/rest/wireless/v1.rb +71 -0
  329. data/lib/twilio-ruby/rest/wireless.rb +60 -0
  330. data/lib/twilio-ruby/{util → security}/request_validator.rb +21 -4
  331. data/lib/twilio-ruby/twiml/fax_response.rb +40 -0
  332. data/lib/twilio-ruby/twiml/messaging_response.rb +105 -0
  333. data/lib/twilio-ruby/twiml/twiml.rb +75 -0
  334. data/lib/twilio-ruby/twiml/voice_response.rb +541 -0
  335. data/lib/twilio-ruby/util/configuration.rb +7 -0
  336. data/lib/twilio-ruby/util.rb +3 -1
  337. data/lib/twilio-ruby/version.rb +1 -1
  338. data/lib/twilio-ruby.rb +30 -102
  339. data/spec/framework/request_spec.rb +36 -0
  340. data/spec/framework/serialize_spec.rb +80 -0
  341. data/spec/holodeck/holodeck.rb +61 -0
  342. data/spec/holodeck/hologram.rb +4 -0
  343. data/spec/http/http_client_spec.rb +122 -0
  344. data/spec/integration/accounts/v1/credential/aws_spec.rb +224 -0
  345. data/spec/integration/accounts/v1/credential/public_key_spec.rb +224 -0
  346. data/spec/integration/accounts/v1/credential_spec.rb +10 -0
  347. data/spec/integration/api/v2010/account/address/dependent_phone_number_spec.rb +105 -0
  348. data/spec/integration/api/v2010/account/address_spec.rb +267 -0
  349. data/spec/integration/api/v2010/account/application_spec.rb +284 -0
  350. data/spec/integration/api/v2010/account/authorized_connect_app_spec.rb +137 -0
  351. data/spec/integration/api/v2010/account/available_phone_number/local_spec.rb +101 -0
  352. data/spec/integration/api/v2010/account/available_phone_number/machine_to_machine_spec.rb +101 -0
  353. data/spec/integration/api/v2010/account/available_phone_number/mobile_spec.rb +100 -0
  354. data/spec/integration/api/v2010/account/available_phone_number/national_spec.rb +101 -0
  355. data/spec/integration/api/v2010/account/available_phone_number/shared_cost_spec.rb +101 -0
  356. data/spec/integration/api/v2010/account/available_phone_number/toll_free_spec.rb +100 -0
  357. data/spec/integration/api/v2010/account/available_phone_number/voip_spec.rb +101 -0
  358. data/spec/integration/api/v2010/account/available_phone_number_spec.rb +128 -0
  359. data/spec/integration/api/v2010/account/call/feedback_spec.rb +137 -0
  360. data/spec/integration/api/v2010/account/call/feedback_summary_spec.rb +149 -0
  361. data/spec/integration/api/v2010/account/call/notification_spec.rb +179 -0
  362. data/spec/integration/api/v2010/account/call/recording_spec.rb +186 -0
  363. data/spec/integration/api/v2010/account/call_spec.rb +312 -0
  364. data/spec/integration/api/v2010/account/conference/participant_spec.rb +280 -0
  365. data/spec/integration/api/v2010/account/conference_spec.rb +177 -0
  366. data/spec/integration/api/v2010/account/connect_app_spec.rb +177 -0
  367. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on/assigned_add_on_extension_spec.rb +135 -0
  368. data/spec/integration/api/v2010/account/incoming_phone_number/assigned_add_on_spec.rb +221 -0
  369. data/spec/integration/api/v2010/account/incoming_phone_number/local_spec.rb +183 -0
  370. data/spec/integration/api/v2010/account/incoming_phone_number/mobile_spec.rb +183 -0
  371. data/spec/integration/api/v2010/account/incoming_phone_number/toll_free_spec.rb +183 -0
  372. data/spec/integration/api/v2010/account/incoming_phone_number_spec.rb +339 -0
  373. data/spec/integration/api/v2010/account/key_spec.rb +178 -0
  374. data/spec/integration/api/v2010/account/message/feedback_spec.rb +48 -0
  375. data/spec/integration/api/v2010/account/message/media_spec.rb +162 -0
  376. data/spec/integration/api/v2010/account/message_spec.rb +293 -0
  377. data/spec/integration/api/v2010/account/new_key_spec.rb +45 -0
  378. data/spec/integration/api/v2010/account/new_signing_key_spec.rb +45 -0
  379. data/spec/integration/api/v2010/account/notification_spec.rb +172 -0
  380. data/spec/integration/api/v2010/account/outgoing_caller_id_spec.rb +193 -0
  381. data/spec/integration/api/v2010/account/queue/member_spec.rb +167 -0
  382. data/spec/integration/api/v2010/account/queue_spec.rb +240 -0
  383. data/spec/integration/api/v2010/account/recording/add_on_result/payload_spec.rb +175 -0
  384. data/spec/integration/api/v2010/account/recording/add_on_result_spec.rb +166 -0
  385. data/spec/integration/api/v2010/account/recording/transcription_spec.rb +174 -0
  386. data/spec/integration/api/v2010/account/recording_spec.rb +187 -0
  387. data/spec/integration/api/v2010/account/short_code_spec.rb +180 -0
  388. data/spec/integration/api/v2010/account/signing_key_spec.rb +178 -0
  389. data/spec/integration/api/v2010/account/sip/credential_list/credential_spec.rb +254 -0
  390. data/spec/integration/api/v2010/account/sip/credential_list_spec.rb +242 -0
  391. data/spec/integration/api/v2010/account/sip/domain/credential_list_mapping_spec.rb +208 -0
  392. data/spec/integration/api/v2010/account/sip/domain/ip_access_control_list_mapping_spec.rb +218 -0
  393. data/spec/integration/api/v2010/account/sip/domain_spec.rb +285 -0
  394. data/spec/integration/api/v2010/account/sip/ip_access_control_list/ip_address_spec.rb +258 -0
  395. data/spec/integration/api/v2010/account/sip/ip_access_control_list_spec.rb +252 -0
  396. data/spec/integration/api/v2010/account/sip_spec.rb +10 -0
  397. data/spec/integration/api/v2010/account/token_spec.rb +56 -0
  398. data/spec/integration/api/v2010/account/transcription_spec.rb +167 -0
  399. data/spec/integration/api/v2010/account/usage/record/all_time_spec.rb +111 -0
  400. data/spec/integration/api/v2010/account/usage/record/daily_spec.rb +111 -0
  401. data/spec/integration/api/v2010/account/usage/record/last_month_spec.rb +111 -0
  402. data/spec/integration/api/v2010/account/usage/record/monthly_spec.rb +111 -0
  403. data/spec/integration/api/v2010/account/usage/record/this_month_spec.rb +111 -0
  404. data/spec/integration/api/v2010/account/usage/record/today_spec.rb +111 -0
  405. data/spec/integration/api/v2010/account/usage/record/yearly_spec.rb +111 -0
  406. data/spec/integration/api/v2010/account/usage/record/yesterday_spec.rb +111 -0
  407. data/spec/integration/api/v2010/account/usage/record_spec.rb +108 -0
  408. data/spec/integration/api/v2010/account/usage/trigger_spec.rb +283 -0
  409. data/spec/integration/api/v2010/account/usage_spec.rb +10 -0
  410. data/spec/integration/api/v2010/account/validation_request_spec.rb +46 -0
  411. data/spec/integration/api/v2010/account_spec.rb +254 -0
  412. data/spec/integration/chat/v1/credential_spec.rb +221 -0
  413. data/spec/integration/chat/v1/service/channel/invite_spec.rb +208 -0
  414. data/spec/integration/chat/v1/service/channel/member_spec.rb +282 -0
  415. data/spec/integration/chat/v1/service/channel/message_spec.rb +292 -0
  416. data/spec/integration/chat/v1/service/channel_spec.rb +275 -0
  417. data/spec/integration/chat/v1/service/role_spec.rb +261 -0
  418. data/spec/integration/chat/v1/service/user/user_channel_spec.rb +92 -0
  419. data/spec/integration/chat/v1/service/user_spec.rb +264 -0
  420. data/spec/integration/chat/v1/service_spec.rb +297 -0
  421. data/spec/integration/chat/v2/credential_spec.rb +221 -0
  422. data/spec/integration/chat/v2/service/binding_spec.rb +175 -0
  423. data/spec/integration/chat/v2/service/channel/invite_spec.rb +208 -0
  424. data/spec/integration/chat/v2/service/channel/member_spec.rb +255 -0
  425. data/spec/integration/chat/v2/service/channel/message_spec.rb +403 -0
  426. data/spec/integration/chat/v2/service/channel_spec.rb +275 -0
  427. data/spec/integration/chat/v2/service/role_spec.rb +261 -0
  428. data/spec/integration/chat/v2/service/user/user_binding_spec.rb +178 -0
  429. data/spec/integration/chat/v2/service/user/user_channel_spec.rb +92 -0
  430. data/spec/integration/chat/v2/service/user_spec.rb +268 -0
  431. data/spec/integration/chat/v2/service_spec.rb +352 -0
  432. data/spec/integration/fax/v1/fax/fax_media_spec.rb +126 -0
  433. data/spec/integration/fax/v1/fax_spec.rb +269 -0
  434. data/spec/integration/ip_messaging/v1/credential_spec.rb +221 -0
  435. data/spec/integration/ip_messaging/v1/service/channel/invite_spec.rb +208 -0
  436. data/spec/integration/ip_messaging/v1/service/channel/member_spec.rb +282 -0
  437. data/spec/integration/ip_messaging/v1/service/channel/message_spec.rb +292 -0
  438. data/spec/integration/ip_messaging/v1/service/channel_spec.rb +275 -0
  439. data/spec/integration/ip_messaging/v1/service/role_spec.rb +261 -0
  440. data/spec/integration/ip_messaging/v1/service/user/user_channel_spec.rb +92 -0
  441. data/spec/integration/ip_messaging/v1/service/user_spec.rb +264 -0
  442. data/spec/integration/ip_messaging/v1/service_spec.rb +297 -0
  443. data/spec/integration/ip_messaging/v2/credential_spec.rb +221 -0
  444. data/spec/integration/ip_messaging/v2/service/binding_spec.rb +175 -0
  445. data/spec/integration/ip_messaging/v2/service/channel/invite_spec.rb +208 -0
  446. data/spec/integration/ip_messaging/v2/service/channel/member_spec.rb +255 -0
  447. data/spec/integration/ip_messaging/v2/service/channel/message_spec.rb +403 -0
  448. data/spec/integration/ip_messaging/v2/service/channel_spec.rb +275 -0
  449. data/spec/integration/ip_messaging/v2/service/role_spec.rb +261 -0
  450. data/spec/integration/ip_messaging/v2/service/user/user_binding_spec.rb +178 -0
  451. data/spec/integration/ip_messaging/v2/service/user/user_channel_spec.rb +92 -0
  452. data/spec/integration/ip_messaging/v2/service/user_spec.rb +268 -0
  453. data/spec/integration/ip_messaging/v2/service_spec.rb +352 -0
  454. data/spec/integration/lookups/v1/phone_number_spec.rb +70 -0
  455. data/spec/integration/messaging/v1/service/alpha_sender_spec.rb +168 -0
  456. data/spec/integration/messaging/v1/service/phone_number_spec.rb +199 -0
  457. data/spec/integration/messaging/v1/service/short_code_spec.rb +171 -0
  458. data/spec/integration/messaging/v1/service_spec.rb +261 -0
  459. data/spec/integration/monitor/v1/alert_spec.rb +161 -0
  460. data/spec/integration/monitor/v1/event_spec.rb +148 -0
  461. data/spec/integration/notify/v1/credential_spec.rb +221 -0
  462. data/spec/integration/notify/v1/service/binding_spec.rb +223 -0
  463. data/spec/integration/notify/v1/service/notification_spec.rb +97 -0
  464. data/spec/integration/notify/v1/service/segment_spec.rb +84 -0
  465. data/spec/integration/notify/v1/service/user/segment_memberships_spec.rb +116 -0
  466. data/spec/integration/notify/v1/service/user/user_binding_spec.rb +266 -0
  467. data/spec/integration/notify/v1/service/user_spec.rb +211 -0
  468. data/spec/integration/notify/v1/service_spec.rb +284 -0
  469. data/spec/integration/preview/acc_security/service/verification_check_spec.rb +50 -0
  470. data/spec/integration/preview/acc_security/service/verification_spec.rb +50 -0
  471. data/spec/integration/preview/acc_security/service_spec.rb +183 -0
  472. data/spec/integration/preview/bulk_exports/export/day_spec.rb +56 -0
  473. data/spec/integration/preview/bulk_exports/export_configuration_spec.rb +77 -0
  474. data/spec/integration/preview/bulk_exports/export_spec.rb +43 -0
  475. data/spec/integration/preview/deployed_devices/fleet/certificate_spec.rb +236 -0
  476. data/spec/integration/preview/deployed_devices/fleet/deployment_spec.rb +231 -0
  477. data/spec/integration/preview/deployed_devices/fleet/device_spec.rb +247 -0
  478. data/spec/integration/preview/deployed_devices/fleet/key_spec.rb +235 -0
  479. data/spec/integration/preview/deployed_devices/fleet_spec.rb +244 -0
  480. data/spec/integration/preview/hosted_numbers/authorization_document/dependent_hosted_number_order_spec.rb +109 -0
  481. data/spec/integration/preview/hosted_numbers/authorization_document_spec.rb +223 -0
  482. data/spec/integration/preview/hosted_numbers/hosted_number_order_spec.rb +391 -0
  483. data/spec/integration/preview/marketplace/available_add_on/available_add_on_extension_spec.rb +121 -0
  484. data/spec/integration/preview/marketplace/available_add_on_spec.rb +142 -0
  485. data/spec/integration/preview/marketplace/installed_add_on/installed_add_on_extension_spec.rb +162 -0
  486. data/spec/integration/preview/marketplace/installed_add_on_spec.rb +252 -0
  487. data/spec/integration/preview/proxy/service/phone_number_spec.rb +171 -0
  488. data/spec/integration/preview/proxy/service/session/interaction_spec.rb +104 -0
  489. data/spec/integration/preview/proxy/service/session/participant/message_interaction_spec.rb +164 -0
  490. data/spec/integration/preview/proxy/service/session/participant_spec.rb +224 -0
  491. data/spec/integration/preview/proxy/service/session_spec.rb +216 -0
  492. data/spec/integration/preview/proxy/service/short_code_spec.rb +171 -0
  493. data/spec/integration/preview/proxy/service_spec.rb +200 -0
  494. data/spec/integration/preview/studio/flow/engagement/step_spec.rb +96 -0
  495. data/spec/integration/preview/studio/flow/engagement_spec.rb +143 -0
  496. data/spec/integration/preview/studio/flow_spec.rb +115 -0
  497. data/spec/integration/preview/sync/service/document/document_permission_spec.rb +202 -0
  498. data/spec/integration/preview/sync/service/document_spec.rb +252 -0
  499. data/spec/integration/preview/sync/service/sync_list/sync_list_item_spec.rb +252 -0
  500. data/spec/integration/preview/sync/service/sync_list/sync_list_permission_spec.rb +202 -0
  501. data/spec/integration/preview/sync/service/sync_list_spec.rb +207 -0
  502. data/spec/integration/preview/sync/service/sync_map/sync_map_item_spec.rb +252 -0
  503. data/spec/integration/preview/sync/service/sync_map/sync_map_permission_spec.rb +202 -0
  504. data/spec/integration/preview/sync/service/sync_map_spec.rb +207 -0
  505. data/spec/integration/preview/sync/service_spec.rb +244 -0
  506. data/spec/integration/preview/understand/service/field_type/field_value_spec.rb +205 -0
  507. data/spec/integration/preview/understand/service/field_type_spec.rb +244 -0
  508. data/spec/integration/preview/understand/service/intent/field_spec.rb +205 -0
  509. data/spec/integration/preview/understand/service/intent/sample_spec.rb +247 -0
  510. data/spec/integration/preview/understand/service/intent_spec.rb +252 -0
  511. data/spec/integration/preview/understand/service/model_build_spec.rb +231 -0
  512. data/spec/integration/preview/understand/service/query_spec.rb +300 -0
  513. data/spec/integration/preview/understand/service_spec.rb +256 -0
  514. data/spec/integration/preview/wireless/command_spec.rb +167 -0
  515. data/spec/integration/preview/wireless/rate_plan_spec.rb +260 -0
  516. data/spec/integration/preview/wireless/sim/usage_spec.rb +49 -0
  517. data/spec/integration/preview/wireless/sim_spec.rb +208 -0
  518. data/spec/integration/pricing/v1/messaging/country_spec.rb +137 -0
  519. data/spec/integration/pricing/v1/messaging_spec.rb +10 -0
  520. data/spec/integration/pricing/v1/phone_number/country_spec.rb +128 -0
  521. data/spec/integration/pricing/v1/phone_number_spec.rb +10 -0
  522. data/spec/integration/pricing/v1/voice/country_spec.rb +266 -0
  523. data/spec/integration/pricing/v1/voice/number_spec.rb +54 -0
  524. data/spec/integration/pricing/v1/voice_spec.rb +10 -0
  525. data/spec/integration/proxy/v1/service/phone_number_spec.rb +182 -0
  526. data/spec/integration/proxy/v1/service/session/interaction_spec.rb +134 -0
  527. data/spec/integration/proxy/v1/service/session/participant/message_interaction_spec.rb +164 -0
  528. data/spec/integration/proxy/v1/service/session/participant_spec.rb +227 -0
  529. data/spec/integration/proxy/v1/service/session_spec.rb +228 -0
  530. data/spec/integration/proxy/v1/service/short_code_spec.rb +180 -0
  531. data/spec/integration/proxy/v1/service_spec.rb +213 -0
  532. data/spec/integration/studio/v1/flow/engagement/step_spec.rb +96 -0
  533. data/spec/integration/studio/v1/flow/engagement_spec.rb +143 -0
  534. data/spec/integration/studio/v1/flow_spec.rb +114 -0
  535. data/spec/integration/sync/v1/service/document/document_permission_spec.rb +202 -0
  536. data/spec/integration/sync/v1/service/document_spec.rb +255 -0
  537. data/spec/integration/sync/v1/service/sync_list/sync_list_item_spec.rb +255 -0
  538. data/spec/integration/sync/v1/service/sync_list/sync_list_permission_spec.rb +202 -0
  539. data/spec/integration/sync/v1/service/sync_list_spec.rb +255 -0
  540. data/spec/integration/sync/v1/service/sync_map/sync_map_item_spec.rb +255 -0
  541. data/spec/integration/sync/v1/service/sync_map/sync_map_permission_spec.rb +202 -0
  542. data/spec/integration/sync/v1/service/sync_map_spec.rb +255 -0
  543. data/spec/integration/sync/v1/service/sync_stream/stream_message_spec.rb +45 -0
  544. data/spec/integration/sync/v1/service/sync_stream_spec.rb +247 -0
  545. data/spec/integration/sync/v1/service_spec.rb +252 -0
  546. data/spec/integration/taskrouter/v1/workspace/activity_spec.rb +234 -0
  547. data/spec/integration/taskrouter/v1/workspace/event_spec.rb +157 -0
  548. data/spec/integration/taskrouter/v1/workspace/task/reservation_spec.rb +192 -0
  549. data/spec/integration/taskrouter/v1/workspace/task_channel_spec.rb +127 -0
  550. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_cumulative_statistics_spec.rb +94 -0
  551. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_real_time_statistics_spec.rb +79 -0
  552. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queue_statistics_spec.rb +106 -0
  553. data/spec/integration/taskrouter/v1/workspace/task_queue/task_queues_statistics_spec.rb +144 -0
  554. data/spec/integration/taskrouter/v1/workspace/task_queue_spec.rb +296 -0
  555. data/spec/integration/taskrouter/v1/workspace/task_spec.rb +324 -0
  556. data/spec/integration/taskrouter/v1/workspace/worker/reservation_spec.rb +192 -0
  557. data/spec/integration/taskrouter/v1/workspace/worker/worker_channel_spec.rb +186 -0
  558. data/spec/integration/taskrouter/v1/workspace/worker/worker_statistics_spec.rb +90 -0
  559. data/spec/integration/taskrouter/v1/workspace/worker/workers_cumulative_statistics_spec.rb +87 -0
  560. data/spec/integration/taskrouter/v1/workspace/worker/workers_real_time_statistics_spec.rb +68 -0
  561. data/spec/integration/taskrouter/v1/workspace/worker/workers_statistics_spec.rb +114 -0
  562. data/spec/integration/taskrouter/v1/workspace/worker_spec.rb +292 -0
  563. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_cumulative_statistics_spec.rb +95 -0
  564. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_real_time_statistics_spec.rb +55 -0
  565. data/spec/integration/taskrouter/v1/workspace/workflow/workflow_statistics_spec.rb +69 -0
  566. data/spec/integration/taskrouter/v1/workspace/workflow_spec.rb +270 -0
  567. data/spec/integration/taskrouter/v1/workspace/workspace_cumulative_statistics_spec.rb +92 -0
  568. data/spec/integration/taskrouter/v1/workspace/workspace_real_time_statistics_spec.rb +70 -0
  569. data/spec/integration/taskrouter/v1/workspace/workspace_statistics_spec.rb +103 -0
  570. data/spec/integration/taskrouter/v1/workspace_spec.rb +293 -0
  571. data/spec/integration/trunking/v1/trunk/credential_list_spec.rb +190 -0
  572. data/spec/integration/trunking/v1/trunk/ip_access_control_list_spec.rb +190 -0
  573. data/spec/integration/trunking/v1/trunk/origination_url_spec.rb +250 -0
  574. data/spec/integration/trunking/v1/trunk/phone_number_spec.rb +265 -0
  575. data/spec/integration/trunking/v1/trunk_spec.rb +276 -0
  576. data/spec/integration/video/v1/composition_spec.rb +223 -0
  577. data/spec/integration/video/v1/recording_spec.rb +171 -0
  578. data/spec/integration/video/v1/room/recording_spec.rb +146 -0
  579. data/spec/integration/video/v1/room/room_participant/room_participant_published_track_spec.rb +94 -0
  580. data/spec/integration/video/v1/room/room_participant/room_participant_subscribed_track_spec.rb +132 -0
  581. data/spec/integration/video/v1/room/room_participant_spec.rb +185 -0
  582. data/spec/integration/video/v1/room_spec.rb +255 -0
  583. data/spec/integration/wireless/v1/command_spec.rb +164 -0
  584. data/spec/integration/wireless/v1/rate_plan_spec.rb +268 -0
  585. data/spec/integration/wireless/v1/sim/data_session_spec.rb +85 -0
  586. data/spec/integration/wireless/v1/sim/usage_record_spec.rb +65 -0
  587. data/spec/integration/wireless/v1/sim_spec.rb +214 -0
  588. data/spec/jwt/access_token_spec.rb +149 -0
  589. data/spec/jwt/client_capability_spec.rb +104 -0
  590. data/spec/jwt/task_router_spec.rb +172 -0
  591. data/spec/rack/twilio_webhook_authentication_spec.rb +19 -23
  592. data/spec/rest/client_spec.rb +29 -257
  593. data/spec/{util → security}/request_validator_spec.rb +5 -5
  594. data/spec/spec_helper.rb +18 -1
  595. data/spec/support/fakeweb.rb +1 -1
  596. data/spec/twiml/messaging_response_spec.rb +95 -0
  597. data/spec/twiml/voice_response_spec.rb +479 -0
  598. data/twilio-ruby.gemspec +14 -11
  599. metadata +904 -248
  600. data/docs/Makefile +0 -130
  601. data/docs/_themes/LICENSE +0 -45
  602. data/docs/_themes/README.rst +0 -25
  603. data/docs/_themes/flask_theme_support.py +0 -86
  604. data/docs/_themes/kr/layout.html +0 -32
  605. data/docs/_themes/kr/relations.html +0 -19
  606. data/docs/_themes/kr/static/flasky.css_t +0 -469
  607. data/docs/_themes/kr/static/small_flask.css +0 -70
  608. data/docs/_themes/kr/theme.conf +0 -7
  609. data/docs/_themes/kr_small/layout.html +0 -22
  610. data/docs/_themes/kr_small/static/flasky.css_t +0 -287
  611. data/docs/_themes/kr_small/theme.conf +0 -10
  612. data/docs/changelog.rst +0 -1
  613. data/docs/conf.py +0 -266
  614. data/docs/faq.rst +0 -42
  615. data/docs/getting-started.rst +0 -117
  616. data/docs/index.rst +0 -135
  617. data/docs/make.bat +0 -170
  618. data/docs/src/pip-delete-this-directory.txt +0 -5
  619. data/docs/usage/accounts.rst +0 -89
  620. data/docs/usage/addresses.rst +0 -101
  621. data/docs/usage/applications.rst +0 -108
  622. data/docs/usage/basics.rst +0 -115
  623. data/docs/usage/caller-ids.rst +0 -47
  624. data/docs/usage/conferences.rst +0 -108
  625. data/docs/usage/errors.rst +0 -29
  626. data/docs/usage/lookups.rst +0 -62
  627. data/docs/usage/messages.rst +0 -137
  628. data/docs/usage/notifications.rst +0 -72
  629. data/docs/usage/phone-calls.rst +0 -185
  630. data/docs/usage/phone-numbers.rst +0 -189
  631. data/docs/usage/pricing.rst +0 -169
  632. data/docs/usage/queues.rst +0 -112
  633. data/docs/usage/recordings.rst +0 -98
  634. data/docs/usage/sip.rst +0 -104
  635. data/docs/usage/taskrouter-tokens.rst +0 -98
  636. data/docs/usage/taskrouter.rst +0 -440
  637. data/docs/usage/token-generation.rst +0 -115
  638. data/docs/usage/transcriptions.rst +0 -32
  639. data/docs/usage/twiml.rst +0 -69
  640. data/docs/usage/validation.rst +0 -107
  641. data/examples/taskrouter.examples.rb +0 -86
  642. data/issue_template.md +0 -25
  643. data/lib/twilio-ruby/rest/addresses/dependent_phone_numbers.rb +0 -6
  644. data/lib/twilio-ruby/rest/addresses.rb +0 -12
  645. data/lib/twilio-ruby/rest/applications.rb +0 -6
  646. data/lib/twilio-ruby/rest/authorized_connect_apps.rb +0 -6
  647. data/lib/twilio-ruby/rest/available_phone_numbers/country.rb +0 -10
  648. data/lib/twilio-ruby/rest/available_phone_numbers/local.rb +0 -11
  649. data/lib/twilio-ruby/rest/available_phone_numbers/mobile.rb +0 -11
  650. data/lib/twilio-ruby/rest/available_phone_numbers/toll_free.rb +0 -11
  651. data/lib/twilio-ruby/rest/available_phone_numbers.rb +0 -13
  652. data/lib/twilio-ruby/rest/base_client.rb +0 -131
  653. data/lib/twilio-ruby/rest/call_feedback.rb +0 -28
  654. data/lib/twilio-ruby/rest/call_feedback_summary.rb +0 -13
  655. data/lib/twilio-ruby/rest/calls.rb +0 -33
  656. data/lib/twilio-ruby/rest/conferences/participants.rb +0 -23
  657. data/lib/twilio-ruby/rest/conferences.rb +0 -12
  658. data/lib/twilio-ruby/rest/connect_apps.rb +0 -6
  659. data/lib/twilio-ruby/rest/errors.rb +0 -14
  660. data/lib/twilio-ruby/rest/incoming_phone_numbers/local.rb +0 -13
  661. data/lib/twilio-ruby/rest/incoming_phone_numbers/mobile.rb +0 -13
  662. data/lib/twilio-ruby/rest/incoming_phone_numbers/toll_free.rb +0 -13
  663. data/lib/twilio-ruby/rest/incoming_phone_numbers.rb +0 -17
  664. data/lib/twilio-ruby/rest/instance_resource.rb +0 -87
  665. data/lib/twilio-ruby/rest/ip-messaging/channels.rb +0 -15
  666. data/lib/twilio-ruby/rest/ip-messaging/credentials.rb +0 -19
  667. data/lib/twilio-ruby/rest/ip-messaging/members.rb +0 -8
  668. data/lib/twilio-ruby/rest/ip-messaging/messages.rb +0 -8
  669. data/lib/twilio-ruby/rest/ip-messaging/roles.rb +0 -8
  670. data/lib/twilio-ruby/rest/ip-messaging/services.rb +0 -17
  671. data/lib/twilio-ruby/rest/ip-messaging/users.rb +0 -8
  672. data/lib/twilio-ruby/rest/ip_messaging_client.rb +0 -100
  673. data/lib/twilio-ruby/rest/keys.rb +0 -6
  674. data/lib/twilio-ruby/rest/list_resource.rb +0 -100
  675. data/lib/twilio-ruby/rest/lookups/phone_numbers.rb +0 -17
  676. data/lib/twilio-ruby/rest/lookups_client.rb +0 -99
  677. data/lib/twilio-ruby/rest/media.rb +0 -14
  678. data/lib/twilio-ruby/rest/messages.rb +0 -22
  679. data/lib/twilio-ruby/rest/monitor/alerts.rb +0 -8
  680. data/lib/twilio-ruby/rest/monitor/events.rb +0 -8
  681. data/lib/twilio-ruby/rest/monitor_client.rb +0 -101
  682. data/lib/twilio-ruby/rest/next_gen_list_resource.rb +0 -36
  683. data/lib/twilio-ruby/rest/notifications.rb +0 -6
  684. data/lib/twilio-ruby/rest/outgoing_caller_ids.rb +0 -25
  685. data/lib/twilio-ruby/rest/pricing/countries.rb +0 -21
  686. data/lib/twilio-ruby/rest/pricing/messaging.rb +0 -15
  687. data/lib/twilio-ruby/rest/pricing/phone_numbers.rb +0 -14
  688. data/lib/twilio-ruby/rest/pricing/voice/numbers.rb +0 -19
  689. data/lib/twilio-ruby/rest/pricing/voice.rb +0 -15
  690. data/lib/twilio-ruby/rest/pricing_client.rb +0 -108
  691. data/lib/twilio-ruby/rest/queues/members.rb +0 -29
  692. data/lib/twilio-ruby/rest/queues.rb +0 -12
  693. data/lib/twilio-ruby/rest/recordings.rb +0 -35
  694. data/lib/twilio-ruby/rest/sandbox.rb +0 -5
  695. data/lib/twilio-ruby/rest/sip/credential_lists/credentials.rb +0 -6
  696. data/lib/twilio-ruby/rest/sip/credential_lists.rb +0 -11
  697. data/lib/twilio-ruby/rest/sip/domains/credential_list_mappings.rb +0 -6
  698. data/lib/twilio-ruby/rest/sip/domains/ip_access_control_list_mappings.rb +0 -6
  699. data/lib/twilio-ruby/rest/sip/domains.rb +0 -12
  700. data/lib/twilio-ruby/rest/sip/ip_access_control_lists/ip_addresses.rb +0 -6
  701. data/lib/twilio-ruby/rest/sip/ip_access_control_lists.rb +0 -11
  702. data/lib/twilio-ruby/rest/sip.rb +0 -10
  703. data/lib/twilio-ruby/rest/sms/messages.rb +0 -38
  704. data/lib/twilio-ruby/rest/sms/short_codes.rb +0 -8
  705. data/lib/twilio-ruby/rest/sms.rb +0 -11
  706. data/lib/twilio-ruby/rest/task_router/activities.rb +0 -8
  707. data/lib/twilio-ruby/rest/task_router/events.rb +0 -8
  708. data/lib/twilio-ruby/rest/task_router/reservations.rb +0 -8
  709. data/lib/twilio-ruby/rest/task_router/statistics.rb +0 -26
  710. data/lib/twilio-ruby/rest/task_router/task_queues.rb +0 -17
  711. data/lib/twilio-ruby/rest/task_router/task_queues_statistics.rb +0 -15
  712. data/lib/twilio-ruby/rest/task_router/tasks.rb +0 -15
  713. data/lib/twilio-ruby/rest/task_router/workers.rb +0 -19
  714. data/lib/twilio-ruby/rest/task_router/workers_statistics.rb +0 -8
  715. data/lib/twilio-ruby/rest/task_router/workflow_statistics.rb +0 -7
  716. data/lib/twilio-ruby/rest/task_router/workflows.rb +0 -11
  717. data/lib/twilio-ruby/rest/task_router/workspace_statistics.rb +0 -7
  718. data/lib/twilio-ruby/rest/task_router/workspaces.rb +0 -17
  719. data/lib/twilio-ruby/rest/task_router_client.rb +0 -176
  720. data/lib/twilio-ruby/rest/tokens.rb +0 -7
  721. data/lib/twilio-ruby/rest/transcriptions.rb +0 -6
  722. data/lib/twilio-ruby/rest/trunking/credential_lists.rb +0 -8
  723. data/lib/twilio-ruby/rest/trunking/ip_access_control_lists.rb +0 -8
  724. data/lib/twilio-ruby/rest/trunking/origination_urls.rb +0 -8
  725. data/lib/twilio-ruby/rest/trunking/phone_numbers.rb +0 -8
  726. data/lib/twilio-ruby/rest/trunking/trunks.rb +0 -19
  727. data/lib/twilio-ruby/rest/trunking_client.rb +0 -106
  728. data/lib/twilio-ruby/rest/usage/records.rb +0 -21
  729. data/lib/twilio-ruby/rest/usage/triggers.rb +0 -12
  730. data/lib/twilio-ruby/rest/usage.rb +0 -10
  731. data/lib/twilio-ruby/rest/utils.rb +0 -49
  732. data/lib/twilio-ruby/task_router/capability.rb +0 -230
  733. data/lib/twilio-ruby/task_router/workflow_builder.rb +0 -135
  734. data/lib/twilio-ruby/task_router.rb +0 -0
  735. data/lib/twilio-ruby/twiml/response.rb +0 -16
  736. data/lib/twilio-ruby/util/access_token.rb +0 -158
  737. data/lib/twilio-ruby/util/capability.rb +0 -64
  738. data/lib/twilio-ruby/util/client_config.rb +0 -29
  739. data/spec/rest/account_spec.rb +0 -89
  740. data/spec/rest/address_spec.rb +0 -11
  741. data/spec/rest/call_feedback_spec.rb +0 -12
  742. data/spec/rest/call_feedback_summary_spec.rb +0 -9
  743. data/spec/rest/call_spec.rb +0 -22
  744. data/spec/rest/conference_spec.rb +0 -11
  745. data/spec/rest/instance_resource_spec.rb +0 -15
  746. data/spec/rest/ip-messaging/channel_spec.rb +0 -21
  747. data/spec/rest/ip-messaging/service_spec.rb +0 -30
  748. data/spec/rest/ip_messaging_client_spec.rb +0 -21
  749. data/spec/rest/key_spec.rb +0 -11
  750. data/spec/rest/lookups/phone_number_spec.rb +0 -28
  751. data/spec/rest/message_spec.rb +0 -12
  752. data/spec/rest/monitor_client_spec.rb +0 -17
  753. data/spec/rest/numbers_spec.rb +0 -58
  754. data/spec/rest/pricing_client_spec.rb +0 -60
  755. data/spec/rest/queue_spec.rb +0 -11
  756. data/spec/rest/recording_spec.rb +0 -11
  757. data/spec/rest/sms/message_spec.rb +0 -37
  758. data/spec/rest/sms/messages_spec.rb +0 -31
  759. data/spec/rest/task_router/reservation_spec.rb +0 -14
  760. data/spec/rest/task_router/statistics_spec.rb +0 -37
  761. data/spec/rest/task_router/task_queue_spec.rb +0 -9
  762. data/spec/rest/token_spec.rb +0 -7
  763. data/spec/rest/trunking/trunk_spec.rb +0 -36
  764. data/spec/rest/utils_spec.rb +0 -45
  765. data/spec/task_router/workflow_builder_spec.rb +0 -501
  766. data/spec/task_router_deprecated_spec.rb +0 -139
  767. data/spec/task_router_spec.rb +0 -110
  768. data/spec/task_router_taskqueue_spec.rb +0 -111
  769. data/spec/task_router_worker_spec.rb +0 -146
  770. data/spec/task_router_workspace_spec.rb +0 -110
  771. data/spec/util/access_token_spec.rb +0 -161
  772. data/spec/util/capability_spec.rb +0 -186
  773. data/spec/util/client_config_spec.rb +0 -21
@@ -0,0 +1,44 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Taskrouter < Domain
10
+ ##
11
+ # Initialize the Taskrouter Domain
12
+ def initialize(twilio)
13
+ super
14
+
15
+ @base_url = 'https://taskrouter.twilio.com'
16
+ @host = 'taskrouter.twilio.com'
17
+ @port = 443
18
+
19
+ # Versions
20
+ @v1 = nil
21
+ end
22
+
23
+ ##
24
+ # Version v1 of taskrouter
25
+ def v1
26
+ @v1 ||= V1.new self
27
+ end
28
+
29
+ ##
30
+ # @param [String] sid The sid
31
+ # @return [Twilio::REST::Taskrouter::V1::WorkspaceInstance] if sid was passed.
32
+ # @return [Twilio::REST::Taskrouter::V1::WorkspaceList]
33
+ def workspaces(sid=:unset)
34
+ self.v1.workspaces(sid)
35
+ end
36
+
37
+ ##
38
+ # Provide a user friendly representation
39
+ def to_s
40
+ '#<Twilio::REST::Taskrouter>'
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,323 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Trunking < Domain
10
+ class V1 < Version
11
+ class TrunkContext < InstanceContext
12
+ class CredentialListList < ListResource
13
+ ##
14
+ # Initialize the CredentialListList
15
+ # @param [Version] version Version that contains the resource
16
+ # @param [String] trunk_sid The trunk_sid
17
+ # @return [CredentialListList] CredentialListList
18
+ def initialize(version, trunk_sid: nil)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {trunk_sid: trunk_sid}
23
+ @uri = "/Trunks/#{@solution[:trunk_sid]}/CredentialLists"
24
+ end
25
+
26
+ ##
27
+ # Retrieve a single page of CredentialListInstance records from the API.
28
+ # Request is executed immediately.
29
+ # @param [String] credential_list_sid The credential_list_sid
30
+ # @return [CredentialListInstance] Newly created CredentialListInstance
31
+ def create(credential_list_sid: nil)
32
+ data = Twilio::Values.of({'CredentialListSid' => credential_list_sid, })
33
+
34
+ payload = @version.create(
35
+ 'POST',
36
+ @uri,
37
+ data: data
38
+ )
39
+
40
+ CredentialListInstance.new(@version, payload, trunk_sid: @solution[:trunk_sid], )
41
+ end
42
+
43
+ ##
44
+ # Lists CredentialListInstance records from the API as a list.
45
+ # Unlike stream(), this operation is eager and will load `limit` records into
46
+ # memory before returning.
47
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
48
+ # guarantees to never return more than limit. Default is no limit
49
+ # @param [Integer] page_size Number of records to fetch per request, when
50
+ # not set will use the default value of 50 records. If no page_size is defined
51
+ # but a limit is defined, stream() will attempt to read the limit with the most
52
+ # efficient page size, i.e. min(limit, 1000)
53
+ # @return [Array] Array of up to limit results
54
+ def list(limit: nil, page_size: nil)
55
+ self.stream(limit: limit, page_size: page_size).entries
56
+ end
57
+
58
+ ##
59
+ # Streams CredentialListInstance records from the API as an Enumerable.
60
+ # This operation lazily loads records as efficiently as possible until the limit
61
+ # is reached.
62
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
63
+ # guarantees to never return more than limit. Default is no limit.
64
+ # @param [Integer] page_size Number of records to fetch per request, when
65
+ # not set will use the default value of 50 records. If no page_size is defined
66
+ # but a limit is defined, stream() will attempt to read the limit with the most
67
+ # efficient page size, i.e. min(limit, 1000)
68
+ # @return [Enumerable] Enumerable that will yield up to limit results
69
+ def stream(limit: nil, page_size: nil)
70
+ limits = @version.read_limits(limit, page_size)
71
+
72
+ page = self.page(page_size: limits[:page_size], )
73
+
74
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
75
+ end
76
+
77
+ ##
78
+ # When passed a block, yields CredentialListInstance records from the API.
79
+ # This operation lazily loads records as efficiently as possible until the limit
80
+ # is reached.
81
+ def each
82
+ limits = @version.read_limits
83
+
84
+ page = self.page(page_size: limits[:page_size], )
85
+
86
+ @version.stream(page,
87
+ limit: limits[:limit],
88
+ page_limit: limits[:page_limit]).each {|x| yield x}
89
+ end
90
+
91
+ ##
92
+ # Retrieve a single page of CredentialListInstance records from the API.
93
+ # Request is executed immediately.
94
+ # @param [String] page_token PageToken provided by the API
95
+ # @param [Integer] page_number Page Number, this value is simply for client state
96
+ # @param [Integer] page_size Number of records to return, defaults to 50
97
+ # @return [Page] Page of CredentialListInstance
98
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
99
+ params = Twilio::Values.of({
100
+ 'PageToken' => page_token,
101
+ 'Page' => page_number,
102
+ 'PageSize' => page_size,
103
+ })
104
+ response = @version.page(
105
+ 'GET',
106
+ @uri,
107
+ params
108
+ )
109
+ CredentialListPage.new(@version, response, @solution)
110
+ end
111
+
112
+ ##
113
+ # Retrieve a single page of CredentialListInstance records from the API.
114
+ # Request is executed immediately.
115
+ # @param [String] target_url API-generated URL for the requested results page
116
+ # @return [Page] Page of CredentialListInstance
117
+ def get_page(target_url)
118
+ response = @version.domain.request(
119
+ 'GET',
120
+ target_url
121
+ )
122
+ CredentialListPage.new(@version, response, @solution)
123
+ end
124
+
125
+ ##
126
+ # Provide a user friendly representation
127
+ def to_s
128
+ '#<Twilio.Trunking.V1.CredentialListList>'
129
+ end
130
+ end
131
+
132
+ class CredentialListPage < Page
133
+ ##
134
+ # Initialize the CredentialListPage
135
+ # @param [Version] version Version that contains the resource
136
+ # @param [Response] response Response from the API
137
+ # @param [Hash] solution Path solution for the resource
138
+ # @return [CredentialListPage] CredentialListPage
139
+ def initialize(version, response, solution)
140
+ super(version, response)
141
+
142
+ # Path Solution
143
+ @solution = solution
144
+ end
145
+
146
+ ##
147
+ # Build an instance of CredentialListInstance
148
+ # @param [Hash] payload Payload response from the API
149
+ # @return [CredentialListInstance] CredentialListInstance
150
+ def get_instance(payload)
151
+ CredentialListInstance.new(@version, payload, trunk_sid: @solution[:trunk_sid], )
152
+ end
153
+
154
+ ##
155
+ # Provide a user friendly representation
156
+ def to_s
157
+ '<Twilio.Trunking.V1.CredentialListPage>'
158
+ end
159
+ end
160
+
161
+ class CredentialListContext < InstanceContext
162
+ ##
163
+ # Initialize the CredentialListContext
164
+ # @param [Version] version Version that contains the resource
165
+ # @param [String] trunk_sid The trunk_sid
166
+ # @param [String] sid The sid
167
+ # @return [CredentialListContext] CredentialListContext
168
+ def initialize(version, trunk_sid, sid)
169
+ super(version)
170
+
171
+ # Path Solution
172
+ @solution = {trunk_sid: trunk_sid, sid: sid, }
173
+ @uri = "/Trunks/#{@solution[:trunk_sid]}/CredentialLists/#{@solution[:sid]}"
174
+ end
175
+
176
+ ##
177
+ # Fetch a CredentialListInstance
178
+ # @return [CredentialListInstance] Fetched CredentialListInstance
179
+ def fetch
180
+ params = Twilio::Values.of({})
181
+
182
+ payload = @version.fetch(
183
+ 'GET',
184
+ @uri,
185
+ params,
186
+ )
187
+
188
+ CredentialListInstance.new(
189
+ @version,
190
+ payload,
191
+ trunk_sid: @solution[:trunk_sid],
192
+ sid: @solution[:sid],
193
+ )
194
+ end
195
+
196
+ ##
197
+ # Deletes the CredentialListInstance
198
+ # @return [Boolean] true if delete succeeds, true otherwise
199
+ def delete
200
+ @version.delete('delete', @uri)
201
+ end
202
+
203
+ ##
204
+ # Provide a user friendly representation
205
+ def to_s
206
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
207
+ "#<Twilio.Trunking.V1.CredentialListContext #{context}>"
208
+ end
209
+ end
210
+
211
+ class CredentialListInstance < InstanceResource
212
+ ##
213
+ # Initialize the CredentialListInstance
214
+ # @param [Version] version Version that contains the resource
215
+ # @param [Hash] payload payload that contains response from Twilio
216
+ # @param [String] trunk_sid The trunk_sid
217
+ # @param [String] sid The sid
218
+ # @return [CredentialListInstance] CredentialListInstance
219
+ def initialize(version, payload, trunk_sid: nil, sid: nil)
220
+ super(version)
221
+
222
+ # Marshaled Properties
223
+ @properties = {
224
+ 'account_sid' => payload['account_sid'],
225
+ 'sid' => payload['sid'],
226
+ 'trunk_sid' => payload['trunk_sid'],
227
+ 'friendly_name' => payload['friendly_name'],
228
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
229
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
230
+ 'url' => payload['url'],
231
+ }
232
+
233
+ # Context
234
+ @instance_context = nil
235
+ @params = {'trunk_sid' => trunk_sid, 'sid' => sid || @properties['sid'], }
236
+ end
237
+
238
+ ##
239
+ # Generate an instance context for the instance, the context is capable of
240
+ # performing various actions. All instance actions are proxied to the context
241
+ # @return [CredentialListContext] CredentialListContext for this CredentialListInstance
242
+ def context
243
+ unless @instance_context
244
+ @instance_context = CredentialListContext.new(@version, @params['trunk_sid'], @params['sid'], )
245
+ end
246
+ @instance_context
247
+ end
248
+
249
+ ##
250
+ # @return [String] The account_sid
251
+ def account_sid
252
+ @properties['account_sid']
253
+ end
254
+
255
+ ##
256
+ # @return [String] The sid
257
+ def sid
258
+ @properties['sid']
259
+ end
260
+
261
+ ##
262
+ # @return [String] The trunk_sid
263
+ def trunk_sid
264
+ @properties['trunk_sid']
265
+ end
266
+
267
+ ##
268
+ # @return [String] The friendly_name
269
+ def friendly_name
270
+ @properties['friendly_name']
271
+ end
272
+
273
+ ##
274
+ # @return [Time] The date_created
275
+ def date_created
276
+ @properties['date_created']
277
+ end
278
+
279
+ ##
280
+ # @return [Time] The date_updated
281
+ def date_updated
282
+ @properties['date_updated']
283
+ end
284
+
285
+ ##
286
+ # @return [String] The url
287
+ def url
288
+ @properties['url']
289
+ end
290
+
291
+ ##
292
+ # Fetch a CredentialListInstance
293
+ # @return [CredentialListInstance] Fetched CredentialListInstance
294
+ def fetch
295
+ context.fetch
296
+ end
297
+
298
+ ##
299
+ # Deletes the CredentialListInstance
300
+ # @return [Boolean] true if delete succeeds, true otherwise
301
+ def delete
302
+ context.delete
303
+ end
304
+
305
+ ##
306
+ # Provide a user friendly representation
307
+ def to_s
308
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
309
+ "<Twilio.Trunking.V1.CredentialListInstance #{values}>"
310
+ end
311
+
312
+ ##
313
+ # Provide a detailed, user friendly representation
314
+ def inspect
315
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
316
+ "<Twilio.Trunking.V1.CredentialListInstance #{values}>"
317
+ end
318
+ end
319
+ end
320
+ end
321
+ end
322
+ end
323
+ end
@@ -0,0 +1,323 @@
1
+ ##
2
+ # This code was generated by
3
+ # \ / _ _ _| _ _
4
+ # | (_)\/(_)(_|\/| |(/_ v1.0.0
5
+ # / /
6
+
7
+ module Twilio
8
+ module REST
9
+ class Trunking < Domain
10
+ class V1 < Version
11
+ class TrunkContext < InstanceContext
12
+ class IpAccessControlListList < ListResource
13
+ ##
14
+ # Initialize the IpAccessControlListList
15
+ # @param [Version] version Version that contains the resource
16
+ # @param [String] trunk_sid The trunk_sid
17
+ # @return [IpAccessControlListList] IpAccessControlListList
18
+ def initialize(version, trunk_sid: nil)
19
+ super(version)
20
+
21
+ # Path Solution
22
+ @solution = {trunk_sid: trunk_sid}
23
+ @uri = "/Trunks/#{@solution[:trunk_sid]}/IpAccessControlLists"
24
+ end
25
+
26
+ ##
27
+ # Retrieve a single page of IpAccessControlListInstance records from the API.
28
+ # Request is executed immediately.
29
+ # @param [String] ip_access_control_list_sid The ip_access_control_list_sid
30
+ # @return [IpAccessControlListInstance] Newly created IpAccessControlListInstance
31
+ def create(ip_access_control_list_sid: nil)
32
+ data = Twilio::Values.of({'IpAccessControlListSid' => ip_access_control_list_sid, })
33
+
34
+ payload = @version.create(
35
+ 'POST',
36
+ @uri,
37
+ data: data
38
+ )
39
+
40
+ IpAccessControlListInstance.new(@version, payload, trunk_sid: @solution[:trunk_sid], )
41
+ end
42
+
43
+ ##
44
+ # Lists IpAccessControlListInstance records from the API as a list.
45
+ # Unlike stream(), this operation is eager and will load `limit` records into
46
+ # memory before returning.
47
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
48
+ # guarantees to never return more than limit. Default is no limit
49
+ # @param [Integer] page_size Number of records to fetch per request, when
50
+ # not set will use the default value of 50 records. If no page_size is defined
51
+ # but a limit is defined, stream() will attempt to read the limit with the most
52
+ # efficient page size, i.e. min(limit, 1000)
53
+ # @return [Array] Array of up to limit results
54
+ def list(limit: nil, page_size: nil)
55
+ self.stream(limit: limit, page_size: page_size).entries
56
+ end
57
+
58
+ ##
59
+ # Streams IpAccessControlListInstance records from the API as an Enumerable.
60
+ # This operation lazily loads records as efficiently as possible until the limit
61
+ # is reached.
62
+ # @param [Integer] limit Upper limit for the number of records to return. stream()
63
+ # guarantees to never return more than limit. Default is no limit.
64
+ # @param [Integer] page_size Number of records to fetch per request, when
65
+ # not set will use the default value of 50 records. If no page_size is defined
66
+ # but a limit is defined, stream() will attempt to read the limit with the most
67
+ # efficient page size, i.e. min(limit, 1000)
68
+ # @return [Enumerable] Enumerable that will yield up to limit results
69
+ def stream(limit: nil, page_size: nil)
70
+ limits = @version.read_limits(limit, page_size)
71
+
72
+ page = self.page(page_size: limits[:page_size], )
73
+
74
+ @version.stream(page, limit: limits[:limit], page_limit: limits[:page_limit])
75
+ end
76
+
77
+ ##
78
+ # When passed a block, yields IpAccessControlListInstance records from the API.
79
+ # This operation lazily loads records as efficiently as possible until the limit
80
+ # is reached.
81
+ def each
82
+ limits = @version.read_limits
83
+
84
+ page = self.page(page_size: limits[:page_size], )
85
+
86
+ @version.stream(page,
87
+ limit: limits[:limit],
88
+ page_limit: limits[:page_limit]).each {|x| yield x}
89
+ end
90
+
91
+ ##
92
+ # Retrieve a single page of IpAccessControlListInstance records from the API.
93
+ # Request is executed immediately.
94
+ # @param [String] page_token PageToken provided by the API
95
+ # @param [Integer] page_number Page Number, this value is simply for client state
96
+ # @param [Integer] page_size Number of records to return, defaults to 50
97
+ # @return [Page] Page of IpAccessControlListInstance
98
+ def page(page_token: :unset, page_number: :unset, page_size: :unset)
99
+ params = Twilio::Values.of({
100
+ 'PageToken' => page_token,
101
+ 'Page' => page_number,
102
+ 'PageSize' => page_size,
103
+ })
104
+ response = @version.page(
105
+ 'GET',
106
+ @uri,
107
+ params
108
+ )
109
+ IpAccessControlListPage.new(@version, response, @solution)
110
+ end
111
+
112
+ ##
113
+ # Retrieve a single page of IpAccessControlListInstance records from the API.
114
+ # Request is executed immediately.
115
+ # @param [String] target_url API-generated URL for the requested results page
116
+ # @return [Page] Page of IpAccessControlListInstance
117
+ def get_page(target_url)
118
+ response = @version.domain.request(
119
+ 'GET',
120
+ target_url
121
+ )
122
+ IpAccessControlListPage.new(@version, response, @solution)
123
+ end
124
+
125
+ ##
126
+ # Provide a user friendly representation
127
+ def to_s
128
+ '#<Twilio.Trunking.V1.IpAccessControlListList>'
129
+ end
130
+ end
131
+
132
+ class IpAccessControlListPage < Page
133
+ ##
134
+ # Initialize the IpAccessControlListPage
135
+ # @param [Version] version Version that contains the resource
136
+ # @param [Response] response Response from the API
137
+ # @param [Hash] solution Path solution for the resource
138
+ # @return [IpAccessControlListPage] IpAccessControlListPage
139
+ def initialize(version, response, solution)
140
+ super(version, response)
141
+
142
+ # Path Solution
143
+ @solution = solution
144
+ end
145
+
146
+ ##
147
+ # Build an instance of IpAccessControlListInstance
148
+ # @param [Hash] payload Payload response from the API
149
+ # @return [IpAccessControlListInstance] IpAccessControlListInstance
150
+ def get_instance(payload)
151
+ IpAccessControlListInstance.new(@version, payload, trunk_sid: @solution[:trunk_sid], )
152
+ end
153
+
154
+ ##
155
+ # Provide a user friendly representation
156
+ def to_s
157
+ '<Twilio.Trunking.V1.IpAccessControlListPage>'
158
+ end
159
+ end
160
+
161
+ class IpAccessControlListContext < InstanceContext
162
+ ##
163
+ # Initialize the IpAccessControlListContext
164
+ # @param [Version] version Version that contains the resource
165
+ # @param [String] trunk_sid The trunk_sid
166
+ # @param [String] sid The sid
167
+ # @return [IpAccessControlListContext] IpAccessControlListContext
168
+ def initialize(version, trunk_sid, sid)
169
+ super(version)
170
+
171
+ # Path Solution
172
+ @solution = {trunk_sid: trunk_sid, sid: sid, }
173
+ @uri = "/Trunks/#{@solution[:trunk_sid]}/IpAccessControlLists/#{@solution[:sid]}"
174
+ end
175
+
176
+ ##
177
+ # Fetch a IpAccessControlListInstance
178
+ # @return [IpAccessControlListInstance] Fetched IpAccessControlListInstance
179
+ def fetch
180
+ params = Twilio::Values.of({})
181
+
182
+ payload = @version.fetch(
183
+ 'GET',
184
+ @uri,
185
+ params,
186
+ )
187
+
188
+ IpAccessControlListInstance.new(
189
+ @version,
190
+ payload,
191
+ trunk_sid: @solution[:trunk_sid],
192
+ sid: @solution[:sid],
193
+ )
194
+ end
195
+
196
+ ##
197
+ # Deletes the IpAccessControlListInstance
198
+ # @return [Boolean] true if delete succeeds, true otherwise
199
+ def delete
200
+ @version.delete('delete', @uri)
201
+ end
202
+
203
+ ##
204
+ # Provide a user friendly representation
205
+ def to_s
206
+ context = @solution.map {|k, v| "#{k}: #{v}"}.join(',')
207
+ "#<Twilio.Trunking.V1.IpAccessControlListContext #{context}>"
208
+ end
209
+ end
210
+
211
+ class IpAccessControlListInstance < InstanceResource
212
+ ##
213
+ # Initialize the IpAccessControlListInstance
214
+ # @param [Version] version Version that contains the resource
215
+ # @param [Hash] payload payload that contains response from Twilio
216
+ # @param [String] trunk_sid The trunk_sid
217
+ # @param [String] sid The sid
218
+ # @return [IpAccessControlListInstance] IpAccessControlListInstance
219
+ def initialize(version, payload, trunk_sid: nil, sid: nil)
220
+ super(version)
221
+
222
+ # Marshaled Properties
223
+ @properties = {
224
+ 'account_sid' => payload['account_sid'],
225
+ 'sid' => payload['sid'],
226
+ 'trunk_sid' => payload['trunk_sid'],
227
+ 'friendly_name' => payload['friendly_name'],
228
+ 'date_created' => Twilio.deserialize_iso8601_datetime(payload['date_created']),
229
+ 'date_updated' => Twilio.deserialize_iso8601_datetime(payload['date_updated']),
230
+ 'url' => payload['url'],
231
+ }
232
+
233
+ # Context
234
+ @instance_context = nil
235
+ @params = {'trunk_sid' => trunk_sid, 'sid' => sid || @properties['sid'], }
236
+ end
237
+
238
+ ##
239
+ # Generate an instance context for the instance, the context is capable of
240
+ # performing various actions. All instance actions are proxied to the context
241
+ # @return [IpAccessControlListContext] IpAccessControlListContext for this IpAccessControlListInstance
242
+ def context
243
+ unless @instance_context
244
+ @instance_context = IpAccessControlListContext.new(@version, @params['trunk_sid'], @params['sid'], )
245
+ end
246
+ @instance_context
247
+ end
248
+
249
+ ##
250
+ # @return [String] The account_sid
251
+ def account_sid
252
+ @properties['account_sid']
253
+ end
254
+
255
+ ##
256
+ # @return [String] The sid
257
+ def sid
258
+ @properties['sid']
259
+ end
260
+
261
+ ##
262
+ # @return [String] The trunk_sid
263
+ def trunk_sid
264
+ @properties['trunk_sid']
265
+ end
266
+
267
+ ##
268
+ # @return [String] The friendly_name
269
+ def friendly_name
270
+ @properties['friendly_name']
271
+ end
272
+
273
+ ##
274
+ # @return [Time] The date_created
275
+ def date_created
276
+ @properties['date_created']
277
+ end
278
+
279
+ ##
280
+ # @return [Time] The date_updated
281
+ def date_updated
282
+ @properties['date_updated']
283
+ end
284
+
285
+ ##
286
+ # @return [String] The url
287
+ def url
288
+ @properties['url']
289
+ end
290
+
291
+ ##
292
+ # Fetch a IpAccessControlListInstance
293
+ # @return [IpAccessControlListInstance] Fetched IpAccessControlListInstance
294
+ def fetch
295
+ context.fetch
296
+ end
297
+
298
+ ##
299
+ # Deletes the IpAccessControlListInstance
300
+ # @return [Boolean] true if delete succeeds, true otherwise
301
+ def delete
302
+ context.delete
303
+ end
304
+
305
+ ##
306
+ # Provide a user friendly representation
307
+ def to_s
308
+ values = @params.map{|k, v| "#{k}: #{v}"}.join(" ")
309
+ "<Twilio.Trunking.V1.IpAccessControlListInstance #{values}>"
310
+ end
311
+
312
+ ##
313
+ # Provide a detailed, user friendly representation
314
+ def inspect
315
+ values = @properties.map{|k, v| "#{k}: #{v}"}.join(" ")
316
+ "<Twilio.Trunking.V1.IpAccessControlListInstance #{values}>"
317
+ end
318
+ end
319
+ end
320
+ end
321
+ end
322
+ end
323
+ end