twilio-api-sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +213 -0
  4. data/bin/console +15 -0
  5. data/lib/twilio_ap_is/api_helper.rb +10 -0
  6. data/lib/twilio_ap_is/apis/accounts_v1_auth_token_promotion_api.rb +27 -0
  7. data/lib/twilio_ap_is/apis/accounts_v1_aws_api.rb +137 -0
  8. data/lib/twilio_ap_is/apis/accounts_v1_bulk_consents_api.rb +41 -0
  9. data/lib/twilio_ap_is/apis/accounts_v1_bulk_contacts_api.rb +36 -0
  10. data/lib/twilio_ap_is/apis/accounts_v1_messaging_geopermissions_api.rb +54 -0
  11. data/lib/twilio_ap_is/apis/accounts_v1_public_key_api.rb +136 -0
  12. data/lib/twilio_ap_is/apis/accounts_v1_safelist_api.rb +69 -0
  13. data/lib/twilio_ap_is/apis/accounts_v1_secondary_auth_token_api.rb +39 -0
  14. data/lib/twilio_ap_is/apis/base_api.rb +67 -0
  15. data/lib/twilio_ap_is/apis/chat_v3_channel_api.rb +51 -0
  16. data/lib/twilio_ap_is/apis/conversations_v1_address_configuration_api.rb +218 -0
  17. data/lib/twilio_ap_is/apis/conversations_v1_binding_api.rb +116 -0
  18. data/lib/twilio_ap_is/apis/conversations_v1_configuration_api.rb +133 -0
  19. data/lib/twilio_ap_is/apis/conversations_v1_conversation_api.rb +550 -0
  20. data/lib/twilio_ap_is/apis/conversations_v1_conversation_with_participants_api.rb +182 -0
  21. data/lib/twilio_ap_is/apis/conversations_v1_credential_api.rb +189 -0
  22. data/lib/twilio_ap_is/apis/conversations_v1_delivery_receipt_api.rb +183 -0
  23. data/lib/twilio_ap_is/apis/conversations_v1_message_api.rb +497 -0
  24. data/lib/twilio_ap_is/apis/conversations_v1_notification_api.rb +124 -0
  25. data/lib/twilio_ap_is/apis/conversations_v1_participant_api.rb +546 -0
  26. data/lib/twilio_ap_is/apis/conversations_v1_participant_conversation_api.rb +99 -0
  27. data/lib/twilio_ap_is/apis/conversations_v1_role_api.rb +325 -0
  28. data/lib/twilio_ap_is/apis/conversations_v1_service_api.rb +98 -0
  29. data/lib/twilio_ap_is/apis/conversations_v1_user_api.rb +364 -0
  30. data/lib/twilio_ap_is/apis/conversations_v1_user_conversation_api.rb +335 -0
  31. data/lib/twilio_ap_is/apis/conversations_v1_webhook_api.rb +561 -0
  32. data/lib/twilio_ap_is/apis/notify_v1_binding_api.rb +186 -0
  33. data/lib/twilio_ap_is/apis/notify_v1_credential_api.rb +183 -0
  34. data/lib/twilio_ap_is/apis/notify_v1_notification_api.rb +174 -0
  35. data/lib/twilio_ap_is/apis/notify_v1_service_api.rb +262 -0
  36. data/lib/twilio_ap_is/apis/taskrouter_v1_activity_api.rb +177 -0
  37. data/lib/twilio_ap_is/apis/taskrouter_v1_event_api.rb +125 -0
  38. data/lib/twilio_ap_is/apis/taskrouter_v1_task_api.rb +310 -0
  39. data/lib/twilio_ap_is/apis/taskrouter_v1_task_channel_api.rb +173 -0
  40. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_api.rb +232 -0
  41. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_bulk_real_time_statistics_api.rb +36 -0
  42. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_cumulative_statistics_api.rb +63 -0
  43. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_real_time_statistics_api.rb +41 -0
  44. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queue_statistics_api.rb +63 -0
  45. data/lib/twilio_ap_is/apis/taskrouter_v1_task_queues_statistics_api.rb +72 -0
  46. data/lib/twilio_ap_is/apis/taskrouter_v1_task_reservation_api.rb +396 -0
  47. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_api.rb +232 -0
  48. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_channel_api.rb +126 -0
  49. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_reservation_api.rb +385 -0
  50. data/lib/twilio_ap_is/apis/taskrouter_v1_worker_statistics_api.rb +57 -0
  51. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_cumulative_statistics_api.rb +51 -0
  52. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_real_time_statistics_api.rb +35 -0
  53. data/lib/twilio_ap_is/apis/taskrouter_v1_workers_statistics_api.rb +63 -0
  54. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_api.rb +213 -0
  55. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_cumulative_statistics_api.rb +68 -0
  56. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_real_time_statistics_api.rb +41 -0
  57. data/lib/twilio_ap_is/apis/taskrouter_v1_workflow_statistics_api.rb +67 -0
  58. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_api.rb +225 -0
  59. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_cumulative_statistics_api.rb +62 -0
  60. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_real_time_statistics_api.rb +35 -0
  61. data/lib/twilio_ap_is/apis/taskrouter_v1_workspace_statistics_api.rb +61 -0
  62. data/lib/twilio_ap_is/apis/verify_v2_service_api.rb +178 -0
  63. data/lib/twilio_ap_is/apis/verify_v2_verification_api.rb +143 -0
  64. data/lib/twilio_ap_is/apis/verify_v2_verification_check_api.rb +61 -0
  65. data/lib/twilio_ap_is/client.rb +417 -0
  66. data/lib/twilio_ap_is/configuration.rb +187 -0
  67. data/lib/twilio_ap_is/exceptions/api_exception.rb +21 -0
  68. data/lib/twilio_ap_is/exceptions/v2_services_verifications429_error_exception.rb +63 -0
  69. data/lib/twilio_ap_is/http/api_response.rb +19 -0
  70. data/lib/twilio_ap_is/http/auth/basic_auth.rb +62 -0
  71. data/lib/twilio_ap_is/http/http_call_back.rb +10 -0
  72. data/lib/twilio_ap_is/http/http_method_enum.rb +10 -0
  73. data/lib/twilio_ap_is/http/http_request.rb +10 -0
  74. data/lib/twilio_ap_is/http/http_response.rb +10 -0
  75. data/lib/twilio_ap_is/http/proxy_settings.rb +22 -0
  76. data/lib/twilio_ap_is/logging/configuration/api_logging_configuration.rb +186 -0
  77. data/lib/twilio_ap_is/logging/sdk_logger.rb +17 -0
  78. data/lib/twilio_ap_is/models/access_token.rb +188 -0
  79. data/lib/twilio_ap_is/models/access_token_enum_factor_types.rb +26 -0
  80. data/lib/twilio_ap_is/models/activity.rb +189 -0
  81. data/lib/twilio_ap_is/models/auth_token_promotion.rb +142 -0
  82. data/lib/twilio_ap_is/models/base_model.rb +110 -0
  83. data/lib/twilio_ap_is/models/binding.rb +269 -0
  84. data/lib/twilio_ap_is/models/binding_binding_type.rb +53 -0
  85. data/lib/twilio_ap_is/models/bucket.rb +186 -0
  86. data/lib/twilio_ap_is/models/bulk_consents.rb +83 -0
  87. data/lib/twilio_ap_is/models/bulk_contacts.rb +83 -0
  88. data/lib/twilio_ap_is/models/challenge.rb +317 -0
  89. data/lib/twilio_ap_is/models/challenge_enum_challenge_reasons.rb +41 -0
  90. data/lib/twilio_ap_is/models/challenge_enum_challenge_statuses.rb +45 -0
  91. data/lib/twilio_ap_is/models/challenge_enum_factor_types.rb +41 -0
  92. data/lib/twilio_ap_is/models/channel.rb +249 -0
  93. data/lib/twilio_ap_is/models/channel_channel_type.rb +36 -0
  94. data/lib/twilio_ap_is/models/channel_webhook_enabled_type.rb +36 -0
  95. data/lib/twilio_ap_is/models/configuration.rb +164 -0
  96. data/lib/twilio_ap_is/models/configuration_address.rb +199 -0
  97. data/lib/twilio_ap_is/models/configuration_address_auto_creation_type.rb +40 -0
  98. data/lib/twilio_ap_is/models/configuration_address_method.rb +36 -0
  99. data/lib/twilio_ap_is/models/configuration_address_type.rb +60 -0
  100. data/lib/twilio_ap_is/models/configuration_webhook.rb +154 -0
  101. data/lib/twilio_ap_is/models/configuration_webhook_method.rb +46 -0
  102. data/lib/twilio_ap_is/models/configuration_webhook_target.rb +37 -0
  103. data/lib/twilio_ap_is/models/conversation.rb +264 -0
  104. data/lib/twilio_ap_is/models/conversation_message.rb +268 -0
  105. data/lib/twilio_ap_is/models/conversation_message_order_type.rb +36 -0
  106. data/lib/twilio_ap_is/models/conversation_message_receipt.rb +219 -0
  107. data/lib/twilio_ap_is/models/conversation_message_receipt_delivery_status.rb +49 -0
  108. data/lib/twilio_ap_is/models/conversation_participant.rb +240 -0
  109. data/lib/twilio_ap_is/models/conversation_scoped_webhook.rb +178 -0
  110. data/lib/twilio_ap_is/models/conversation_scoped_webhook_method.rb +36 -0
  111. data/lib/twilio_ap_is/models/conversation_scoped_webhook_target.rb +40 -0
  112. data/lib/twilio_ap_is/models/conversation_state.rb +45 -0
  113. data/lib/twilio_ap_is/models/conversation_webhook_method.rb +36 -0
  114. data/lib/twilio_ap_is/models/conversation_webhook_target.rb +37 -0
  115. data/lib/twilio_ap_is/models/conversation_with_participants.rb +264 -0
  116. data/lib/twilio_ap_is/models/conversation_with_participants_state.rb +45 -0
  117. data/lib/twilio_ap_is/models/credential.rb +175 -0
  118. data/lib/twilio_ap_is/models/credential1.rb +174 -0
  119. data/lib/twilio_ap_is/models/credential_aws.rb +153 -0
  120. data/lib/twilio_ap_is/models/credential_public_key.rb +153 -0
  121. data/lib/twilio_ap_is/models/credential_push_type.rb +41 -0
  122. data/lib/twilio_ap_is/models/entity.rb +177 -0
  123. data/lib/twilio_ap_is/models/event.rb +270 -0
  124. data/lib/twilio_ap_is/models/factor.rb +235 -0
  125. data/lib/twilio_ap_is/models/factor_enum_factor_statuses.rb +36 -0
  126. data/lib/twilio_ap_is/models/factor_enum_factor_type.rb +40 -0
  127. data/lib/twilio_ap_is/models/factor_enum_notification_platforms.rb +40 -0
  128. data/lib/twilio_ap_is/models/factor_enum_totp_algorithms.rb +40 -0
  129. data/lib/twilio_ap_is/models/form_enum_form_types.rb +26 -0
  130. data/lib/twilio_ap_is/models/list_activity_response.rb +94 -0
  131. data/lib/twilio_ap_is/models/list_binding_response.rb +94 -0
  132. data/lib/twilio_ap_is/models/list_configuration_address_response.rb +95 -0
  133. data/lib/twilio_ap_is/models/list_conversation_message_receipt_response.rb +95 -0
  134. data/lib/twilio_ap_is/models/list_conversation_message_response.rb +94 -0
  135. data/lib/twilio_ap_is/models/list_conversation_participant_response.rb +94 -0
  136. data/lib/twilio_ap_is/models/list_conversation_response.rb +94 -0
  137. data/lib/twilio_ap_is/models/list_conversation_scoped_webhook_response.rb +94 -0
  138. data/lib/twilio_ap_is/models/list_credential_aws_response.rb +94 -0
  139. data/lib/twilio_ap_is/models/list_credential_public_key_response.rb +94 -0
  140. data/lib/twilio_ap_is/models/list_credential_response.rb +94 -0
  141. data/lib/twilio_ap_is/models/list_event_response.rb +94 -0
  142. data/lib/twilio_ap_is/models/list_participant_conversation_response.rb +94 -0
  143. data/lib/twilio_ap_is/models/list_role_response.rb +94 -0
  144. data/lib/twilio_ap_is/models/list_service_binding_response.rb +94 -0
  145. data/lib/twilio_ap_is/models/list_service_conversation_message_receipt_response.rb +95 -0
  146. data/lib/twilio_ap_is/models/list_service_conversation_message_response.rb +94 -0
  147. data/lib/twilio_ap_is/models/list_service_conversation_participant_response.rb +94 -0
  148. data/lib/twilio_ap_is/models/list_service_conversation_response.rb +94 -0
  149. data/lib/twilio_ap_is/models/list_service_conversation_scoped_webhook_response.rb +94 -0
  150. data/lib/twilio_ap_is/models/list_service_participant_conversation_response.rb +94 -0
  151. data/lib/twilio_ap_is/models/list_service_response.rb +94 -0
  152. data/lib/twilio_ap_is/models/list_service_role_response.rb +94 -0
  153. data/lib/twilio_ap_is/models/list_service_user_conversation_response.rb +94 -0
  154. data/lib/twilio_ap_is/models/list_service_user_response.rb +94 -0
  155. data/lib/twilio_ap_is/models/list_task_channel_response.rb +94 -0
  156. data/lib/twilio_ap_is/models/list_task_queue_response.rb +94 -0
  157. data/lib/twilio_ap_is/models/list_task_queues_statistics_response.rb +95 -0
  158. data/lib/twilio_ap_is/models/list_task_reservation_response.rb +94 -0
  159. data/lib/twilio_ap_is/models/list_task_response.rb +94 -0
  160. data/lib/twilio_ap_is/models/list_user_conversation_response.rb +94 -0
  161. data/lib/twilio_ap_is/models/list_user_response.rb +94 -0
  162. data/lib/twilio_ap_is/models/list_worker_channel_response.rb +94 -0
  163. data/lib/twilio_ap_is/models/list_worker_reservation_response.rb +94 -0
  164. data/lib/twilio_ap_is/models/list_worker_response.rb +94 -0
  165. data/lib/twilio_ap_is/models/list_workflow_response.rb +94 -0
  166. data/lib/twilio_ap_is/models/list_workspace_response.rb +94 -0
  167. data/lib/twilio_ap_is/models/messaging_configuration.rb +170 -0
  168. data/lib/twilio_ap_is/models/meta.rb +140 -0
  169. data/lib/twilio_ap_is/models/msg_geopermissions.rb +86 -0
  170. data/lib/twilio_ap_is/models/new_factor.rb +277 -0
  171. data/lib/twilio_ap_is/models/new_factor_enum_factor_statuses.rb +36 -0
  172. data/lib/twilio_ap_is/models/new_factor_enum_factor_types.rb +40 -0
  173. data/lib/twilio_ap_is/models/new_factor_enum_notification_platforms.rb +40 -0
  174. data/lib/twilio_ap_is/models/new_factor_enum_totp_algorithms.rb +40 -0
  175. data/lib/twilio_ap_is/models/notif_priority.rb +43 -0
  176. data/lib/twilio_ap_is/models/notification.rb +363 -0
  177. data/lib/twilio_ap_is/models/notification1.rb +181 -0
  178. data/lib/twilio_ap_is/models/participant_conversation.rb +325 -0
  179. data/lib/twilio_ap_is/models/participant_conversation_state.rb +41 -0
  180. data/lib/twilio_ap_is/models/rate_limit.rb +189 -0
  181. data/lib/twilio_ap_is/models/role.rb +192 -0
  182. data/lib/twilio_ap_is/models/role_role_type.rb +40 -0
  183. data/lib/twilio_ap_is/models/safelist.rb +88 -0
  184. data/lib/twilio_ap_is/models/safelist1.rb +99 -0
  185. data/lib/twilio_ap_is/models/secondary_auth_token.rb +145 -0
  186. data/lib/twilio_ap_is/models/service.rb +164 -0
  187. data/lib/twilio_ap_is/models/service1.rb +380 -0
  188. data/lib/twilio_ap_is/models/service2.rb +350 -0
  189. data/lib/twilio_ap_is/models/service_binding.rb +226 -0
  190. data/lib/twilio_ap_is/models/service_binding_binding_type.rb +47 -0
  191. data/lib/twilio_ap_is/models/service_configuration.rb +180 -0
  192. data/lib/twilio_ap_is/models/service_conversation.rb +264 -0
  193. data/lib/twilio_ap_is/models/service_conversation_message.rb +282 -0
  194. data/lib/twilio_ap_is/models/service_conversation_message_order_type.rb +36 -0
  195. data/lib/twilio_ap_is/models/service_conversation_message_receipt.rb +233 -0
  196. data/lib/twilio_ap_is/models/service_conversation_message_receipt_delivery_status.rb +49 -0
  197. data/lib/twilio_ap_is/models/service_conversation_participant.rb +256 -0
  198. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook.rb +191 -0
  199. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook_method.rb +36 -0
  200. data/lib/twilio_ap_is/models/service_conversation_scoped_webhook_target.rb +40 -0
  201. data/lib/twilio_ap_is/models/service_conversation_state.rb +45 -0
  202. data/lib/twilio_ap_is/models/service_conversation_with_participants.rb +264 -0
  203. data/lib/twilio_ap_is/models/service_conversation_with_participants_state.rb +45 -0
  204. data/lib/twilio_ap_is/models/service_notification.rb +155 -0
  205. data/lib/twilio_ap_is/models/service_participant_conversation.rb +325 -0
  206. data/lib/twilio_ap_is/models/service_participant_conversation_state.rb +41 -0
  207. data/lib/twilio_ap_is/models/service_role.rb +192 -0
  208. data/lib/twilio_ap_is/models/service_role_role_type.rb +40 -0
  209. data/lib/twilio_ap_is/models/service_stats_conversations_rate_limiting_errors_source.rb +36 -0
  210. data/lib/twilio_ap_is/models/service_user.rb +250 -0
  211. data/lib/twilio_ap_is/models/service_user_conversation.rb +317 -0
  212. data/lib/twilio_ap_is/models/service_user_conversation_notification_level.rb +37 -0
  213. data/lib/twilio_ap_is/models/service_user_conversation_state.rb +41 -0
  214. data/lib/twilio_ap_is/models/service_webhook_configuration.rb +160 -0
  215. data/lib/twilio_ap_is/models/service_webhook_configuration_method.rb +37 -0
  216. data/lib/twilio_ap_is/models/stats_twilsock_rate_limiting_errors_source.rb +26 -0
  217. data/lib/twilio_ap_is/models/task_channel.rb +204 -0
  218. data/lib/twilio_ap_is/models/task_queue.rb +278 -0
  219. data/lib/twilio_ap_is/models/task_queue_bulk_real_time_statistics.rb +141 -0
  220. data/lib/twilio_ap_is/models/task_queue_cumulative.rb +356 -0
  221. data/lib/twilio_ap_is/models/task_queue_real_time_statistics.rb +250 -0
  222. data/lib/twilio_ap_is/models/task_queue_statistics.rb +135 -0
  223. data/lib/twilio_ap_is/models/task_queue_task_order.rb +40 -0
  224. data/lib/twilio_ap_is/models/task_queues_stats.rb +124 -0
  225. data/lib/twilio_ap_is/models/task_reservation.rb +210 -0
  226. data/lib/twilio_ap_is/models/task_reservation_call_status.rb +44 -0
  227. data/lib/twilio_ap_is/models/task_reservation_conference_event.rb +56 -0
  228. data/lib/twilio_ap_is/models/task_reservation_status.rb +61 -0
  229. data/lib/twilio_ap_is/models/task_reservation_supervisor_mode.rb +40 -0
  230. data/lib/twilio_ap_is/models/task_router_task.rb +394 -0
  231. data/lib/twilio_ap_is/models/task_status.rb +53 -0
  232. data/lib/twilio_ap_is/models/user.rb +250 -0
  233. data/lib/twilio_ap_is/models/user_binding_binding_type.rb +52 -0
  234. data/lib/twilio_ap_is/models/user_conversation.rb +317 -0
  235. data/lib/twilio_ap_is/models/user_conversation_notification_level.rb +37 -0
  236. data/lib/twilio_ap_is/models/user_conversation_state.rb +41 -0
  237. data/lib/twilio_ap_is/models/v2_form.rb +112 -0
  238. data/lib/twilio_ap_is/models/verification.rb +262 -0
  239. data/lib/twilio_ap_is/models/verification_attempt.rb +219 -0
  240. data/lib/twilio_ap_is/models/verification_attempt_enum_attempt_status.rb +40 -0
  241. data/lib/twilio_ap_is/models/verification_attempt_enum_call_status.rb +60 -0
  242. data/lib/twilio_ap_is/models/verification_attempt_enum_channels.rb +49 -0
  243. data/lib/twilio_ap_is/models/verification_attempt_enum_conversion_status.rb +38 -0
  244. data/lib/twilio_ap_is/models/verification_attempt_enum_message_status.rb +80 -0
  245. data/lib/twilio_ap_is/models/verification_attempts.rb +129 -0
  246. data/lib/twilio_ap_is/models/verification_attempts_summary_enum_channels.rb +48 -0
  247. data/lib/twilio_ap_is/models/verification_check.rb +231 -0
  248. data/lib/twilio_ap_is/models/verification_check_enum_channel.rb +50 -0
  249. data/lib/twilio_ap_is/models/verification_enum_channel.rb +50 -0
  250. data/lib/twilio_ap_is/models/verification_enum_risk_check.rb +39 -0
  251. data/lib/twilio_ap_is/models/verification_enum_status.rb +37 -0
  252. data/lib/twilio_ap_is/models/verification_template.rb +126 -0
  253. data/lib/twilio_ap_is/models/webhook.rb +222 -0
  254. data/lib/twilio_ap_is/models/webhook_enum_status.rb +37 -0
  255. data/lib/twilio_ap_is/models/webhook_enum_version.rb +37 -0
  256. data/lib/twilio_ap_is/models/worker.rb +247 -0
  257. data/lib/twilio_ap_is/models/worker_channel.rb +244 -0
  258. data/lib/twilio_ap_is/models/worker_instance_statistics.rb +122 -0
  259. data/lib/twilio_ap_is/models/worker_reservation.rb +210 -0
  260. data/lib/twilio_ap_is/models/worker_reservation_call_status.rb +44 -0
  261. data/lib/twilio_ap_is/models/worker_reservation_conference_event.rb +56 -0
  262. data/lib/twilio_ap_is/models/worker_reservation_status.rb +61 -0
  263. data/lib/twilio_ap_is/models/worker_statistics.rb +122 -0
  264. data/lib/twilio_ap_is/models/workers_cumulative_statistics.rb +221 -0
  265. data/lib/twilio_ap_is/models/workers_real_time_statistics.rb +124 -0
  266. data/lib/twilio_ap_is/models/workflow.rb +247 -0
  267. data/lib/twilio_ap_is/models/workflow_cumulative_statistics.rb +347 -0
  268. data/lib/twilio_ap_is/models/workflow_real_time_statistics.rb +173 -0
  269. data/lib/twilio_ap_is/models/workflow_statistics.rb +135 -0
  270. data/lib/twilio_ap_is/models/workspace.rb +285 -0
  271. data/lib/twilio_ap_is/models/workspace_cumulative_statistics.rb +334 -0
  272. data/lib/twilio_ap_is/models/workspace_queue_order.rb +40 -0
  273. data/lib/twilio_ap_is/models/workspace_real_time_statistics.rb +185 -0
  274. data/lib/twilio_ap_is/models/workspace_statistics.rb +122 -0
  275. data/lib/twilio_ap_is/utilities/date_time_helper.rb +11 -0
  276. data/lib/twilio_ap_is/utilities/file_wrapper.rb +28 -0
  277. data/lib/twilio_ap_is.rb +326 -0
  278. metadata +361 -0
