slackapi-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 (426) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +221 -0
  4. data/bin/console +15 -0
  5. data/lib/slack_web_api/api_helper.rb +10 -0
  6. data/lib/slack_web_api/client.rb +410 -0
  7. data/lib/slack_web_api/configuration.rb +173 -0
  8. data/lib/slack_web_api/controllers/admin_apps_approved_controller.rb +48 -0
  9. data/lib/slack_web_api/controllers/admin_apps_controller.rb +78 -0
  10. data/lib/slack_web_api/controllers/admin_apps_requests_controller.rb +44 -0
  11. data/lib/slack_web_api/controllers/admin_apps_restricted_controller.rb +48 -0
  12. data/lib/slack_web_api/controllers/admin_conversations_controller.rb +472 -0
  13. data/lib/slack_web_api/controllers/admin_conversations_ekm_controller.rb +51 -0
  14. data/lib/slack_web_api/controllers/admin_conversations_restrict_access_controller.rb +129 -0
  15. data/lib/slack_web_api/controllers/admin_emoji_controller.rb +175 -0
  16. data/lib/slack_web_api/controllers/admin_invite_requests_approved_controller.rb +46 -0
  17. data/lib/slack_web_api/controllers/admin_invite_requests_controller.rb +112 -0
  18. data/lib/slack_web_api/controllers/admin_invite_requests_denied_controller.rb +46 -0
  19. data/lib/slack_web_api/controllers/admin_teams_admins_controller.rb +45 -0
  20. data/lib/slack_web_api/controllers/admin_teams_controller.rb +84 -0
  21. data/lib/slack_web_api/controllers/admin_teams_owners_controller.rb +45 -0
  22. data/lib/slack_web_api/controllers/admin_teams_settings_controller.rb +206 -0
  23. data/lib/slack_web_api/controllers/admin_usergroups_controller.rb +161 -0
  24. data/lib/slack_web_api/controllers/admin_users_controller.rb +333 -0
  25. data/lib/slack_web_api/controllers/admin_users_session_controller.rb +80 -0
  26. data/lib/slack_web_api/controllers/api_controller.rb +34 -0
  27. data/lib/slack_web_api/controllers/apps_controller.rb +40 -0
  28. data/lib/slack_web_api/controllers/apps_event_authorizations_controller.rb +45 -0
  29. data/lib/slack_web_api/controllers/apps_permissions_controller.rb +66 -0
  30. data/lib/slack_web_api/controllers/apps_permissions_resources_controller.rb +44 -0
  31. data/lib/slack_web_api/controllers/apps_permissions_scopes_controller.rb +33 -0
  32. data/lib/slack_web_api/controllers/apps_permissions_users_controller.rb +85 -0
  33. data/lib/slack_web_api/controllers/auth_controller.rb +62 -0
  34. data/lib/slack_web_api/controllers/base_controller.rb +67 -0
  35. data/lib/slack_web_api/controllers/bots_controller.rb +36 -0
  36. data/lib/slack_web_api/controllers/calls_controller.rb +174 -0
  37. data/lib/slack_web_api/controllers/calls_participants_controller.rb +79 -0
  38. data/lib/slack_web_api/controllers/chat_controller.rb +528 -0
  39. data/lib/slack_web_api/controllers/chat_scheduled_messages_controller.rb +54 -0
  40. data/lib/slack_web_api/controllers/conversations_controller.rb +628 -0
  41. data/lib/slack_web_api/controllers/dialog_controller.rb +44 -0
  42. data/lib/slack_web_api/controllers/dnd_controller.rb +141 -0
  43. data/lib/slack_web_api/controllers/emoji_controller.rb +33 -0
  44. data/lib/slack_web_api/controllers/files_comments_controller.rb +38 -0
  45. data/lib/slack_web_api/controllers/files_controller.rb +245 -0
  46. data/lib/slack_web_api/controllers/files_remote_controller.rb +250 -0
  47. data/lib/slack_web_api/controllers/migration_controller.rb +47 -0
  48. data/lib/slack_web_api/controllers/oauth_authorization_controller.rb +87 -0
  49. data/lib/slack_web_api/controllers/oauth_controller.rb +88 -0
  50. data/lib/slack_web_api/controllers/oauth_v2_controller.rb +45 -0
  51. data/lib/slack_web_api/controllers/pins_controller.rb +102 -0
  52. data/lib/slack_web_api/controllers/reactions_controller.rb +182 -0
  53. data/lib/slack_web_api/controllers/reminders_controller.rb +151 -0
  54. data/lib/slack_web_api/controllers/rtm_controller.rb +44 -0
  55. data/lib/slack_web_api/controllers/search_controller.rb +56 -0
  56. data/lib/slack_web_api/controllers/stars_controller.rb +130 -0
  57. data/lib/slack_web_api/controllers/team_controller.rb +148 -0
  58. data/lib/slack_web_api/controllers/team_profile_controller.rb +36 -0
  59. data/lib/slack_web_api/controllers/usergroups_controller.rb +205 -0
  60. data/lib/slack_web_api/controllers/usergroups_users_controller.rb +81 -0
  61. data/lib/slack_web_api/controllers/users_controller.rb +327 -0
  62. data/lib/slack_web_api/controllers/users_profile_controller.rb +82 -0
  63. data/lib/slack_web_api/controllers/views_controller.rb +158 -0
  64. data/lib/slack_web_api/controllers/workflows_controller.rb +130 -0
  65. data/lib/slack_web_api/exceptions/admin_conversations_archive_error_schema_exception.rb +50 -0
  66. data/lib/slack_web_api/exceptions/admin_conversations_convert_to_private_error_schema_exception.rb +50 -0
  67. data/lib/slack_web_api/exceptions/admin_conversations_create_error_schema_exception.rb +50 -0
  68. data/lib/slack_web_api/exceptions/admin_conversations_delete_error_schema_exception.rb +50 -0
  69. data/lib/slack_web_api/exceptions/admin_conversations_disconnect_shared_error_schema_exception.rb +50 -0
  70. data/lib/slack_web_api/exceptions/admin_conversations_get_teams_error_schema_exception.rb +50 -0
  71. data/lib/slack_web_api/exceptions/admin_conversations_invite_error_schema_exception.rb +50 -0
  72. data/lib/slack_web_api/exceptions/admin_conversations_search_error_schema_exception.rb +50 -0
  73. data/lib/slack_web_api/exceptions/admin_conversations_set_conversation_prefs_error_schema_exception.rb +50 -0
  74. data/lib/slack_web_api/exceptions/admin_conversations_unarchive_error_schema2_exception.rb +50 -0
  75. data/lib/slack_web_api/exceptions/admin_conversations_unarchive_error_schema3_exception.rb +50 -0
  76. data/lib/slack_web_api/exceptions/admin_conversations_unarchive_error_schema_exception.rb +50 -0
  77. data/lib/slack_web_api/exceptions/api_exception.rb +21 -0
  78. data/lib/slack_web_api/exceptions/api_test_error_schema_exception.rb +50 -0
  79. data/lib/slack_web_api/exceptions/apps_permissions_info_error_schema_exception.rb +56 -0
  80. data/lib/slack_web_api/exceptions/apps_permissions_request_error_schema_exception.rb +56 -0
  81. data/lib/slack_web_api/exceptions/apps_permissions_resources_list_error_schema_exception.rb +56 -0
  82. data/lib/slack_web_api/exceptions/apps_permissions_scopes_list_error_schema_exception.rb +56 -0
  83. data/lib/slack_web_api/exceptions/apps_uninstall_error_schema_exception.rb +56 -0
  84. data/lib/slack_web_api/exceptions/auth_revoke_error_schema_exception.rb +56 -0
  85. data/lib/slack_web_api/exceptions/auth_test_error_schema_exception.rb +56 -0
  86. data/lib/slack_web_api/exceptions/bots_info_error_schema_exception.rb +56 -0
  87. data/lib/slack_web_api/exceptions/chat_delete_error_schema_exception.rb +56 -0
  88. data/lib/slack_web_api/exceptions/chat_delete_scheduled_message_error_schema_exception.rb +56 -0
  89. data/lib/slack_web_api/exceptions/chat_get_permalink_error_schema_exception.rb +56 -0
  90. data/lib/slack_web_api/exceptions/chat_me_message_error_schema_exception.rb +56 -0
  91. data/lib/slack_web_api/exceptions/chat_post_ephemeral_error_schema_exception.rb +56 -0
  92. data/lib/slack_web_api/exceptions/chat_post_message_error_schema_exception.rb +56 -0
  93. data/lib/slack_web_api/exceptions/chat_schedule_message_error_schema_exception.rb +56 -0
  94. data/lib/slack_web_api/exceptions/chat_scheduled_messages_list_error_schema_exception.rb +56 -0
  95. data/lib/slack_web_api/exceptions/chat_unfurl_error_schema_exception.rb +56 -0
  96. data/lib/slack_web_api/exceptions/chat_update_error_schema_exception.rb +56 -0
  97. data/lib/slack_web_api/exceptions/conversations_archive_error_schema_exception.rb +67 -0
  98. data/lib/slack_web_api/exceptions/conversations_close_error_schema_exception.rb +67 -0
  99. data/lib/slack_web_api/exceptions/conversations_create_error_schema_exception.rb +73 -0
  100. data/lib/slack_web_api/exceptions/conversations_history_error_schema_exception.rb +67 -0
  101. data/lib/slack_web_api/exceptions/conversations_info_error_schema_exception.rb +67 -0
  102. data/lib/slack_web_api/exceptions/conversations_invite_error_schema1_exception.rb +82 -0
  103. data/lib/slack_web_api/exceptions/conversations_join_error_schema_exception.rb +67 -0
  104. data/lib/slack_web_api/exceptions/conversations_kick_error_schema_exception.rb +67 -0
  105. data/lib/slack_web_api/exceptions/conversations_leave_error_schema_exception.rb +67 -0
  106. data/lib/slack_web_api/exceptions/conversations_list_error_schema_exception.rb +67 -0
  107. data/lib/slack_web_api/exceptions/conversations_mark_error_schema_exception.rb +67 -0
  108. data/lib/slack_web_api/exceptions/conversations_members_error_schema_exception.rb +56 -0
  109. data/lib/slack_web_api/exceptions/conversations_open_error_schema_exception.rb +56 -0
  110. data/lib/slack_web_api/exceptions/conversations_rename_error_schema_exception.rb +67 -0
  111. data/lib/slack_web_api/exceptions/conversations_replies_error_schema_exception.rb +67 -0
  112. data/lib/slack_web_api/exceptions/conversations_set_purpose_error_schema_exception.rb +67 -0
  113. data/lib/slack_web_api/exceptions/conversations_set_topic_error_schema_exception.rb +67 -0
  114. data/lib/slack_web_api/exceptions/conversations_unarchive_error_schema_exception.rb +67 -0
  115. data/lib/slack_web_api/exceptions/default_error_template_exception.rb +47 -0
  116. data/lib/slack_web_api/exceptions/dialog_open_error_schema_exception.rb +56 -0
  117. data/lib/slack_web_api/exceptions/dnd_end_dnd_error_schema_exception.rb +56 -0
  118. data/lib/slack_web_api/exceptions/dnd_end_snooze_error_schema_exception.rb +56 -0
  119. data/lib/slack_web_api/exceptions/dnd_info_error_schema_exception.rb +56 -0
  120. data/lib/slack_web_api/exceptions/dnd_set_snooze_error_schema_exception.rb +56 -0
  121. data/lib/slack_web_api/exceptions/files_comments_delete_error_schema_exception.rb +56 -0
  122. data/lib/slack_web_api/exceptions/files_delete_error_schema_exception.rb +56 -0
  123. data/lib/slack_web_api/exceptions/files_info_error_schema_exception.rb +56 -0
  124. data/lib/slack_web_api/exceptions/files_list_error_schema_exception.rb +56 -0
  125. data/lib/slack_web_api/exceptions/files_revoke_public_url_error_schema_exception.rb +56 -0
  126. data/lib/slack_web_api/exceptions/files_shared_public_url_error_schema_exception.rb +56 -0
  127. data/lib/slack_web_api/exceptions/files_upload_error_schema_exception.rb +56 -0
  128. data/lib/slack_web_api/exceptions/migration_exchange_error_schema_exception.rb +56 -0
  129. data/lib/slack_web_api/exceptions/oauth_provider_exception.rb +64 -0
  130. data/lib/slack_web_api/exceptions/pins_add_error_schema_exception.rb +56 -0
  131. data/lib/slack_web_api/exceptions/pins_list_error_schema_exception.rb +56 -0
  132. data/lib/slack_web_api/exceptions/pins_remove_error_schema_exception.rb +56 -0
  133. data/lib/slack_web_api/exceptions/reactions_add_error_schema_exception.rb +56 -0
  134. data/lib/slack_web_api/exceptions/reactions_get_error_schema_exception.rb +56 -0
  135. data/lib/slack_web_api/exceptions/reactions_list_error_schema_exception.rb +56 -0
  136. data/lib/slack_web_api/exceptions/reactions_remove_error_schema_exception.rb +56 -0
  137. data/lib/slack_web_api/exceptions/reminders_add_error_schema_exception.rb +56 -0
  138. data/lib/slack_web_api/exceptions/reminders_complete_error_schema_exception.rb +56 -0
  139. data/lib/slack_web_api/exceptions/reminders_delete_error_schema_exception.rb +56 -0
  140. data/lib/slack_web_api/exceptions/reminders_info_error_schema_exception.rb +56 -0
  141. data/lib/slack_web_api/exceptions/reminders_list_error_schema_exception.rb +56 -0
  142. data/lib/slack_web_api/exceptions/rtm_connect_error_schema_exception.rb +56 -0
  143. data/lib/slack_web_api/exceptions/stars_add_error_schema_exception.rb +56 -0
  144. data/lib/slack_web_api/exceptions/stars_list_error_schema_exception.rb +56 -0
  145. data/lib/slack_web_api/exceptions/stars_remove_error_schema_exception.rb +56 -0
  146. data/lib/slack_web_api/exceptions/team_access_logs_error_schema_exception.rb +56 -0
  147. data/lib/slack_web_api/exceptions/team_info_error_schema_exception.rb +56 -0
  148. data/lib/slack_web_api/exceptions/team_integration_logs_error_schema_exception.rb +56 -0
  149. data/lib/slack_web_api/exceptions/team_profile_get_error_schema_exception.rb +56 -0
  150. data/lib/slack_web_api/exceptions/usergroups_create_error_schema_exception.rb +56 -0
  151. data/lib/slack_web_api/exceptions/usergroups_disable_error_schema_exception.rb +56 -0
  152. data/lib/slack_web_api/exceptions/usergroups_enable_error_schema_exception.rb +56 -0
  153. data/lib/slack_web_api/exceptions/usergroups_list_error_schema_exception.rb +56 -0
  154. data/lib/slack_web_api/exceptions/usergroups_update_error_schema_exception.rb +56 -0
  155. data/lib/slack_web_api/exceptions/usergroups_users_list_error_schema_exception.rb +56 -0
  156. data/lib/slack_web_api/exceptions/usergroups_users_update_error_schema_exception.rb +56 -0
  157. data/lib/slack_web_api/exceptions/users_conversations_error_schema_exception.rb +56 -0
  158. data/lib/slack_web_api/exceptions/users_counts_error_schema_exception.rb +50 -0
  159. data/lib/slack_web_api/exceptions/users_delete_photo_error_schema_exception.rb +56 -0
  160. data/lib/slack_web_api/exceptions/users_identity_error_schema_exception.rb +56 -0
  161. data/lib/slack_web_api/exceptions/users_info_error_schema_exception.rb +56 -0
  162. data/lib/slack_web_api/exceptions/users_list_error_schema_exception.rb +56 -0
  163. data/lib/slack_web_api/exceptions/users_lookup_by_email_error_schema_exception.rb +56 -0
  164. data/lib/slack_web_api/exceptions/users_profile_get_error_schema_exception.rb +56 -0
  165. data/lib/slack_web_api/exceptions/users_profile_set_error_schema_exception.rb +56 -0
  166. data/lib/slack_web_api/exceptions/users_set_active_error_schema_exception.rb +56 -0
  167. data/lib/slack_web_api/exceptions/users_set_photo_error_schema_exception.rb +73 -0
  168. data/lib/slack_web_api/exceptions/users_set_presence_error_schema_exception.rb +56 -0
  169. data/lib/slack_web_api/http/api_response.rb +19 -0
  170. data/lib/slack_web_api/http/auth/oauth_2.rb +162 -0
  171. data/lib/slack_web_api/http/http_call_back.rb +10 -0
  172. data/lib/slack_web_api/http/http_method_enum.rb +10 -0
  173. data/lib/slack_web_api/http/http_request.rb +10 -0
  174. data/lib/slack_web_api/http/http_response.rb +10 -0
  175. data/lib/slack_web_api/http/proxy_settings.rb +22 -0
  176. data/lib/slack_web_api/logging/configuration/api_logging_configuration.rb +186 -0
  177. data/lib/slack_web_api/logging/sdk_logger.rb +17 -0
  178. data/lib/slack_web_api/models/admin_conversations_archive_schema.rb +71 -0
  179. data/lib/slack_web_api/models/admin_conversations_convert_to_private_schema.rb +71 -0
  180. data/lib/slack_web_api/models/admin_conversations_create_schema.rb +82 -0
  181. data/lib/slack_web_api/models/admin_conversations_delete_schema.rb +71 -0
  182. data/lib/slack_web_api/models/admin_conversations_get_conversation_prefs_schema.rb +82 -0
  183. data/lib/slack_web_api/models/admin_conversations_get_teams_schema.rb +92 -0
  184. data/lib/slack_web_api/models/admin_conversations_invite_schema.rb +71 -0
  185. data/lib/slack_web_api/models/admin_conversations_rename_schema.rb +71 -0
  186. data/lib/slack_web_api/models/admin_conversations_rename_schema1.rb +71 -0
  187. data/lib/slack_web_api/models/admin_conversations_search_schema.rb +91 -0
  188. data/lib/slack_web_api/models/admin_conversations_set_conversation_prefs_schema.rb +71 -0
  189. data/lib/slack_web_api/models/admin_conversations_unarchive_schema.rb +71 -0
  190. data/lib/slack_web_api/models/api_method_users_get_presence.rb +133 -0
  191. data/lib/slack_web_api/models/api_permissions_scopes_list_success_schema.rb +80 -0
  192. data/lib/slack_web_api/models/api_test_success_schema.rb +71 -0
  193. data/lib/slack_web_api/models/app_home.rb +86 -0
  194. data/lib/slack_web_api/models/apps_permissions_info_schema.rb +80 -0
  195. data/lib/slack_web_api/models/apps_permissions_request_schema.rb +71 -0
  196. data/lib/slack_web_api/models/apps_permissions_resources_list_success_schema.rb +101 -0
  197. data/lib/slack_web_api/models/apps_uninstall_schema.rb +71 -0
  198. data/lib/slack_web_api/models/attachment.rb +125 -0
  199. data/lib/slack_web_api/models/auth_revoke_schema.rb +80 -0
  200. data/lib/slack_web_api/models/auth_test_success_schema.rb +136 -0
  201. data/lib/slack_web_api/models/base_model.rb +110 -0
  202. data/lib/slack_web_api/models/block_kit_block.rb +72 -0
  203. data/lib/slack_web_api/models/bot.rb +128 -0
  204. data/lib/slack_web_api/models/bot_profile_object.rb +126 -0
  205. data/lib/slack_web_api/models/bots_info_schema.rb +80 -0
  206. data/lib/slack_web_api/models/can_thread.rb +85 -0
  207. data/lib/slack_web_api/models/channel.rb +86 -0
  208. data/lib/slack_web_api/models/channel_object.rb +382 -0
  209. data/lib/slack_web_api/models/chat_delete_scheduled_message_schema.rb +71 -0
  210. data/lib/slack_web_api/models/chat_delete_success_schema.rb +88 -0
  211. data/lib/slack_web_api/models/chat_get_permalink_success_schema.rb +88 -0
  212. data/lib/slack_web_api/models/chat_me_message_schema.rb +91 -0
  213. data/lib/slack_web_api/models/chat_post_ephemeral_success_schema.rb +80 -0
  214. data/lib/slack_web_api/models/chat_post_message_success_schema.rb +96 -0
  215. data/lib/slack_web_api/models/chat_schedule_message_success_schema.rb +108 -0
  216. data/lib/slack_web_api/models/chat_scheduled_messages_list_schema.rb +100 -0
  217. data/lib/slack_web_api/models/chat_unfurl_success_schema.rb +71 -0
  218. data/lib/slack_web_api/models/chat_update_success_schema.rb +105 -0
  219. data/lib/slack_web_api/models/conversations_archive_success_schema.rb +71 -0
  220. data/lib/slack_web_api/models/conversations_close_success_schema.rb +93 -0
  221. data/lib/slack_web_api/models/conversations_create_success_schema.rb +80 -0
  222. data/lib/slack_web_api/models/conversations_history_success_schema.rb +127 -0
  223. data/lib/slack_web_api/models/conversations_info_success_schema.rb +80 -0
  224. data/lib/slack_web_api/models/conversations_invite_error_schema.rb +80 -0
  225. data/lib/slack_web_api/models/conversations_join_success_schema.rb +102 -0
  226. data/lib/slack_web_api/models/conversations_kick_success_schema.rb +71 -0
  227. data/lib/slack_web_api/models/conversations_leave_success_schema.rb +83 -0
  228. data/lib/slack_web_api/models/conversations_list_success_schema.rb +92 -0
  229. data/lib/slack_web_api/models/conversations_mark_success_schema.rb +71 -0
  230. data/lib/slack_web_api/models/conversations_members_success_schema.rb +89 -0
  231. data/lib/slack_web_api/models/conversations_open_success_schema.rb +102 -0
  232. data/lib/slack_web_api/models/conversations_rename_success_schema.rb +80 -0
  233. data/lib/slack_web_api/models/conversations_replies_success_schema.rb +90 -0
  234. data/lib/slack_web_api/models/conversations_set_purpose_success_schema.rb +80 -0
  235. data/lib/slack_web_api/models/conversations_set_topic_success_schema.rb +80 -0
  236. data/lib/slack_web_api/models/conversations_unarchive_success_schema.rb +71 -0
  237. data/lib/slack_web_api/models/current.rb +82 -0
  238. data/lib/slack_web_api/models/default_success_template.rb +72 -0
  239. data/lib/slack_web_api/models/dialog_open_schema.rb +71 -0
  240. data/lib/slack_web_api/models/dnd_end_dnd_schema.rb +71 -0
  241. data/lib/slack_web_api/models/dnd_end_snooze_schema.rb +111 -0
  242. data/lib/slack_web_api/models/dnd_info_schema.rb +136 -0
  243. data/lib/slack_web_api/models/dnd_set_snooze_schema.rb +102 -0
  244. data/lib/slack_web_api/models/error.rb +60 -0
  245. data/lib/slack_web_api/models/error1.rb +65 -0
  246. data/lib/slack_web_api/models/error10.rb +60 -0
  247. data/lib/slack_web_api/models/error11.rb +60 -0
  248. data/lib/slack_web_api/models/error12.rb +104 -0
  249. data/lib/slack_web_api/models/error13.rb +120 -0
  250. data/lib/slack_web_api/models/error14.rb +108 -0
  251. data/lib/slack_web_api/models/error16.rb +116 -0
  252. data/lib/slack_web_api/models/error17.rb +100 -0
  253. data/lib/slack_web_api/models/error18.rb +84 -0
  254. data/lib/slack_web_api/models/error19.rb +104 -0
  255. data/lib/slack_web_api/models/error2.rb +60 -0
  256. data/lib/slack_web_api/models/error20.rb +112 -0
  257. data/lib/slack_web_api/models/error21.rb +120 -0
  258. data/lib/slack_web_api/models/error22.rb +108 -0
  259. data/lib/slack_web_api/models/error23.rb +124 -0
  260. data/lib/slack_web_api/models/error24.rb +128 -0
  261. data/lib/slack_web_api/models/error25.rb +92 -0
  262. data/lib/slack_web_api/models/error26.rb +166 -0
  263. data/lib/slack_web_api/models/error27.rb +112 -0
  264. data/lib/slack_web_api/models/error28.rb +120 -0
  265. data/lib/slack_web_api/models/error29.rb +128 -0
  266. data/lib/slack_web_api/models/error3.rb +60 -0
  267. data/lib/slack_web_api/models/error30.rb +133 -0
  268. data/lib/slack_web_api/models/error31.rb +101 -0
  269. data/lib/slack_web_api/models/error32.rb +133 -0
  270. data/lib/slack_web_api/models/error33.rb +96 -0
  271. data/lib/slack_web_api/models/error34.rb +92 -0
  272. data/lib/slack_web_api/models/error35.rb +153 -0
  273. data/lib/slack_web_api/models/error37.rb +121 -0
  274. data/lib/slack_web_api/models/error38.rb +121 -0
  275. data/lib/slack_web_api/models/error39.rb +129 -0
  276. data/lib/slack_web_api/models/error4.rb +80 -0
  277. data/lib/slack_web_api/models/error40.rb +84 -0
  278. data/lib/slack_web_api/models/error41.rb +105 -0
  279. data/lib/slack_web_api/models/error42.rb +100 -0
  280. data/lib/slack_web_api/models/error43.rb +121 -0
  281. data/lib/slack_web_api/models/error44.rb +129 -0
  282. data/lib/slack_web_api/models/error45.rb +96 -0
  283. data/lib/slack_web_api/models/error46.rb +113 -0
  284. data/lib/slack_web_api/models/error48.rb +121 -0
  285. data/lib/slack_web_api/models/error49.rb +136 -0
  286. data/lib/slack_web_api/models/error5.rb +60 -0
  287. data/lib/slack_web_api/models/error50.rb +108 -0
  288. data/lib/slack_web_api/models/error51.rb +112 -0
  289. data/lib/slack_web_api/models/error52.rb +104 -0
  290. data/lib/slack_web_api/models/error53.rb +116 -0
  291. data/lib/slack_web_api/models/error54.rb +92 -0
  292. data/lib/slack_web_api/models/error55.rb +100 -0
  293. data/lib/slack_web_api/models/error56.rb +100 -0
  294. data/lib/slack_web_api/models/error57.rb +100 -0
  295. data/lib/slack_web_api/models/error58.rb +112 -0
  296. data/lib/slack_web_api/models/error59.rb +116 -0
  297. data/lib/slack_web_api/models/error6.rb +60 -0
  298. data/lib/slack_web_api/models/error60.rb +108 -0
  299. data/lib/slack_web_api/models/error61.rb +108 -0
  300. data/lib/slack_web_api/models/error62.rb +120 -0
  301. data/lib/slack_web_api/models/error63.rb +92 -0
  302. data/lib/slack_web_api/models/error64.rb +116 -0
  303. data/lib/slack_web_api/models/error65.rb +116 -0
  304. data/lib/slack_web_api/models/error66.rb +104 -0
  305. data/lib/slack_web_api/models/error67.rb +96 -0
  306. data/lib/slack_web_api/models/error68.rb +120 -0
  307. data/lib/slack_web_api/models/error69.rb +128 -0
  308. data/lib/slack_web_api/models/error7.rb +56 -0
  309. data/lib/slack_web_api/models/error70.rb +116 -0
  310. data/lib/slack_web_api/models/error71.rb +108 -0
  311. data/lib/slack_web_api/models/error74.rb +96 -0
  312. data/lib/slack_web_api/models/error75.rb +128 -0
  313. data/lib/slack_web_api/models/error77.rb +128 -0
  314. data/lib/slack_web_api/models/error78.rb +112 -0
  315. data/lib/slack_web_api/models/error8.rb +56 -0
  316. data/lib/slack_web_api/models/error81.rb +92 -0
  317. data/lib/slack_web_api/models/error82.rb +112 -0
  318. data/lib/slack_web_api/models/error84.rb +116 -0
  319. data/lib/slack_web_api/models/error86.rb +120 -0
  320. data/lib/slack_web_api/models/error89.rb +117 -0
  321. data/lib/slack_web_api/models/error9.rb +68 -0
  322. data/lib/slack_web_api/models/error92.rb +92 -0
  323. data/lib/slack_web_api/models/error93.rb +100 -0
  324. data/lib/slack_web_api/models/error94.rb +100 -0
  325. data/lib/slack_web_api/models/error95.rb +108 -0
  326. data/lib/slack_web_api/models/error96.rb +128 -0
  327. data/lib/slack_web_api/models/error97.rb +100 -0
  328. data/lib/slack_web_api/models/error98.rb +120 -0
  329. data/lib/slack_web_api/models/error99.rb +104 -0
  330. data/lib/slack_web_api/models/errors_is_returned_when_an_error_associates_an_user.rb +90 -0
  331. data/lib/slack_web_api/models/external_org_migrations.rb +91 -0
  332. data/lib/slack_web_api/models/file_comment_object.rb +176 -0
  333. data/lib/slack_web_api/models/file_object.rb +790 -0
  334. data/lib/slack_web_api/models/files_comments_delete_schema.rb +71 -0
  335. data/lib/slack_web_api/models/files_delete_schema.rb +71 -0
  336. data/lib/slack_web_api/models/files_info_schema.rb +133 -0
  337. data/lib/slack_web_api/models/files_list_schema.rb +97 -0
  338. data/lib/slack_web_api/models/files_revoke_public_url_schema.rb +80 -0
  339. data/lib/slack_web_api/models/files_shared_public_url_schema.rb +80 -0
  340. data/lib/slack_web_api/models/files_upload_schema.rb +80 -0
  341. data/lib/slack_web_api/models/group.rb +86 -0
  342. data/lib/slack_web_api/models/icons.rb +90 -0
  343. data/lib/slack_web_api/models/icons1.rb +85 -0
  344. data/lib/slack_web_api/models/im.rb +86 -0
  345. data/lib/slack_web_api/models/info.rb +116 -0
  346. data/lib/slack_web_api/models/log.rb +168 -0
  347. data/lib/slack_web_api/models/login.rb +158 -0
  348. data/lib/slack_web_api/models/message.rb +128 -0
  349. data/lib/slack_web_api/models/message_object.rb +552 -0
  350. data/lib/slack_web_api/models/message_object1.rb +94 -0
  351. data/lib/slack_web_api/models/migration_exchange_success_schema.rb +111 -0
  352. data/lib/slack_web_api/models/mpim.rb +86 -0
  353. data/lib/slack_web_api/models/mself.rb +82 -0
  354. data/lib/slack_web_api/models/oauth_provider_error.rb +62 -0
  355. data/lib/slack_web_api/models/oauth_scope.rb +296 -0
  356. data/lib/slack_web_api/models/oauth_token.rb +96 -0
  357. data/lib/slack_web_api/models/objs_enterprise_user.rb +119 -0
  358. data/lib/slack_web_api/models/objs_icon.rb +147 -0
  359. data/lib/slack_web_api/models/objs_primary_owner.rb +82 -0
  360. data/lib/slack_web_api/models/objs_reminder.rb +129 -0
  361. data/lib/slack_web_api/models/objs_team_profile_field.rb +154 -0
  362. data/lib/slack_web_api/models/objs_team_profile_field_option.rb +112 -0
  363. data/lib/slack_web_api/models/objs_user_profile_short.rb +174 -0
  364. data/lib/slack_web_api/models/paging_object.rb +121 -0
  365. data/lib/slack_web_api/models/pins_add_schema.rb +71 -0
  366. data/lib/slack_web_api/models/pins_remove_schema.rb +71 -0
  367. data/lib/slack_web_api/models/plan.rb +44 -0
  368. data/lib/slack_web_api/models/prefs.rb +82 -0
  369. data/lib/slack_web_api/models/prefs1.rb +86 -0
  370. data/lib/slack_web_api/models/profile.rb +82 -0
  371. data/lib/slack_web_api/models/profile1.rb +146 -0
  372. data/lib/slack_web_api/models/purpose.rb +90 -0
  373. data/lib/slack_web_api/models/reaction_object.rb +90 -0
  374. data/lib/slack_web_api/models/reactions_add_schema.rb +71 -0
  375. data/lib/slack_web_api/models/reactions_list_schema.rb +102 -0
  376. data/lib/slack_web_api/models/reactions_remove_schema.rb +71 -0
  377. data/lib/slack_web_api/models/reminders_add_schema.rb +80 -0
  378. data/lib/slack_web_api/models/reminders_complete_schema.rb +71 -0
  379. data/lib/slack_web_api/models/reminders_delete_schema.rb +71 -0
  380. data/lib/slack_web_api/models/reminders_info_schema.rb +80 -0
  381. data/lib/slack_web_api/models/reminders_list_schema.rb +89 -0
  382. data/lib/slack_web_api/models/resource.rb +85 -0
  383. data/lib/slack_web_api/models/resources_in_info_from_apps_permissions_info.rb +94 -0
  384. data/lib/slack_web_api/models/response_metadata.rb +74 -0
  385. data/lib/slack_web_api/models/response_metadata3.rb +75 -0
  386. data/lib/slack_web_api/models/rtm_connect_schema.rb +96 -0
  387. data/lib/slack_web_api/models/scheduled_message.rb +110 -0
  388. data/lib/slack_web_api/models/scopes.rb +134 -0
  389. data/lib/slack_web_api/models/shares.rb +85 -0
  390. data/lib/slack_web_api/models/sso_provider.rb +95 -0
  391. data/lib/slack_web_api/models/stars_add_schema.rb +71 -0
  392. data/lib/slack_web_api/models/stars_list_schema.rb +90 -0
  393. data/lib/slack_web_api/models/stars_remove_schema.rb +71 -0
  394. data/lib/slack_web_api/models/subteam_usergroup_object.rb +260 -0
  395. data/lib/slack_web_api/models/team.rb +83 -0
  396. data/lib/slack_web_api/models/team1.rb +90 -0
  397. data/lib/slack_web_api/models/team_access_logs_schema.rb +97 -0
  398. data/lib/slack_web_api/models/team_info_schema.rb +80 -0
  399. data/lib/slack_web_api/models/team_integration_logs_schema.rb +97 -0
  400. data/lib/slack_web_api/models/team_object.rb +368 -0
  401. data/lib/slack_web_api/models/team_profile_get_success_schema.rb +80 -0
  402. data/lib/slack_web_api/models/topic.rb +90 -0
  403. data/lib/slack_web_api/models/type.rb +52 -0
  404. data/lib/slack_web_api/models/user_profile_object.rb +542 -0
  405. data/lib/slack_web_api/models/usergroups_create_schema.rb +80 -0
  406. data/lib/slack_web_api/models/usergroups_disable_schema.rb +80 -0
  407. data/lib/slack_web_api/models/usergroups_enable_schema.rb +80 -0
  408. data/lib/slack_web_api/models/usergroups_list_schema.rb +89 -0
  409. data/lib/slack_web_api/models/usergroups_update_schema.rb +80 -0
  410. data/lib/slack_web_api/models/usergroups_users_list_schema.rb +80 -0
  411. data/lib/slack_web_api/models/usergroups_users_update_schema.rb +80 -0
  412. data/lib/slack_web_api/models/users_conversations_success_schema.rb +93 -0
  413. data/lib/slack_web_api/models/users_delete_photo_schema.rb +71 -0
  414. data/lib/slack_web_api/models/users_info_success_schema.rb +80 -0
  415. data/lib/slack_web_api/models/users_list_schema.rb +102 -0
  416. data/lib/slack_web_api/models/users_lookup_by_email_success_schema.rb +80 -0
  417. data/lib/slack_web_api/models/users_profile_get_schema.rb +80 -0
  418. data/lib/slack_web_api/models/users_profile_set_schema.rb +100 -0
  419. data/lib/slack_web_api/models/users_set_active_schema.rb +71 -0
  420. data/lib/slack_web_api/models/users_set_photo_schema.rb +80 -0
  421. data/lib/slack_web_api/models/users_set_presence_schema.rb +71 -0
  422. data/lib/slack_web_api/models/who_can_post.rb +85 -0
  423. data/lib/slack_web_api/utilities/date_time_helper.rb +11 -0
  424. data/lib/slack_web_api/utilities/file_wrapper.rb +28 -0
  425. data/lib/slack_web_api.rb +532 -0
  426. metadata +509 -0
