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,561 @@
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
+ # ConversationsV1WebhookApi
8
+ class ConversationsV1WebhookApi < BaseApi
9
+ # A Webhook resource manages a service-level set of callback URLs and their
10
+ # configuration for receiving all conversation events.
11
+ # @return [ApiResponse] Complete http response with raw body and status code.
12
+ def fetch_configuration_webhook
13
+ @api_call
14
+ .request(new_request_builder(HttpMethodEnum::GET,
15
+ '/v1/Configuration/Webhooks',
16
+ Server::DEFAULT2)
17
+ .header_param(new_parameter('application/json', key: 'accept'))
18
+ .auth(Single.new('accountSid_authToken')))
19
+ .response(new_response_handler
20
+ .deserializer(APIHelper.method(:custom_type_deserializer))
21
+ .deserialize_into(ConfigurationWebhook.method(:from_hash))
22
+ .is_api_response(true))
23
+ .execute
24
+ end
25
+
26
+ # A Webhook resource manages a service-level set of callback URLs and their
27
+ # configuration for receiving all conversation events.
28
+ # @param [String] method Optional parameter: The HTTP method to be used when
29
+ # sending a webhook request.
30
+ # @param [Array[String]] filters Optional parameter: The list of webhook
31
+ # event triggers that are enabled for this Service: `onMessageAdded`,
32
+ # `onMessageUpdated`, `onMessageRemoved`, `onMessageAdd`, `onMessageUpdate`,
33
+ # `onMessageRemove`, `onConversationUpdated`, `onConversationRemoved`,
34
+ # `onConversationAdd`, `onConversationAdded`, `onConversationRemove`,
35
+ # `onConversationUpdate`, `onConversationStateUpdated`,
36
+ # `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`,
37
+ # `onParticipantAdd`, `onParticipantRemove`, `onParticipantUpdate`,
38
+ # `onDeliveryUpdated`, `onUserAdded`, `onUserUpdate`, `onUserUpdated`
39
+ # @param [String] pre_webhook_url Optional parameter: The absolute url the
40
+ # pre-event webhook request should be sent to.
41
+ # @param [String] post_webhook_url Optional parameter: The absolute url the
42
+ # post-event webhook request should be sent to.
43
+ # @param [ConfigurationWebhookTarget] target Optional parameter: The routing
44
+ # target of the webhook. Can be ordinary or route internally to Flex
45
+ # @return [ApiResponse] Complete http response with raw body and status code.
46
+ def update_configuration_webhook(method: nil,
47
+ filters: nil,
48
+ pre_webhook_url: nil,
49
+ post_webhook_url: nil,
50
+ target: nil)
51
+ @api_call
52
+ .request(new_request_builder(HttpMethodEnum::POST,
53
+ '/v1/Configuration/Webhooks',
54
+ Server::DEFAULT2)
55
+ .form_param(new_parameter(method, key: 'Method'))
56
+ .form_param(new_parameter(filters, key: 'Filters'))
57
+ .form_param(new_parameter(pre_webhook_url, key: 'PreWebhookUrl'))
58
+ .form_param(new_parameter(post_webhook_url, key: 'PostWebhookUrl'))
59
+ .form_param(new_parameter(target, key: 'Target'))
60
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
61
+ .header_param(new_parameter('application/json', key: 'accept'))
62
+ .auth(Single.new('accountSid_authToken')))
63
+ .response(new_response_handler
64
+ .deserializer(APIHelper.method(:custom_type_deserializer))
65
+ .deserialize_into(ConfigurationWebhook.method(:from_hash))
66
+ .is_api_response(true))
67
+ .execute
68
+ end
69
+
70
+ # Retrieve a list of all webhooks scoped to the conversation
71
+ # @param [String] conversation_sid Required parameter: The unique ID of the
72
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
73
+ # resource) for this webhook.
74
+ # @param [Integer] page_size Optional parameter: How many resources to
75
+ # return in each list page. The default is 5, and the maximum is 5.
76
+ # @param [Integer] page Optional parameter: The page index. This value is
77
+ # simply for client state.
78
+ # @param [String] page_token Optional parameter: The page token. This is
79
+ # provided by the API.
80
+ # @return [ApiResponse] Complete http response with raw body and status code.
81
+ def list_conversation_scoped_webhook(conversation_sid,
82
+ page_size: nil,
83
+ page: nil,
84
+ page_token: nil)
85
+ @api_call
86
+ .request(new_request_builder(HttpMethodEnum::GET,
87
+ '/v1/Conversations/{ConversationSid}/Webhooks',
88
+ Server::DEFAULT2)
89
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
90
+ .is_required(true)
91
+ .should_encode(true))
92
+ .query_param(new_parameter(page_size, key: 'PageSize'))
93
+ .query_param(new_parameter(page, key: 'Page'))
94
+ .query_param(new_parameter(page_token, key: 'PageToken'))
95
+ .header_param(new_parameter('application/json', key: 'accept'))
96
+ .auth(Single.new('accountSid_authToken')))
97
+ .response(new_response_handler
98
+ .deserializer(APIHelper.method(:custom_type_deserializer))
99
+ .deserialize_into(ListConversationScopedWebhookResponse.method(:from_hash))
100
+ .is_api_response(true))
101
+ .execute
102
+ end
103
+
104
+ # Create a new webhook scoped to the conversation
105
+ # @param [String] conversation_sid Required parameter: The unique ID of the
106
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
107
+ # resource) for this webhook.
108
+ # @param [ConversationScopedWebhookTarget] target Required parameter: The
109
+ # target of this webhook: `webhook`, `studio`, `trigger`
110
+ # @param [String] configuration_url Optional parameter: The absolute url the
111
+ # webhook request should be sent to.
112
+ # @param [ConversationScopedWebhookMethod] configuration_method Optional
113
+ # parameter: TODO: type description here
114
+ # @param [Array[String]] configuration_filters Optional parameter: The list
115
+ # of events, firing webhook event for this Conversation.
116
+ # @param [Array[String]] configuration_triggers Optional parameter: The list
117
+ # of keywords, firing webhook event for this Conversation.
118
+ # @param [String] configuration_flow_sid Optional parameter: The studio flow
119
+ # SID, where the webhook should be sent to.
120
+ # @param [Integer] configuration_replay_after Optional parameter: The
121
+ # message index for which and it's successors the webhook will be replayed.
122
+ # Not set by default
123
+ # @return [ApiResponse] Complete http response with raw body and status code.
124
+ def create_conversation_scoped_webhook(conversation_sid,
125
+ target,
126
+ configuration_url: nil,
127
+ configuration_method: nil,
128
+ configuration_filters: nil,
129
+ configuration_triggers: nil,
130
+ configuration_flow_sid: nil,
131
+ configuration_replay_after: nil)
132
+ @api_call
133
+ .request(new_request_builder(HttpMethodEnum::POST,
134
+ '/v1/Conversations/{ConversationSid}/Webhooks',
135
+ Server::DEFAULT2)
136
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
137
+ .is_required(true)
138
+ .should_encode(true))
139
+ .form_param(new_parameter(target, key: 'Target')
140
+ .is_required(true))
141
+ .form_param(new_parameter(configuration_url, key: 'Configuration.Url'))
142
+ .form_param(new_parameter(configuration_method, key: 'Configuration.Method'))
143
+ .form_param(new_parameter(configuration_filters, key: 'Configuration.Filters'))
144
+ .form_param(new_parameter(configuration_triggers, key: 'Configuration.Triggers'))
145
+ .form_param(new_parameter(configuration_flow_sid, key: 'Configuration.FlowSid'))
146
+ .form_param(new_parameter(configuration_replay_after, key: 'Configuration.ReplayAfter'))
147
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
148
+ .header_param(new_parameter('application/json', key: 'accept'))
149
+ .auth(Single.new('accountSid_authToken')))
150
+ .response(new_response_handler
151
+ .deserializer(APIHelper.method(:custom_type_deserializer))
152
+ .deserialize_into(ConversationScopedWebhook.method(:from_hash))
153
+ .is_api_response(true))
154
+ .execute
155
+ end
156
+
157
+ # Fetch the configuration of a conversation-scoped webhook
158
+ # @param [String] conversation_sid Required parameter: The unique ID of the
159
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
160
+ # resource) for this webhook.
161
+ # @param [String] sid Required parameter: A 34 character string that
162
+ # uniquely identifies this resource.
163
+ # @return [ApiResponse] Complete http response with raw body and status code.
164
+ def fetch_conversation_scoped_webhook(conversation_sid,
165
+ sid)
166
+ @api_call
167
+ .request(new_request_builder(HttpMethodEnum::GET,
168
+ '/v1/Conversations/{ConversationSid}/Webhooks/{Sid}',
169
+ Server::DEFAULT2)
170
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
171
+ .is_required(true)
172
+ .should_encode(true))
173
+ .template_param(new_parameter(sid, key: 'Sid')
174
+ .is_required(true)
175
+ .should_encode(true))
176
+ .header_param(new_parameter('application/json', key: 'accept'))
177
+ .auth(Single.new('accountSid_authToken')))
178
+ .response(new_response_handler
179
+ .deserializer(APIHelper.method(:custom_type_deserializer))
180
+ .deserialize_into(ConversationScopedWebhook.method(:from_hash))
181
+ .is_api_response(true))
182
+ .execute
183
+ end
184
+
185
+ # Update an existing conversation-scoped webhook
186
+ # @param [String] conversation_sid Required parameter: The unique ID of the
187
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
188
+ # resource) for this webhook.
189
+ # @param [String] sid Required parameter: A 34 character string that
190
+ # uniquely identifies this resource.
191
+ # @param [String] configuration_url Optional parameter: The absolute url the
192
+ # webhook request should be sent to.
193
+ # @param [ConversationScopedWebhookMethod] configuration_method Optional
194
+ # parameter: TODO: type description here
195
+ # @param [Array[String]] configuration_filters Optional parameter: The list
196
+ # of events, firing webhook event for this Conversation.
197
+ # @param [Array[String]] configuration_triggers Optional parameter: The list
198
+ # of keywords, firing webhook event for this Conversation.
199
+ # @param [String] configuration_flow_sid Optional parameter: The studio flow
200
+ # SID, where the webhook should be sent to.
201
+ # @return [ApiResponse] Complete http response with raw body and status code.
202
+ def update_conversation_scoped_webhook(conversation_sid,
203
+ sid,
204
+ configuration_url: nil,
205
+ configuration_method: nil,
206
+ configuration_filters: nil,
207
+ configuration_triggers: nil,
208
+ configuration_flow_sid: nil)
209
+ @api_call
210
+ .request(new_request_builder(HttpMethodEnum::POST,
211
+ '/v1/Conversations/{ConversationSid}/Webhooks/{Sid}',
212
+ Server::DEFAULT2)
213
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
214
+ .is_required(true)
215
+ .should_encode(true))
216
+ .template_param(new_parameter(sid, key: 'Sid')
217
+ .is_required(true)
218
+ .should_encode(true))
219
+ .form_param(new_parameter(configuration_url, key: 'Configuration.Url'))
220
+ .form_param(new_parameter(configuration_method, key: 'Configuration.Method'))
221
+ .form_param(new_parameter(configuration_filters, key: 'Configuration.Filters'))
222
+ .form_param(new_parameter(configuration_triggers, key: 'Configuration.Triggers'))
223
+ .form_param(new_parameter(configuration_flow_sid, key: 'Configuration.FlowSid'))
224
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
225
+ .header_param(new_parameter('application/json', key: 'accept'))
226
+ .auth(Single.new('accountSid_authToken')))
227
+ .response(new_response_handler
228
+ .deserializer(APIHelper.method(:custom_type_deserializer))
229
+ .deserialize_into(ConversationScopedWebhook.method(:from_hash))
230
+ .is_api_response(true))
231
+ .execute
232
+ end
233
+
234
+ # Remove an existing webhook scoped to the conversation
235
+ # @param [String] conversation_sid Required parameter: The unique ID of the
236
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
237
+ # resource) for this webhook.
238
+ # @param [String] sid Required parameter: A 34 character string that
239
+ # uniquely identifies this resource.
240
+ # @return [ApiResponse] Complete http response with raw body and status code.
241
+ def delete_conversation_scoped_webhook(conversation_sid,
242
+ sid)
243
+ @api_call
244
+ .request(new_request_builder(HttpMethodEnum::DELETE,
245
+ '/v1/Conversations/{ConversationSid}/Webhooks/{Sid}',
246
+ Server::DEFAULT2)
247
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
248
+ .is_required(true)
249
+ .should_encode(true))
250
+ .template_param(new_parameter(sid, key: 'Sid')
251
+ .is_required(true)
252
+ .should_encode(true))
253
+ .auth(Single.new('accountSid_authToken')))
254
+ .response(new_response_handler
255
+ .is_response_void(true)
256
+ .is_api_response(true))
257
+ .execute
258
+ end
259
+
260
+ # Create a new webhook scoped to the conversation in a specific service
261
+ # @param [String] chat_service_sid Required parameter: The SID of the
262
+ # [Conversation
263
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
264
+ # the Participant resource is associated with.
265
+ # @param [String] conversation_sid Required parameter: The unique ID of the
266
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
267
+ # resource) for this webhook.
268
+ # @param [ServiceConversationScopedWebhookTarget] target Required parameter:
269
+ # The target of this webhook: `webhook`, `studio`, `trigger`
270
+ # @param [String] configuration_url Optional parameter: The absolute url the
271
+ # webhook request should be sent to.
272
+ # @param [ServiceConversationScopedWebhookMethod] configuration_method
273
+ # Optional parameter: TODO: type description here
274
+ # @param [Array[String]] configuration_filters Optional parameter: The list
275
+ # of events, firing webhook event for this Conversation.
276
+ # @param [Array[String]] configuration_triggers Optional parameter: The list
277
+ # of keywords, firing webhook event for this Conversation.
278
+ # @param [String] configuration_flow_sid Optional parameter: The studio flow
279
+ # SID, where the webhook should be sent to.
280
+ # @param [Integer] configuration_replay_after Optional parameter: The
281
+ # message index for which and it's successors the webhook will be replayed.
282
+ # Not set by default
283
+ # @return [ApiResponse] Complete http response with raw body and status code.
284
+ def create_service_conversation_scoped_webhook(chat_service_sid,
285
+ conversation_sid,
286
+ target,
287
+ configuration_url: nil,
288
+ configuration_method: nil,
289
+ configuration_filters: nil,
290
+ configuration_triggers: nil,
291
+ configuration_flow_sid: nil,
292
+ configuration_replay_after: nil)
293
+ @api_call
294
+ .request(new_request_builder(HttpMethodEnum::POST,
295
+ '/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks',
296
+ Server::DEFAULT2)
297
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
298
+ .is_required(true)
299
+ .should_encode(true))
300
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
301
+ .is_required(true)
302
+ .should_encode(true))
303
+ .form_param(new_parameter(target, key: 'Target')
304
+ .is_required(true))
305
+ .form_param(new_parameter(configuration_url, key: 'Configuration.Url'))
306
+ .form_param(new_parameter(configuration_method, key: 'Configuration.Method'))
307
+ .form_param(new_parameter(configuration_filters, key: 'Configuration.Filters'))
308
+ .form_param(new_parameter(configuration_triggers, key: 'Configuration.Triggers'))
309
+ .form_param(new_parameter(configuration_flow_sid, key: 'Configuration.FlowSid'))
310
+ .form_param(new_parameter(configuration_replay_after, key: 'Configuration.ReplayAfter'))
311
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
312
+ .header_param(new_parameter('application/json', key: 'accept'))
313
+ .auth(Single.new('accountSid_authToken')))
314
+ .response(new_response_handler
315
+ .deserializer(APIHelper.method(:custom_type_deserializer))
316
+ .deserialize_into(ServiceConversationScopedWebhook.method(:from_hash))
317
+ .is_api_response(true))
318
+ .execute
319
+ end
320
+
321
+ # Retrieve a list of all webhooks scoped to the conversation
322
+ # @param [String] chat_service_sid Required parameter: The SID of the
323
+ # [Conversation
324
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
325
+ # the Participant resource is associated with.
326
+ # @param [String] conversation_sid Required parameter: The unique ID of the
327
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
328
+ # resource) for this webhook.
329
+ # @param [Integer] page_size Optional parameter: How many resources to
330
+ # return in each list page. The default is 5, and the maximum is 5.
331
+ # @param [Integer] page Optional parameter: The page index. This value is
332
+ # simply for client state.
333
+ # @param [String] page_token Optional parameter: The page token. This is
334
+ # provided by the API.
335
+ # @return [ApiResponse] Complete http response with raw body and status code.
336
+ def list_service_conversation_scoped_webhook(chat_service_sid,
337
+ conversation_sid,
338
+ page_size: nil,
339
+ page: nil,
340
+ page_token: nil)
341
+ @api_call
342
+ .request(new_request_builder(HttpMethodEnum::GET,
343
+ '/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks',
344
+ Server::DEFAULT2)
345
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
346
+ .is_required(true)
347
+ .should_encode(true))
348
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
349
+ .is_required(true)
350
+ .should_encode(true))
351
+ .query_param(new_parameter(page_size, key: 'PageSize'))
352
+ .query_param(new_parameter(page, key: 'Page'))
353
+ .query_param(new_parameter(page_token, key: 'PageToken'))
354
+ .header_param(new_parameter('application/json', key: 'accept'))
355
+ .auth(Single.new('accountSid_authToken')))
356
+ .response(new_response_handler
357
+ .deserializer(APIHelper.method(:custom_type_deserializer))
358
+ .deserialize_into(ListServiceConversationScopedWebhookResponse.method(:from_hash))
359
+ .is_api_response(true))
360
+ .execute
361
+ end
362
+
363
+ # Update an existing conversation-scoped webhook
364
+ # @param [String] chat_service_sid Required parameter: The SID of the
365
+ # [Conversation
366
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
367
+ # the Participant resource is associated with.
368
+ # @param [String] conversation_sid Required parameter: The unique ID of the
369
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
370
+ # resource) for this webhook.
371
+ # @param [String] sid Required parameter: A 34 character string that
372
+ # uniquely identifies this resource.
373
+ # @param [String] configuration_url Optional parameter: The absolute url the
374
+ # webhook request should be sent to.
375
+ # @param [ServiceConversationScopedWebhookMethod] configuration_method
376
+ # Optional parameter: TODO: type description here
377
+ # @param [Array[String]] configuration_filters Optional parameter: The list
378
+ # of events, firing webhook event for this Conversation.
379
+ # @param [Array[String]] configuration_triggers Optional parameter: The list
380
+ # of keywords, firing webhook event for this Conversation.
381
+ # @param [String] configuration_flow_sid Optional parameter: The studio flow
382
+ # SID, where the webhook should be sent to.
383
+ # @return [ApiResponse] Complete http response with raw body and status code.
384
+ def update_service_conversation_scoped_webhook(chat_service_sid,
385
+ conversation_sid,
386
+ sid,
387
+ configuration_url: nil,
388
+ configuration_method: nil,
389
+ configuration_filters: nil,
390
+ configuration_triggers: nil,
391
+ configuration_flow_sid: nil)
392
+ @api_call
393
+ .request(new_request_builder(HttpMethodEnum::POST,
394
+ '/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}',
395
+ Server::DEFAULT2)
396
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
397
+ .is_required(true)
398
+ .should_encode(true))
399
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
400
+ .is_required(true)
401
+ .should_encode(true))
402
+ .template_param(new_parameter(sid, key: 'Sid')
403
+ .is_required(true)
404
+ .should_encode(true))
405
+ .form_param(new_parameter(configuration_url, key: 'Configuration.Url'))
406
+ .form_param(new_parameter(configuration_method, key: 'Configuration.Method'))
407
+ .form_param(new_parameter(configuration_filters, key: 'Configuration.Filters'))
408
+ .form_param(new_parameter(configuration_triggers, key: 'Configuration.Triggers'))
409
+ .form_param(new_parameter(configuration_flow_sid, key: 'Configuration.FlowSid'))
410
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
411
+ .header_param(new_parameter('application/json', key: 'accept'))
412
+ .auth(Single.new('accountSid_authToken')))
413
+ .response(new_response_handler
414
+ .deserializer(APIHelper.method(:custom_type_deserializer))
415
+ .deserialize_into(ServiceConversationScopedWebhook.method(:from_hash))
416
+ .is_api_response(true))
417
+ .execute
418
+ end
419
+
420
+ # Remove an existing webhook scoped to the conversation
421
+ # @param [String] chat_service_sid Required parameter: The SID of the
422
+ # [Conversation
423
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
424
+ # the Participant resource is associated with.
425
+ # @param [String] conversation_sid Required parameter: The unique ID of the
426
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
427
+ # resource) for this webhook.
428
+ # @param [String] sid Required parameter: A 34 character string that
429
+ # uniquely identifies this resource.
430
+ # @return [ApiResponse] Complete http response with raw body and status code.
431
+ def delete_service_conversation_scoped_webhook(chat_service_sid,
432
+ conversation_sid,
433
+ sid)
434
+ @api_call
435
+ .request(new_request_builder(HttpMethodEnum::DELETE,
436
+ '/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}',
437
+ Server::DEFAULT2)
438
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
439
+ .is_required(true)
440
+ .should_encode(true))
441
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
442
+ .is_required(true)
443
+ .should_encode(true))
444
+ .template_param(new_parameter(sid, key: 'Sid')
445
+ .is_required(true)
446
+ .should_encode(true))
447
+ .auth(Single.new('accountSid_authToken')))
448
+ .response(new_response_handler
449
+ .is_response_void(true)
450
+ .is_api_response(true))
451
+ .execute
452
+ end
453
+
454
+ # Fetch the configuration of a conversation-scoped webhook
455
+ # @param [String] chat_service_sid Required parameter: The SID of the
456
+ # [Conversation
457
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
458
+ # the Participant resource is associated with.
459
+ # @param [String] conversation_sid Required parameter: The unique ID of the
460
+ # [Conversation](https://www.twilio.com/docs/conversations/api/conversation-
461
+ # resource) for this webhook.
462
+ # @param [String] sid Required parameter: A 34 character string that
463
+ # uniquely identifies this resource.
464
+ # @return [ApiResponse] Complete http response with raw body and status code.
465
+ def fetch_service_conversation_scoped_webhook(chat_service_sid,
466
+ conversation_sid,
467
+ sid)
468
+ @api_call
469
+ .request(new_request_builder(HttpMethodEnum::GET,
470
+ '/v1/Services/{ChatServiceSid}/Conversations/{ConversationSid}/Webhooks/{Sid}',
471
+ Server::DEFAULT2)
472
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
473
+ .is_required(true)
474
+ .should_encode(true))
475
+ .template_param(new_parameter(conversation_sid, key: 'ConversationSid')
476
+ .is_required(true)
477
+ .should_encode(true))
478
+ .template_param(new_parameter(sid, key: 'Sid')
479
+ .is_required(true)
480
+ .should_encode(true))
481
+ .header_param(new_parameter('application/json', key: 'accept'))
482
+ .auth(Single.new('accountSid_authToken')))
483
+ .response(new_response_handler
484
+ .deserializer(APIHelper.method(:custom_type_deserializer))
485
+ .deserialize_into(ServiceConversationScopedWebhook.method(:from_hash))
486
+ .is_api_response(true))
487
+ .execute
488
+ end
489
+
490
+ # Update a specific Webhook.
491
+ # @param [String] chat_service_sid Required parameter: The unique ID of the
492
+ # [Conversation
493
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
494
+ # this conversation belongs to.
495
+ # @param [String] pre_webhook_url Optional parameter: The absolute url the
496
+ # pre-event webhook request should be sent to.
497
+ # @param [String] post_webhook_url Optional parameter: The absolute url the
498
+ # post-event webhook request should be sent to.
499
+ # @param [Array[String]] filters Optional parameter: The list of events that
500
+ # your configured webhook targets will receive. Events not configured here
501
+ # will not fire. Possible values are `onParticipantAdd`,
502
+ # `onParticipantAdded`, `onDeliveryUpdated`, `onConversationUpdated`,
503
+ # `onConversationRemove`, `onParticipantRemove`, `onConversationUpdate`,
504
+ # `onMessageAdd`, `onMessageRemoved`, `onParticipantUpdated`,
505
+ # `onConversationAdded`, `onMessageAdded`, `onConversationAdd`,
506
+ # `onConversationRemoved`, `onParticipantUpdate`, `onMessageRemove`,
507
+ # `onMessageUpdated`, `onParticipantRemoved`, `onMessageUpdate` or
508
+ # `onConversationStateUpdated`.
509
+ # @param [String] method Optional parameter: The HTTP method to be used when
510
+ # sending a webhook request. One of `GET` or `POST`.
511
+ # @return [ApiResponse] Complete http response with raw body and status code.
512
+ def update_service_webhook_configuration(chat_service_sid,
513
+ pre_webhook_url: nil,
514
+ post_webhook_url: nil,
515
+ filters: nil,
516
+ method: nil)
517
+ @api_call
518
+ .request(new_request_builder(HttpMethodEnum::POST,
519
+ '/v1/Services/{ChatServiceSid}/Configuration/Webhooks',
520
+ Server::DEFAULT2)
521
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
522
+ .is_required(true)
523
+ .should_encode(true))
524
+ .form_param(new_parameter(pre_webhook_url, key: 'PreWebhookUrl'))
525
+ .form_param(new_parameter(post_webhook_url, key: 'PostWebhookUrl'))
526
+ .form_param(new_parameter(filters, key: 'Filters'))
527
+ .form_param(new_parameter(method, key: 'Method'))
528
+ .header_param(new_parameter('application/x-www-form-urlencoded', key: 'content-type'))
529
+ .header_param(new_parameter('application/json', key: 'accept'))
530
+ .auth(Single.new('accountSid_authToken')))
531
+ .response(new_response_handler
532
+ .deserializer(APIHelper.method(:custom_type_deserializer))
533
+ .deserialize_into(ServiceWebhookConfiguration.method(:from_hash))
534
+ .is_api_response(true))
535
+ .execute
536
+ end
537
+
538
+ # Fetch a specific service webhook configuration.
539
+ # @param [String] chat_service_sid Required parameter: The unique ID of the
540
+ # [Conversation
541
+ # Service](https://www.twilio.com/docs/conversations/api/service-resource)
542
+ # this conversation belongs to.
543
+ # @return [ApiResponse] Complete http response with raw body and status code.
544
+ def fetch_service_webhook_configuration(chat_service_sid)
545
+ @api_call
546
+ .request(new_request_builder(HttpMethodEnum::GET,
547
+ '/v1/Services/{ChatServiceSid}/Configuration/Webhooks',
548
+ Server::DEFAULT2)
549
+ .template_param(new_parameter(chat_service_sid, key: 'ChatServiceSid')
550
+ .is_required(true)
551
+ .should_encode(true))
552
+ .header_param(new_parameter('application/json', key: 'accept'))
553
+ .auth(Single.new('accountSid_authToken')))
554
+ .response(new_response_handler
555
+ .deserializer(APIHelper.method(:custom_type_deserializer))
556
+ .deserialize_into(ServiceWebhookConfiguration.method(:from_hash))
557
+ .is_api_response(true))
558
+ .execute
559
+ end
560
+ end
561
+ end