@@ -0,0 +1,154 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # ConfigurationWebhook Model.
8
+ class ConfigurationWebhook < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # The unique ID of the
13
+ # [Account](https://www.twilio.com/docs/iam/api/account) responsible for
14
+ # this conversation.
15
+ # @return [String]
16
+ attr_accessor :account_sid
17
+
18
+ # The HTTP method to be used when sending a webhook request.
19
+ # @return [ConfigurationWebhookMethod]
20
+ attr_accessor :method
21
+
22
+ # The list of webhook event triggers that are enabled for this Service:
23
+ # `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onMessageAdd`,
24
+ # `onMessageUpdate`, `onMessageRemove`, `onConversationUpdated`,
25
+ # `onConversationRemoved`, `onConversationAdd`, `onConversationAdded`,
26
+ # `onConversationRemove`, `onConversationUpdate`,
27
+ # `onConversationStateUpdated`, `onParticipantAdded`,
28
+ # `onParticipantUpdated`, `onParticipantRemoved`, `onParticipantAdd`,
29
+ # `onParticipantRemove`, `onParticipantUpdate`, `onDeliveryUpdated`,
30
+ # `onUserAdded`, `onUserUpdate`, `onUserUpdated`
31
+ # @return [Array[String]]
32
+ attr_accessor :filters
33
+
34
+ # The absolute url the pre-event webhook request should be sent to.
35
+ # @return [String]
36
+ attr_accessor :pre_webhook_url
37
+
38
+ # The absolute url the post-event webhook request should be sent to.
39
+ # @return [String]
40
+ attr_accessor :post_webhook_url
41
+
42
+ # The routing target of the webhook. Can be ordinary or route internally to
43
+ # Flex
44
+ # @return [ConfigurationWebhookTarget]
45
+ attr_accessor :target
46
+
47
+ # An absolute API resource API resource URL for this webhook.
48
+ # @return [String]
49
+ attr_accessor :url
50
+
51
+ # A mapping from model property names to API property names.
52
+ def self.names
53
+ @_hash = {} if @_hash.nil?
54
+ @_hash['account_sid'] = 'account_sid'
55
+ @_hash['method'] = 'method'
56
+ @_hash['filters'] = 'filters'
57
+ @_hash['pre_webhook_url'] = 'pre_webhook_url'
58
+ @_hash['post_webhook_url'] = 'post_webhook_url'
59
+ @_hash['target'] = 'target'
60
+ @_hash['url'] = 'url'
61
+ @_hash
62
+ end
63
+
64
+ # An array for optional fields
65
+ def self.optionals
66
+ %w[
67
+ account_sid
68
+ method
69
+ filters
70
+ pre_webhook_url
71
+ post_webhook_url
72
+ target
73
+ url
74
+ ]
75
+ end
76
+
77
+ # An array for nullable fields
78
+ def self.nullables
79
+ %w[
80
+ account_sid
81
+ filters
82
+ pre_webhook_url
83
+ post_webhook_url
84
+ url
85
+ ]
86
+ end
87
+
88
+ def initialize(account_sid: SKIP, method: SKIP, filters: SKIP,
89
+ pre_webhook_url: SKIP, post_webhook_url: SKIP, target: SKIP,
90
+ url: SKIP, additional_properties: nil)
91
+ # Add additional model properties to the instance
92
+ additional_properties = {} if additional_properties.nil?
93
+
94
+ @account_sid = account_sid unless account_sid == SKIP
95
+ @method = method unless method == SKIP
96
+ @filters = filters unless filters == SKIP
97
+ @pre_webhook_url = pre_webhook_url unless pre_webhook_url == SKIP
98
+ @post_webhook_url = post_webhook_url unless post_webhook_url == SKIP
99
+ @target = target unless target == SKIP
100
+ @url = url unless url == SKIP
101
+ @additional_properties = additional_properties
102
+ end
103
+
104
+ # Creates an instance of the object from a hash.
105
+ def self.from_hash(hash)
106
+ return nil unless hash
107
+
108
+ # Extract variables from the hash.
109
+ account_sid = hash.key?('account_sid') ? hash['account_sid'] : SKIP
110
+ method = hash.key?('method') ? hash['method'] : SKIP
111
+ filters = hash.key?('filters') ? hash['filters'] : SKIP
112
+ pre_webhook_url =
113
+ hash.key?('pre_webhook_url') ? hash['pre_webhook_url'] : SKIP
114
+ post_webhook_url =
115
+ hash.key?('post_webhook_url') ? hash['post_webhook_url'] : SKIP
116
+ target = hash.key?('target') ? hash['target'] : SKIP
117
+ url = hash.key?('url') ? hash['url'] : SKIP
118
+
119
+ # Create a new hash for additional properties, removing known properties.
120
+ new_hash = hash.reject { |k, _| names.value?(k) }
121
+
122
+ additional_properties = APIHelper.get_additional_properties(
123
+ new_hash, proc { |value| value }
124
+ )
125
+
126
+ # Create object from extracted values.
127
+ ConfigurationWebhook.new(account_sid: account_sid,
128
+ method: method,
129
+ filters: filters,
130
+ pre_webhook_url: pre_webhook_url,
131
+ post_webhook_url: post_webhook_url,
132
+ target: target,
133
+ url: url,
134
+ additional_properties: additional_properties)
135
+ end
136
+
137
+ # Provides a human-readable string representation of the object.
138
+ def to_s
139
+ class_name = self.class.name.split('::').last
140
+ "<#{class_name} account_sid: #{@account_sid}, method: #{@method}, filters: #{@filters},"\
141
+ " pre_webhook_url: #{@pre_webhook_url}, post_webhook_url: #{@post_webhook_url}, target:"\
142
+ " #{@target}, url: #{@url}, additional_properties: #{@additional_properties}>"
143
+ end
144
+
145
+ # Provides a debugging-friendly string with detailed object information.
146
+ def inspect
147
+ class_name = self.class.name.split('::').last
148
+ "<#{class_name} account_sid: #{@account_sid.inspect}, method: #{@method.inspect}, filters:"\
149
+ " #{@filters.inspect}, pre_webhook_url: #{@pre_webhook_url.inspect}, post_webhook_url:"\
150
+ " #{@post_webhook_url.inspect}, target: #{@target.inspect}, url: #{@url.inspect},"\
151
+ " additional_properties: #{@additional_properties}>"
152
+ end
153
+ end
154
+ end
@@ -0,0 +1,46 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # The HTTP method to be used when sending a webhook request., The HTTP method
8
+ # we should use to call `conference_recording_status_callback`. Can be: `GET`
9
+ # or `POST` and defaults to `POST`., The HTTP method we should use to call
10
+ # `conference_status_callback`. Can be: `GET` or `POST` and defaults to
11
+ # `POST`., The HTTP method we should use when we call
12
+ # `recording_status_callback`. Can be: `GET` or `POST` and defaults to
13
+ # `POST`., The HTTP method we should use to call `status_callback`. Can be:
14
+ # `POST` or `GET` and the default is `POST`., The HTTP method we should use to
15
+ # call `wait_url`. Can be `GET` or `POST` and the default is `POST`. When
16
+ # using a static audio file, this should be `GET` so that we can cache the
17
+ # file., The method to be used when calling the webhook's URL.
18
+ class ConfigurationWebhookMethod
19
+ CONFIGURATION_WEBHOOK_METHOD = [
20
+ # TODO: Write general description for GET
21
+ GET = 'GET'.freeze,
22
+
23
+ # TODO: Write general description for POST
24
+ POST = 'POST'.freeze
25
+ ].freeze
26
+
27
+ def self.validate(value)
28
+ return false if value.nil?
29
+
30
+ CONFIGURATION_WEBHOOK_METHOD.include?(value)
31
+ end
32
+
33
+ def self.from_value(value, default_value = GET)
34
+ return default_value if value.nil?
35
+
36
+ str = value.to_s.strip
37
+
38
+ case str.downcase
39
+ when 'get' then GET
40
+ when 'post' then POST
41
+ else
42
+ default_value
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,37 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TwilioApIs
7
+ # The routing target of the webhook. Can be ordinary or route internally to
8
+ # Flex
9
+ class ConfigurationWebhookTarget
10
+ CONFIGURATION_WEBHOOK_TARGET = [
11
+ # TODO: Write general description for WEBHOOK
12
+ WEBHOOK = 'webhook'.freeze,
13
+
14
+ # TODO: Write general description for FLEX
15
+ FLEX = 'flex'.freeze
16
+ ].freeze
17
+
18
+ def self.validate(value)
19
+ return false if value.nil?
20
+
21
+ CONFIGURATION_WEBHOOK_TARGET.include?(value)
22
+ end
23
+
24
+ def self.from_value(value, default_value = WEBHOOK)
25
+ return default_value if value.nil?
26
+
27
+ str = value.to_s.strip
28
+
29
+ case str.downcase
30
+ when 'webhook' then WEBHOOK
31
+ when 'flex' then FLEX
32
+ else
33
+ default_value
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,264 @@
1
+ # twilio_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module TwilioApIs
8
+ # Conversation Model.
9
+ class Conversation < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # The unique ID of the
14
+ # [Account](https://www.twilio.com/docs/iam/api/account) responsible for
15
+ # this conversation.
16
+ # @return [String]
17
+ attr_accessor :account_sid
18
+
19
+ # The unique ID of the [Conversation
20
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
21
+ # this conversation belongs to.
22
+ # @return [String]
23
+ attr_accessor :chat_service_sid
24
+
25
+ # The unique ID of the [Messaging
26
+ # Service](https://www.twilio.com/docs/messaging/api/service-resource) this
27
+ # conversation belongs to.
28
+ # @return [String]
29
+ attr_accessor :messaging_service_sid
30
+
31
+ # A 34 character string that uniquely identifies this resource.
32
+ # @return [String]
33
+ attr_accessor :sid
34
+
35
+ # The human-readable name of this conversation, limited to 256 characters.
36
+ # Optional.
37
+ # @return [String]
38
+ attr_accessor :friendly_name
39
+
40
+ # An application-defined string that uniquely identifies the resource. It
41
+ # can be used to address the resource in place of the resource's `sid` in
42
+ # the URL.
43
+ # @return [String]
44
+ attr_accessor :unique_name
45
+
46
+ # An optional string metadata field you can use to store any data you wish.
47
+ # The string value must contain structurally valid JSON if specified.
48
+ # **Note** that if the attributes are not set "{}" will be returned.
49
+ # @return [String]
50
+ attr_accessor :attributes
51
+
52
+ # Current state of this conversation. Can be either `initializing`,
53
+ # `active`, `inactive` or `closed` and defaults to `active`
54
+ # @return [ConversationState]
55
+ attr_accessor :state
56
+
57
+ # The date that this resource was created.
58
+ # @return [DateTime]
59
+ attr_accessor :date_created
60
+
61
+ # The date that this resource was last updated.
62
+ # @return [DateTime]
63
+ attr_accessor :date_updated
64
+
65
+ # Timer date values representing state update for this conversation.
66
+ # @return [Object]
67
+ attr_accessor :timers
68
+
69
+ # An absolute API resource URL for this conversation.
70
+ # @return [String]
71
+ attr_accessor :url
72
+
73
+ # Contains absolute URLs to access the
74
+ # [participants](https://www.twilio.com/docs/conversations/api/conversation-
75
+ # participant-resource),
76
+ # [messages](https://www.twilio.com/docs/conversations/api/conversation-mess
77
+ # age-resource) and
78
+ # [webhooks](https://www.twilio.com/docs/conversations/api/conversation-scop
79
+ # ed-webhook-resource) of this conversation.
80
+ # @return [Object]
81
+ attr_accessor :links
82
+
83
+ # Contains absolute URLs to access the
84
+ # [participants](https://www.twilio.com/docs/conversations/api/conversation-
85
+ # participant-resource),
86
+ # [messages](https://www.twilio.com/docs/conversations/api/conversation-mess
87
+ # age-resource) and
88
+ # [webhooks](https://www.twilio.com/docs/conversations/api/conversation-scop
89
+ # ed-webhook-resource) of this conversation.
90
+ # @return [Object]
91
+ attr_accessor :bindings
92
+
93
+ # A mapping from model property names to API property names.
94
+ def self.names
95
+ @_hash = {} if @_hash.nil?
96
+ @_hash['account_sid'] = 'account_sid'
97
+ @_hash['chat_service_sid'] = 'chat_service_sid'
98
+ @_hash['messaging_service_sid'] = 'messaging_service_sid'
99
+ @_hash['sid'] = 'sid'
100
+ @_hash['friendly_name'] = 'friendly_name'
101
+ @_hash['unique_name'] = 'unique_name'
102
+ @_hash['attributes'] = 'attributes'
103
+ @_hash['state'] = 'state'
104
+ @_hash['date_created'] = 'date_created'
105
+ @_hash['date_updated'] = 'date_updated'
106
+ @_hash['timers'] = 'timers'
107
+ @_hash['url'] = 'url'
108
+ @_hash['links'] = 'links'
109
+ @_hash['bindings'] = 'bindings'
110
+ @_hash
111
+ end
112
+
113
+ # An array for optional fields
114
+ def self.optionals
115
+ %w[
116
+ account_sid
117
+ chat_service_sid
118
+ messaging_service_sid
119
+ sid
120
+ friendly_name
121
+ unique_name
122
+ attributes
123
+ state
124
+ date_created
125
+ date_updated
126
+ timers
127
+ url
128
+ links
129
+ bindings
130
+ ]
131
+ end
132
+
133
+ # An array for nullable fields
134
+ def self.nullables
135
+ %w[
136
+ account_sid
137
+ chat_service_sid
138
+ messaging_service_sid
139
+ sid
140
+ friendly_name
141
+ unique_name
142
+ attributes
143
+ date_created
144
+ date_updated
145
+ timers
146
+ url
147
+ links
148
+ bindings
149
+ ]
150
+ end
151
+
152
+ def initialize(account_sid: SKIP, chat_service_sid: SKIP,
153
+ messaging_service_sid: SKIP, sid: SKIP, friendly_name: SKIP,
154
+ unique_name: SKIP, attributes: SKIP, state: SKIP,
155
+ date_created: SKIP, date_updated: SKIP, timers: SKIP,
156
+ url: SKIP, links: SKIP, bindings: SKIP,
157
+ additional_properties: nil)
158
+ # Add additional model properties to the instance
159
+ additional_properties = {} if additional_properties.nil?
160
+
161
+ @account_sid = account_sid unless account_sid == SKIP
162
+ @chat_service_sid = chat_service_sid unless chat_service_sid == SKIP
163
+ @messaging_service_sid = messaging_service_sid unless messaging_service_sid == SKIP
164
+ @sid = sid unless sid == SKIP
165
+ @friendly_name = friendly_name unless friendly_name == SKIP
166
+ @unique_name = unique_name unless unique_name == SKIP
167
+ @attributes = attributes unless attributes == SKIP
168
+ @state = state unless state == SKIP
169
+ @date_created = date_created unless date_created == SKIP
170
+ @date_updated = date_updated unless date_updated == SKIP
171
+ @timers = timers unless timers == SKIP
172
+ @url = url unless url == SKIP
173
+ @links = links unless links == SKIP
174
+ @bindings = bindings unless bindings == SKIP
175
+ @additional_properties = additional_properties
176
+ end
177
+
178
+ # Creates an instance of the object from a hash.
179
+ def self.from_hash(hash)
180
+ return nil unless hash
181
+
182
+ # Extract variables from the hash.
183
+ account_sid = hash.key?('account_sid') ? hash['account_sid'] : SKIP
184
+ chat_service_sid =
185
+ hash.key?('chat_service_sid') ? hash['chat_service_sid'] : SKIP
186
+ messaging_service_sid =
187
+ hash.key?('messaging_service_sid') ? hash['messaging_service_sid'] : SKIP
188
+ sid = hash.key?('sid') ? hash['sid'] : SKIP
189
+ friendly_name = hash.key?('friendly_name') ? hash['friendly_name'] : SKIP
190
+ unique_name = hash.key?('unique_name') ? hash['unique_name'] : SKIP
191
+ attributes = hash.key?('attributes') ? hash['attributes'] : SKIP
192
+ state = hash.key?('state') ? hash['state'] : SKIP
193
+ date_created = if hash.key?('date_created')
194
+ (DateTimeHelper.from_rfc3339(hash['date_created']) if hash['date_created'])
195
+ else
196
+ SKIP
197
+ end
198
+ date_updated = if hash.key?('date_updated')
199
+ (DateTimeHelper.from_rfc3339(hash['date_updated']) if hash['date_updated'])
200
+ else
201
+ SKIP
202
+ end
203
+ timers = hash.key?('timers') ? hash['timers'] : SKIP
204
+ url = hash.key?('url') ? hash['url'] : SKIP
205
+ links = hash.key?('links') ? hash['links'] : SKIP
206
+ bindings = hash.key?('bindings') ? hash['bindings'] : SKIP
207
+
208
+ # Create a new hash for additional properties, removing known properties.
209
+ new_hash = hash.reject { |k, _| names.value?(k) }
210
+
211
+ additional_properties = APIHelper.get_additional_properties(
212
+ new_hash, proc { |value| value }
213
+ )
214
+
215
+ # Create object from extracted values.
216
+ Conversation.new(account_sid: account_sid,
217
+ chat_service_sid: chat_service_sid,
218
+ messaging_service_sid: messaging_service_sid,
219
+ sid: sid,
220
+ friendly_name: friendly_name,
221
+ unique_name: unique_name,
222
+ attributes: attributes,
223
+ state: state,
224
+ date_created: date_created,
225
+ date_updated: date_updated,
226
+ timers: timers,
227
+ url: url,
228
+ links: links,
229
+ bindings: bindings,
230
+ additional_properties: additional_properties)
231
+ end
232
+
233
+ def to_custom_date_created
234
+ DateTimeHelper.to_rfc3339(date_created)
235
+ end
236
+
237
+ def to_custom_date_updated
238
+ DateTimeHelper.to_rfc3339(date_updated)
239
+ end
240
+
241
+ # Provides a human-readable string representation of the object.
242
+ def to_s
243
+ class_name = self.class.name.split('::').last
244
+ "<#{class_name} account_sid: #{@account_sid}, chat_service_sid: #{@chat_service_sid},"\
245
+ " messaging_service_sid: #{@messaging_service_sid}, sid: #{@sid}, friendly_name:"\
246
+ " #{@friendly_name}, unique_name: #{@unique_name}, attributes: #{@attributes}, state:"\
247
+ " #{@state}, date_created: #{@date_created}, date_updated: #{@date_updated}, timers:"\
248
+ " #{@timers}, url: #{@url}, links: #{@links}, bindings: #{@bindings}, additional_properties:"\
249
+ " #{@additional_properties}>"
250
+ end
251
+
252
+ # Provides a debugging-friendly string with detailed object information.
253
+ def inspect
254
+ class_name = self.class.name.split('::').last
255
+ "<#{class_name} account_sid: #{@account_sid.inspect}, chat_service_sid:"\
256
+ " #{@chat_service_sid.inspect}, messaging_service_sid: #{@messaging_service_sid.inspect},"\
257
+ " sid: #{@sid.inspect}, friendly_name: #{@friendly_name.inspect}, unique_name:"\
258
+ " #{@unique_name.inspect}, attributes: #{@attributes.inspect}, state: #{@state.inspect},"\
259
+ " date_created: #{@date_created.inspect}, date_updated: #{@date_updated.inspect}, timers:"\
260
+ " #{@timers.inspect}, url: #{@url.inspect}, links: #{@links.inspect}, bindings:"\
261
+ " #{@bindings.inspect}, additional_properties: #{@additional_properties}>"
262
+ end
263
+ end
264
+ end