@@ -0,0 +1,125 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # Attachment Model.
8
+ class Attachment < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :fallback
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [Integer]
18
+ attr_accessor :id
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [Integer]
22
+ attr_accessor :image_bytes
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [Integer]
26
+ attr_accessor :image_height
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :image_url
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [Integer]
34
+ attr_accessor :image_width
35
+
36
+ # A mapping from model property names to API property names.
37
+ def self.names
38
+ @_hash = {} if @_hash.nil?
39
+ @_hash['fallback'] = 'fallback'
40
+ @_hash['id'] = 'id'
41
+ @_hash['image_bytes'] = 'image_bytes'
42
+ @_hash['image_height'] = 'image_height'
43
+ @_hash['image_url'] = 'image_url'
44
+ @_hash['image_width'] = 'image_width'
45
+ @_hash
46
+ end
47
+
48
+ # An array for optional fields
49
+ def self.optionals
50
+ %w[
51
+ fallback
52
+ image_bytes
53
+ image_height
54
+ image_url
55
+ image_width
56
+ ]
57
+ end
58
+
59
+ # An array for nullable fields
60
+ def self.nullables
61
+ []
62
+ end
63
+
64
+ def initialize(id:, fallback: SKIP, image_bytes: SKIP, image_height: SKIP,
65
+ image_url: SKIP, image_width: SKIP,
66
+ additional_properties: nil)
67
+ # Add additional model properties to the instance
68
+ additional_properties = {} if additional_properties.nil?
69
+
70
+ @fallback = fallback unless fallback == SKIP
71
+ @id = id
72
+ @image_bytes = image_bytes unless image_bytes == SKIP
73
+ @image_height = image_height unless image_height == SKIP
74
+ @image_url = image_url unless image_url == SKIP
75
+ @image_width = image_width unless image_width == SKIP
76
+ @additional_properties = additional_properties
77
+ end
78
+
79
+ # Creates an instance of the object from a hash.
80
+ def self.from_hash(hash)
81
+ return nil unless hash
82
+
83
+ # Extract variables from the hash.
84
+ id = hash.key?('id') ? hash['id'] : nil
85
+ fallback = hash.key?('fallback') ? hash['fallback'] : SKIP
86
+ image_bytes = hash.key?('image_bytes') ? hash['image_bytes'] : SKIP
87
+ image_height = hash.key?('image_height') ? hash['image_height'] : SKIP
88
+ image_url = hash.key?('image_url') ? hash['image_url'] : SKIP
89
+ image_width = hash.key?('image_width') ? hash['image_width'] : SKIP
90
+
91
+ # Create a new hash for additional properties, removing known properties.
92
+ new_hash = hash.reject { |k, _| names.value?(k) }
93
+
94
+ additional_properties = APIHelper.get_additional_properties(
95
+ new_hash, proc { |value| value }
96
+ )
97
+
98
+ # Create object from extracted values.
99
+ Attachment.new(id: id,
100
+ fallback: fallback,
101
+ image_bytes: image_bytes,
102
+ image_height: image_height,
103
+ image_url: image_url,
104
+ image_width: image_width,
105
+ additional_properties: additional_properties)
106
+ end
107
+
108
+ # Provides a human-readable string representation of the object.
109
+ def to_s
110
+ class_name = self.class.name.split('::').last
111
+ "<#{class_name} fallback: #{@fallback}, id: #{@id}, image_bytes: #{@image_bytes},"\
112
+ " image_height: #{@image_height}, image_url: #{@image_url}, image_width: #{@image_width},"\
113
+ " additional_properties: #{@additional_properties}>"
114
+ end
115
+
116
+ # Provides a debugging-friendly string with detailed object information.
117
+ def inspect
118
+ class_name = self.class.name.split('::').last
119
+ "<#{class_name} fallback: #{@fallback.inspect}, id: #{@id.inspect}, image_bytes:"\
120
+ " #{@image_bytes.inspect}, image_height: #{@image_height.inspect}, image_url:"\
121
+ " #{@image_url.inspect}, image_width: #{@image_width.inspect}, additional_properties:"\
122
+ " #{@additional_properties}>"
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,80 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # Schema for successful response from auth.revoke method
8
+ class AuthRevokeSchema < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_reader :ok
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :revoked
19
+
20
+ # A mapping from model property names to API property names.
21
+ def self.names
22
+ @_hash = {} if @_hash.nil?
23
+ @_hash['ok'] = 'ok'
24
+ @_hash['revoked'] = 'revoked'
25
+ @_hash
26
+ end
27
+
28
+ # An array for optional fields
29
+ def self.optionals
30
+ []
31
+ end
32
+
33
+ # An array for nullable fields
34
+ def self.nullables
35
+ []
36
+ end
37
+
38
+ def initialize(revoked:, additional_properties: nil)
39
+ # Add additional model properties to the instance
40
+ additional_properties = {} if additional_properties.nil?
41
+
42
+ @ok = 'True'
43
+ @revoked = revoked
44
+ @additional_properties = additional_properties
45
+ end
46
+
47
+ # Creates an instance of the object from a hash.
48
+ def self.from_hash(hash)
49
+ return nil unless hash
50
+
51
+ # Extract variables from the hash.
52
+ revoked = hash.key?('revoked') ? hash['revoked'] : nil
53
+
54
+ # Create a new hash for additional properties, removing known properties.
55
+ new_hash = hash.reject { |k, _| names.value?(k) }
56
+
57
+ additional_properties = APIHelper.get_additional_properties(
58
+ new_hash, proc { |value| value }
59
+ )
60
+
61
+ # Create object from extracted values.
62
+ AuthRevokeSchema.new(revoked: revoked,
63
+ additional_properties: additional_properties)
64
+ end
65
+
66
+ # Provides a human-readable string representation of the object.
67
+ def to_s
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} ok: #{@ok}, revoked: #{@revoked}, additional_properties:"\
70
+ " #{@additional_properties}>"
71
+ end
72
+
73
+ # Provides a debugging-friendly string with detailed object information.
74
+ def inspect
75
+ class_name = self.class.name.split('::').last
76
+ "<#{class_name} ok: #{@ok.inspect}, revoked: #{@revoked.inspect}, additional_properties:"\
77
+ " #{@additional_properties}>"
78
+ end
79
+ end
80
+ end
@@ -0,0 +1,136 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # Schema for successful response auth.test method
8
+ class AuthTestSuccessSchema < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :bot_id
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :is_enterprise_install
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [String]
22
+ attr_reader :ok
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :team
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :team_id
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [String]
34
+ attr_accessor :url
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :user
39
+
40
+ # TODO: Write general description for this method
41
+ # @return [String]
42
+ attr_accessor :user_id
43
+
44
+ # A mapping from model property names to API property names.
45
+ def self.names
46
+ @_hash = {} if @_hash.nil?
47
+ @_hash['bot_id'] = 'bot_id'
48
+ @_hash['is_enterprise_install'] = 'is_enterprise_install'
49
+ @_hash['ok'] = 'ok'
50
+ @_hash['team'] = 'team'
51
+ @_hash['team_id'] = 'team_id'
52
+ @_hash['url'] = 'url'
53
+ @_hash['user'] = 'user'
54
+ @_hash['user_id'] = 'user_id'
55
+ @_hash
56
+ end
57
+
58
+ # An array for optional fields
59
+ def self.optionals
60
+ %w[
61
+ bot_id
62
+ is_enterprise_install
63
+ ]
64
+ end
65
+
66
+ # An array for nullable fields
67
+ def self.nullables
68
+ []
69
+ end
70
+
71
+ def initialize(team:, team_id:, url:, user:, user_id:, bot_id: SKIP,
72
+ is_enterprise_install: SKIP, additional_properties: nil)
73
+ # Add additional model properties to the instance
74
+ additional_properties = {} if additional_properties.nil?
75
+
76
+ @bot_id = bot_id unless bot_id == SKIP
77
+ @is_enterprise_install = is_enterprise_install unless is_enterprise_install == SKIP
78
+ @ok = 'True'
79
+ @team = team
80
+ @team_id = team_id
81
+ @url = url
82
+ @user = user
83
+ @user_id = user_id
84
+ @additional_properties = additional_properties
85
+ end
86
+
87
+ # Creates an instance of the object from a hash.
88
+ def self.from_hash(hash)
89
+ return nil unless hash
90
+
91
+ # Extract variables from the hash.
92
+ team = hash.key?('team') ? hash['team'] : nil
93
+ team_id = hash.key?('team_id') ? hash['team_id'] : nil
94
+ url = hash.key?('url') ? hash['url'] : nil
95
+ user = hash.key?('user') ? hash['user'] : nil
96
+ user_id = hash.key?('user_id') ? hash['user_id'] : nil
97
+ bot_id = hash.key?('bot_id') ? hash['bot_id'] : SKIP
98
+ is_enterprise_install =
99
+ hash.key?('is_enterprise_install') ? hash['is_enterprise_install'] : SKIP
100
+
101
+ # Create a new hash for additional properties, removing known properties.
102
+ new_hash = hash.reject { |k, _| names.value?(k) }
103
+
104
+ additional_properties = APIHelper.get_additional_properties(
105
+ new_hash, proc { |value| value }
106
+ )
107
+
108
+ # Create object from extracted values.
109
+ AuthTestSuccessSchema.new(team: team,
110
+ team_id: team_id,
111
+ url: url,
112
+ user: user,
113
+ user_id: user_id,
114
+ bot_id: bot_id,
115
+ is_enterprise_install: is_enterprise_install,
116
+ additional_properties: additional_properties)
117
+ end
118
+
119
+ # Provides a human-readable string representation of the object.
120
+ def to_s
121
+ class_name = self.class.name.split('::').last
122
+ "<#{class_name} bot_id: #{@bot_id}, is_enterprise_install: #{@is_enterprise_install}, ok:"\
123
+ " #{@ok}, team: #{@team}, team_id: #{@team_id}, url: #{@url}, user: #{@user}, user_id:"\
124
+ " #{@user_id}, additional_properties: #{@additional_properties}>"
125
+ end
126
+
127
+ # Provides a debugging-friendly string with detailed object information.
128
+ def inspect
129
+ class_name = self.class.name.split('::').last
130
+ "<#{class_name} bot_id: #{@bot_id.inspect}, is_enterprise_install:"\
131
+ " #{@is_enterprise_install.inspect}, ok: #{@ok.inspect}, team: #{@team.inspect}, team_id:"\
132
+ " #{@team_id.inspect}, url: #{@url.inspect}, user: #{@user.inspect}, user_id:"\
133
+ " #{@user_id.inspect}, additional_properties: #{@additional_properties}>"
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,110 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # Base model.
8
+ # rubocop:disable all
9
+ class BaseModel < CoreLibrary::BaseModel
10
+ # Returns a Hash representation of the current object.
11
+ def to_hash
12
+ # validating the model being serialized
13
+ self.class.validate(self) if self.class.respond_to?(:validate)
14
+
15
+ hash = {}
16
+ instance_variables.each do |name|
17
+ value = instance_variable_get(name)
18
+ name = name[1..]
19
+ if name == 'additional_properties'
20
+ additional_properties = process_additional_properties(value, self.class.names)
21
+ hash.merge!(additional_properties)
22
+ else
23
+ key = self.class.names.key?(name) ? self.class.names[name] : name
24
+ optional_fields = self.class.optionals
25
+ nullable_fields = self.class.nullables
26
+ if value.nil?
27
+ next unless nullable_fields.include?(name)
28
+
29
+ if !optional_fields.include?(name) && !nullable_fields.include?(name)
30
+ raise ArgumentError,
31
+ "`#{name}` cannot be nil in `#{self.class}`. Please specify a valid value."
32
+ end
33
+ end
34
+
35
+ hash[key] = nil
36
+ unless value.nil?
37
+ if respond_to?("to_custom_#{name}")
38
+ if (value.instance_of? Array) || (value.instance_of? Hash)
39
+ params = [hash, key]
40
+ hash[key] = send("to_custom_#{name}", *params)
41
+ else
42
+ hash[key] = send("to_custom_#{name}")
43
+ end
44
+ elsif respond_to?("to_union_type_#{name}")
45
+ hash[key] = send("to_union_type_#{name}")
46
+ elsif value.instance_of? Array
47
+ hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
48
+ elsif value.instance_of? Hash
49
+ hash[key] = {}
50
+ value.each do |k, v|
51
+ hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
52
+ end
53
+ else
54
+ hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
55
+ end
56
+ end
57
+ end
58
+ end
59
+ hash
60
+ end
61
+
62
+ # Processes additional properties, ensuring no conflicts with existing properties.
63
+ def process_additional_properties(additional_properties, existing_prop_names)
64
+ hash = {}
65
+ additional_properties.each do |name, value|
66
+ check_for_conflict(name, existing_prop_names)
67
+
68
+ hash[name] = if value.is_a?(Array)
69
+ process_array(value)
70
+ elsif value.is_a?(Hash)
71
+ process_hash(value)
72
+ else
73
+ process_basic_value(value)
74
+ end
75
+ end
76
+ hash
77
+ end
78
+
79
+ # Checks if an additional property conflicts with a model's existing property.
80
+ def check_for_conflict(name, existing_prop_names)
81
+ return unless existing_prop_names.key?(name)
82
+
83
+ raise ArgumentError, "An additional property key, '#{name}' conflicts with one of the model's properties"
84
+ end
85
+
86
+ # Processes an array of values, recursively calling `to_hash` on BaseModel objects.
87
+ def process_array(value)
88
+ value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
89
+ end
90
+
91
+ # Processes a hash of values, recursively calling `to_hash` on BaseModel objects.
92
+ def process_hash(value)
93
+ value.transform_values do |v|
94
+ v.is_a?(BaseModel) ? v.to_hash : v
95
+ end
96
+ end
97
+
98
+ # Processes a basic value (non-array, non-hash).
99
+ def process_basic_value(value)
100
+ value.is_a?(BaseModel) ? value.to_hash : value
101
+ end
102
+
103
+ # Returns a JSON representation of the curent object.
104
+ def to_json(options = {})
105
+ hash = to_hash
106
+ hash.to_json(options)
107
+ end
108
+ end
109
+ # rubocop:enable all
110
+ end
@@ -0,0 +1,72 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # BlockKitBlock Model.
8
+ class BlockKitBlock < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :type
15
+
16
+ # A mapping from model property names to API property names.
17
+ def self.names
18
+ @_hash = {} if @_hash.nil?
19
+ @_hash['type'] = 'type'
20
+ @_hash
21
+ end
22
+
23
+ # An array for optional fields
24
+ def self.optionals
25
+ []
26
+ end
27
+
28
+ # An array for nullable fields
29
+ def self.nullables
30
+ []
31
+ end
32
+
33
+ def initialize(type:, additional_properties: nil)
34
+ # Add additional model properties to the instance
35
+ additional_properties = {} if additional_properties.nil?
36
+
37
+ @type = type
38
+ @additional_properties = additional_properties
39
+ end
40
+
41
+ # Creates an instance of the object from a hash.
42
+ def self.from_hash(hash)
43
+ return nil unless hash
44
+
45
+ # Extract variables from the hash.
46
+ type = hash.key?('type') ? hash['type'] : nil
47
+
48
+ # Create a new hash for additional properties, removing known properties.
49
+ new_hash = hash.reject { |k, _| names.value?(k) }
50
+
51
+ additional_properties = APIHelper.get_additional_properties(
52
+ new_hash, proc { |value| value }
53
+ )
54
+
55
+ # Create object from extracted values.
56
+ BlockKitBlock.new(type: type,
57
+ additional_properties: additional_properties)
58
+ end
59
+
60
+ # Provides a human-readable string representation of the object.
61
+ def to_s
62
+ class_name = self.class.name.split('::').last
63
+ "<#{class_name} type: #{@type}, additional_properties: #{@additional_properties}>"
64
+ end
65
+
66
+ # Provides a debugging-friendly string with detailed object information.
67
+ def inspect
68
+ class_name = self.class.name.split('::').last
69
+ "<#{class_name} type: #{@type.inspect}, additional_properties: #{@additional_properties}>"
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,128 @@
1
+ # slack_web_api
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module SlackWebApi
7
+ # Bot Model.
8
+ class Bot < BaseModel
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # TODO: Write general description for this method
13
+ # @return [String]
14
+ attr_accessor :app_id
15
+
16
+ # TODO: Write general description for this method
17
+ # @return [TrueClass | FalseClass]
18
+ attr_accessor :deleted
19
+
20
+ # TODO: Write general description for this method
21
+ # @return [Icons]
22
+ attr_accessor :icons
23
+
24
+ # TODO: Write general description for this method
25
+ # @return [String]
26
+ attr_accessor :id
27
+
28
+ # TODO: Write general description for this method
29
+ # @return [String]
30
+ attr_accessor :name
31
+
32
+ # TODO: Write general description for this method
33
+ # @return [Integer]
34
+ attr_accessor :updated
35
+
36
+ # TODO: Write general description for this method
37
+ # @return [String]
38
+ attr_accessor :user_id
39
+
40
+ # A mapping from model property names to API property names.
41
+ def self.names
42
+ @_hash = {} if @_hash.nil?
43
+ @_hash['app_id'] = 'app_id'
44
+ @_hash['deleted'] = 'deleted'
45
+ @_hash['icons'] = 'icons'
46
+ @_hash['id'] = 'id'
47
+ @_hash['name'] = 'name'
48
+ @_hash['updated'] = 'updated'
49
+ @_hash['user_id'] = 'user_id'
50
+ @_hash
51
+ end
52
+
53
+ # An array for optional fields
54
+ def self.optionals
55
+ %w[
56
+ user_id
57
+ ]
58
+ end
59
+
60
+ # An array for nullable fields
61
+ def self.nullables
62
+ []
63
+ end
64
+
65
+ def initialize(app_id:, deleted:, icons:, id:, name:, updated:,
66
+ user_id: SKIP, additional_properties: nil)
67
+ # Add additional model properties to the instance
68
+ additional_properties = {} if additional_properties.nil?
69
+
70
+ @app_id = app_id
71
+ @deleted = deleted
72
+ @icons = icons
73
+ @id = id
74
+ @name = name
75
+ @updated = updated
76
+ @user_id = user_id unless user_id == SKIP
77
+ @additional_properties = additional_properties
78
+ end
79
+
80
+ # Creates an instance of the object from a hash.
81
+ def self.from_hash(hash)
82
+ return nil unless hash
83
+
84
+ # Extract variables from the hash.
85
+ app_id = hash.key?('app_id') ? hash['app_id'] : nil
86
+ deleted = hash.key?('deleted') ? hash['deleted'] : nil
87
+ icons = Icons.from_hash(hash['icons']) if hash['icons']
88
+ id = hash.key?('id') ? hash['id'] : nil
89
+ name = hash.key?('name') ? hash['name'] : nil
90
+ updated = hash.key?('updated') ? hash['updated'] : nil
91
+ user_id = hash.key?('user_id') ? hash['user_id'] : SKIP
92
+
93
+ # Create a new hash for additional properties, removing known properties.
94
+ new_hash = hash.reject { |k, _| names.value?(k) }
95
+
96
+ additional_properties = APIHelper.get_additional_properties(
97
+ new_hash, proc { |value| value }
98
+ )
99
+
100
+ # Create object from extracted values.
101
+ Bot.new(app_id: app_id,
102
+ deleted: deleted,
103
+ icons: icons,
104
+ id: id,
105
+ name: name,
106
+ updated: updated,
107
+ user_id: user_id,
108
+ additional_properties: additional_properties)
109
+ end
110
+
111
+ # Provides a human-readable string representation of the object.
112
+ def to_s
113
+ class_name = self.class.name.split('::').last
114
+ "<#{class_name} app_id: #{@app_id}, deleted: #{@deleted}, icons: #{@icons}, id: #{@id},"\
115
+ " name: #{@name}, updated: #{@updated}, user_id: #{@user_id}, additional_properties:"\
116
+ " #{@additional_properties}>"
117
+ end
118
+
119
+ # Provides a debugging-friendly string with detailed object information.
120
+ def inspect
121
+ class_name = self.class.name.split('::').last
122
+ "<#{class_name} app_id: #{@app_id.inspect}, deleted: #{@deleted.inspect}, icons:"\
123
+ " #{@icons.inspect}, id: #{@id.inspect}, name: #{@name.inspect}, updated:"\
124
+ " #{@updated.inspect}, user_id: #{@user_id.inspect}, additional_properties:"\
125
+ " #{@additional_properties}>"
126
+ end
127
+ end
128
+ end