slack_resources 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (254) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +66 -1
  3. data/.rubocop.yml +10 -2
  4. data/Gemfile +0 -1
  5. data/Gemfile.lock +7 -7
  6. data/lib/generate_event_api_resources.rb +8 -0
  7. data/lib/slack_resources.rb +9 -1
  8. data/lib/slack_resources/generator/event_api/examples_preparation.rb +71 -0
  9. data/lib/{event_api → slack_resources/generator/event_api}/fetch.rb +0 -0
  10. data/lib/slack_resources/generator/event_api/strong_hash.rb +25 -0
  11. data/lib/slack_resources/generator/event_api/to_schema.rb +200 -0
  12. data/lib/slack_resources/generator/event_api/type_detection.rb +272 -0
  13. data/lib/slack_resources/generator/event_api/write.rb +123 -0
  14. data/lib/slack_resources/raw_data/event_api/_added_examples/emoji_changed.add.json +7 -0
  15. data/lib/slack_resources/raw_data/event_api/_added_examples/emoji_changed.remove.json +6 -0
  16. data/lib/slack_resources/{resources → raw_data}/event_api/_added_examples/event_callback.json +0 -0
  17. data/lib/slack_resources/raw_data/event_api/examples/app_mention.json +8 -0
  18. data/lib/slack_resources/raw_data/event_api/examples/app_rate_limited.json +7 -0
  19. data/lib/slack_resources/raw_data/event_api/examples/app_uninstalled.json +11 -0
  20. data/lib/slack_resources/raw_data/event_api/examples/channel_archive.json +5 -0
  21. data/lib/slack_resources/raw_data/event_api/examples/channel_created.json +9 -0
  22. data/lib/slack_resources/raw_data/event_api/examples/channel_deleted.json +4 -0
  23. data/lib/slack_resources/raw_data/event_api/examples/channel_history_changed.json +6 -0
  24. data/lib/slack_resources/raw_data/event_api/examples/channel_left.json +4 -0
  25. data/lib/slack_resources/raw_data/event_api/examples/channel_rename.json +8 -0
  26. data/lib/slack_resources/raw_data/event_api/examples/channel_unarchive.json +5 -0
  27. data/lib/slack_resources/raw_data/event_api/examples/dnd_updated.json +11 -0
  28. data/lib/slack_resources/raw_data/event_api/examples/dnd_updated_user.json +9 -0
  29. data/lib/slack_resources/raw_data/event_api/examples/email_domain_changed.json +5 -0
  30. data/lib/slack_resources/raw_data/event_api/examples/emoji_changed.json +8 -0
  31. data/lib/slack_resources/raw_data/event_api/examples/file_change.json +7 -0
  32. data/lib/slack_resources/raw_data/event_api/examples/file_comment_added.json +9 -0
  33. data/lib/slack_resources/raw_data/event_api/examples/file_comment_deleted.json +8 -0
  34. data/lib/slack_resources/raw_data/event_api/examples/file_comment_edited.json +9 -0
  35. data/lib/slack_resources/raw_data/event_api/examples/file_created.json +7 -0
  36. data/lib/slack_resources/raw_data/event_api/examples/file_deleted.json +5 -0
  37. data/lib/slack_resources/raw_data/event_api/examples/file_public.json +7 -0
  38. data/lib/slack_resources/raw_data/event_api/examples/file_shared.json +7 -0
  39. data/lib/slack_resources/raw_data/event_api/examples/file_unshared.json +7 -0
  40. data/lib/slack_resources/raw_data/event_api/examples/grid_migration_finished.json +12 -0
  41. data/lib/slack_resources/raw_data/event_api/examples/grid_migration_started.json +12 -0
  42. data/lib/slack_resources/raw_data/event_api/examples/group_archive.json +4 -0
  43. data/lib/slack_resources/raw_data/event_api/examples/group_close.json +5 -0
  44. data/lib/slack_resources/raw_data/event_api/examples/group_deleted.json +4 -0
  45. data/lib/slack_resources/raw_data/event_api/examples/group_history_changed.json +6 -0
  46. data/lib/slack_resources/raw_data/event_api/examples/group_left.json +4 -0
  47. data/lib/slack_resources/raw_data/event_api/examples/group_open.json +5 -0
  48. data/lib/slack_resources/raw_data/event_api/examples/group_rename.json +8 -0
  49. data/lib/slack_resources/raw_data/event_api/examples/group_unarchive.json +4 -0
  50. data/lib/slack_resources/raw_data/event_api/examples/im_close.json +5 -0
  51. data/lib/slack_resources/raw_data/event_api/examples/im_created.json +6 -0
  52. data/lib/slack_resources/raw_data/event_api/examples/im_history_changed.json +6 -0
  53. data/lib/slack_resources/raw_data/event_api/examples/im_open.json +5 -0
  54. data/lib/slack_resources/raw_data/event_api/examples/link_shared.json +33 -0
  55. data/lib/slack_resources/raw_data/event_api/examples/member_joined_channel.json +8 -0
  56. data/lib/slack_resources/raw_data/event_api/examples/member_left_channel.json +7 -0
  57. data/lib/slack_resources/raw_data/event_api/examples/message.app_home.json +20 -0
  58. data/lib/slack_resources/raw_data/event_api/examples/message.channels.json +20 -0
  59. data/lib/slack_resources/raw_data/event_api/examples/message.groups.json +20 -0
  60. data/lib/slack_resources/raw_data/event_api/examples/message.im.json +20 -0
  61. data/lib/slack_resources/raw_data/event_api/examples/message.json +7 -0
  62. data/lib/slack_resources/raw_data/event_api/examples/message.mpim.json +20 -0
  63. data/lib/slack_resources/raw_data/event_api/examples/pin_added.json +8 -0
  64. data/lib/slack_resources/raw_data/event_api/examples/pin_removed.json +9 -0
  65. data/lib/slack_resources/raw_data/event_api/examples/reaction_added.json +12 -0
  66. data/lib/slack_resources/raw_data/event_api/examples/reaction_removed.json +12 -0
  67. data/lib/slack_resources/raw_data/event_api/examples/resources_added.json +31 -0
  68. data/lib/slack_resources/raw_data/event_api/examples/resources_removed.json +31 -0
  69. data/lib/slack_resources/raw_data/event_api/examples/scope_denied.json +20 -0
  70. data/lib/slack_resources/raw_data/event_api/examples/scope_granted.json +20 -0
  71. data/lib/slack_resources/raw_data/event_api/examples/star_added.json +7 -0
  72. data/lib/slack_resources/raw_data/event_api/examples/star_removed.json +7 -0
  73. data/lib/slack_resources/raw_data/event_api/examples/subteam_created.json +28 -0
  74. data/lib/slack_resources/raw_data/event_api/examples/subteam_members_changed.json +17 -0
  75. data/lib/slack_resources/raw_data/event_api/examples/subteam_self_added.json +4 -0
  76. data/lib/slack_resources/raw_data/event_api/examples/subteam_self_removed.json +4 -0
  77. data/lib/slack_resources/raw_data/event_api/examples/subteam_updated.json +34 -0
  78. data/lib/slack_resources/raw_data/event_api/examples/team_domain_change.json +5 -0
  79. data/lib/slack_resources/raw_data/event_api/examples/team_join.json +5 -0
  80. data/lib/slack_resources/raw_data/event_api/examples/team_rename.json +4 -0
  81. data/lib/slack_resources/raw_data/event_api/examples/tokens_revoked.json +19 -0
  82. data/lib/slack_resources/raw_data/event_api/examples/url_verification.json +5 -0
  83. data/lib/slack_resources/raw_data/event_api/examples/user_change.json +5 -0
  84. data/lib/slack_resources/raw_data/event_api/examples/user_resource_denied.json +20 -0
  85. data/lib/slack_resources/raw_data/event_api/examples/user_resource_granted.json +20 -0
  86. data/lib/slack_resources/raw_data/event_api/examples/user_resource_removed.json +16 -0
  87. data/lib/slack_resources/{resources → raw_data}/event_api/meta.json +0 -72
  88. data/lib/{schema.json → slack_resources/raw_data/event_api/preset_schemas.json} +7 -0
  89. data/lib/slack_resources/resources/event_api.rb +38 -0
  90. data/lib/slack_resources/resources/event_api/details/app_mention.json +67 -46
  91. data/lib/slack_resources/resources/event_api/details/app_rate_limited.json +59 -41
  92. data/lib/slack_resources/resources/event_api/details/app_uninstalled.json +22 -16
  93. data/lib/slack_resources/resources/event_api/details/channel_archive.json +42 -30
  94. data/lib/slack_resources/resources/event_api/details/channel_created.json +63 -54
  95. data/lib/slack_resources/resources/event_api/details/channel_deleted.json +32 -23
  96. data/lib/slack_resources/resources/event_api/details/channel_history_changed.json +48 -33
  97. data/lib/slack_resources/resources/event_api/details/channel_left.json +32 -23
  98. data/lib/slack_resources/resources/event_api/details/channel_rename.json +58 -49
  99. data/lib/slack_resources/resources/event_api/details/channel_unarchive.json +42 -30
  100. data/lib/slack_resources/resources/event_api/details/dnd_updated.json +66 -54
  101. data/lib/slack_resources/resources/event_api/details/dnd_updated_user.json +62 -50
  102. data/lib/slack_resources/resources/event_api/details/email_domain_changed.json +39 -27
  103. data/lib/slack_resources/resources/event_api/details/emoji_changed.add.json +78 -0
  104. data/lib/slack_resources/resources/event_api/details/emoji_changed.json +85 -44
  105. data/lib/slack_resources/resources/event_api/details/emoji_changed.remove.json +77 -0
  106. data/lib/slack_resources/resources/event_api/details/event_callback.json +102 -72
  107. data/lib/slack_resources/resources/event_api/details/file_change.json +49 -37
  108. data/lib/slack_resources/resources/event_api/details/file_comment_added.json +61 -46
  109. data/lib/slack_resources/resources/event_api/details/file_comment_deleted.json +59 -44
  110. data/lib/slack_resources/resources/event_api/details/file_comment_edited.json +61 -46
  111. data/lib/slack_resources/resources/event_api/details/file_created.json +49 -37
  112. data/lib/slack_resources/resources/event_api/details/file_deleted.json +41 -29
  113. data/lib/slack_resources/resources/event_api/details/file_public.json +49 -37
  114. data/lib/slack_resources/resources/event_api/details/file_shared.json +49 -37
  115. data/lib/slack_resources/resources/event_api/details/file_unshared.json +49 -37
  116. data/lib/slack_resources/resources/event_api/details/grid_migration_finished.json +31 -22
  117. data/lib/slack_resources/resources/event_api/details/grid_migration_started.json +31 -22
  118. data/lib/slack_resources/resources/event_api/details/group_archive.json +32 -23
  119. data/lib/slack_resources/resources/event_api/details/group_close.json +42 -30
  120. data/lib/slack_resources/resources/event_api/details/group_deleted.json +32 -23
  121. data/lib/slack_resources/resources/event_api/details/group_history_changed.json +48 -33
  122. data/lib/slack_resources/resources/event_api/details/group_left.json +32 -23
  123. data/lib/slack_resources/resources/event_api/details/group_open.json +42 -30
  124. data/lib/slack_resources/resources/event_api/details/group_rename.json +58 -49
  125. data/lib/slack_resources/resources/event_api/details/group_unarchive.json +32 -23
  126. data/lib/slack_resources/resources/event_api/details/im_close.json +42 -30
  127. data/lib/slack_resources/resources/event_api/details/im_created.json +53 -41
  128. data/lib/slack_resources/resources/event_api/details/im_history_changed.json +48 -33
  129. data/lib/slack_resources/resources/event_api/details/im_open.json +42 -30
  130. data/lib/slack_resources/resources/event_api/details/link_shared.json +107 -83
  131. data/lib/slack_resources/resources/event_api/details/member_joined_channel.json +66 -48
  132. data/lib/slack_resources/resources/event_api/details/member_left_channel.json +58 -43
  133. data/lib/slack_resources/resources/event_api/details/message.app_home.json +74 -53
  134. data/lib/slack_resources/resources/event_api/details/message.channels.json +74 -56
  135. data/lib/slack_resources/resources/event_api/details/message.groups.json +74 -56
  136. data/lib/slack_resources/resources/event_api/details/message.im.json +74 -56
  137. data/lib/slack_resources/resources/event_api/details/message.json +106 -60
  138. data/lib/slack_resources/resources/event_api/details/message.mpim.json +74 -56
  139. data/lib/slack_resources/resources/event_api/details/pin_added.json +65 -47
  140. data/lib/slack_resources/resources/event_api/details/pin_removed.json +73 -52
  141. data/lib/slack_resources/resources/event_api/details/reaction_added.json +94 -73
  142. data/lib/slack_resources/resources/event_api/details/reaction_removed.json +94 -73
  143. data/lib/slack_resources/resources/event_api/details/resources_added.json +127 -115
  144. data/lib/slack_resources/resources/event_api/details/resources_removed.json +127 -115
  145. data/lib/slack_resources/resources/event_api/details/scope_denied.json +74 -59
  146. data/lib/slack_resources/resources/event_api/details/scope_granted.json +74 -59
  147. data/lib/slack_resources/resources/event_api/details/star_added.json +56 -41
  148. data/lib/slack_resources/resources/event_api/details/star_removed.json +56 -41
  149. data/lib/slack_resources/resources/event_api/details/subteam_created.json +177 -168
  150. data/lib/slack_resources/resources/event_api/details/subteam_members_changed.json +118 -82
  151. data/lib/slack_resources/resources/event_api/details/subteam_self_added.json +31 -22
  152. data/lib/slack_resources/resources/event_api/details/subteam_self_removed.json +31 -22
  153. data/lib/slack_resources/resources/event_api/details/subteam_updated.json +189 -180
  154. data/lib/slack_resources/resources/event_api/details/team_domain_change.json +38 -26
  155. data/lib/slack_resources/resources/event_api/details/team_join.json +35 -26
  156. data/lib/slack_resources/resources/event_api/details/team_rename.json +32 -23
  157. data/lib/slack_resources/resources/event_api/details/tokens_revoked.json +58 -49
  158. data/lib/slack_resources/resources/event_api/details/url_verification.json +32 -26
  159. data/lib/slack_resources/resources/event_api/details/user_change.json +35 -26
  160. data/lib/slack_resources/resources/event_api/details/user_resource_denied.json +82 -64
  161. data/lib/slack_resources/resources/event_api/details/user_resource_granted.json +82 -64
  162. data/lib/slack_resources/resources/event_api/details/user_resource_removed.json +41 -29
  163. data/lib/slack_resources/resources/event_api/examples/app_mention.json +4 -4
  164. data/lib/slack_resources/resources/event_api/examples/app_rate_limited.json +4 -4
  165. data/lib/slack_resources/resources/event_api/examples/app_uninstalled.json +1 -9
  166. data/lib/slack_resources/resources/event_api/examples/channel_archive.json +1 -1
  167. data/lib/slack_resources/resources/event_api/examples/channel_created.json +2 -2
  168. data/lib/slack_resources/resources/event_api/examples/channel_deleted.json +2 -2
  169. data/lib/slack_resources/resources/event_api/examples/channel_history_changed.json +2 -2
  170. data/lib/slack_resources/resources/event_api/examples/channel_left.json +2 -2
  171. data/lib/slack_resources/resources/event_api/examples/channel_rename.json +2 -2
  172. data/lib/slack_resources/resources/event_api/examples/channel_unarchive.json +1 -1
  173. data/lib/slack_resources/resources/event_api/examples/dnd_updated.json +3 -3
  174. data/lib/slack_resources/resources/event_api/examples/dnd_updated_user.json +3 -3
  175. data/lib/slack_resources/resources/event_api/examples/email_domain_changed.json +2 -2
  176. data/lib/slack_resources/resources/event_api/examples/emoji_changed.add.json +7 -0
  177. data/lib/slack_resources/resources/event_api/examples/emoji_changed.json +4 -5
  178. data/lib/slack_resources/resources/event_api/examples/emoji_changed.remove.json +8 -0
  179. data/lib/slack_resources/resources/event_api/examples/event_callback.json +7 -6
  180. data/lib/slack_resources/resources/event_api/examples/file_change.json +3 -3
  181. data/lib/slack_resources/resources/event_api/examples/file_comment_added.json +3 -3
  182. data/lib/slack_resources/resources/event_api/examples/file_comment_deleted.json +3 -3
  183. data/lib/slack_resources/resources/event_api/examples/file_comment_edited.json +3 -3
  184. data/lib/slack_resources/resources/event_api/examples/file_created.json +3 -3
  185. data/lib/slack_resources/resources/event_api/examples/file_deleted.json +2 -2
  186. data/lib/slack_resources/resources/event_api/examples/file_public.json +3 -3
  187. data/lib/slack_resources/resources/event_api/examples/file_shared.json +3 -3
  188. data/lib/slack_resources/resources/event_api/examples/file_unshared.json +3 -3
  189. data/lib/slack_resources/resources/event_api/examples/grid_migration_finished.json +2 -10
  190. data/lib/slack_resources/resources/event_api/examples/grid_migration_started.json +2 -10
  191. data/lib/slack_resources/resources/event_api/examples/group_archive.json +2 -2
  192. data/lib/slack_resources/resources/event_api/examples/group_close.json +2 -2
  193. data/lib/slack_resources/resources/event_api/examples/group_deleted.json +2 -2
  194. data/lib/slack_resources/resources/event_api/examples/group_history_changed.json +2 -2
  195. data/lib/slack_resources/resources/event_api/examples/group_left.json +2 -2
  196. data/lib/slack_resources/resources/event_api/examples/group_open.json +2 -2
  197. data/lib/slack_resources/resources/event_api/examples/group_rename.json +2 -2
  198. data/lib/slack_resources/resources/event_api/examples/group_unarchive.json +2 -2
  199. data/lib/slack_resources/resources/event_api/examples/im_close.json +2 -2
  200. data/lib/slack_resources/resources/event_api/examples/im_created.json +3 -3
  201. data/lib/slack_resources/resources/event_api/examples/im_history_changed.json +2 -2
  202. data/lib/slack_resources/resources/event_api/examples/im_open.json +2 -2
  203. data/lib/slack_resources/resources/event_api/examples/link_shared.json +18 -30
  204. data/lib/slack_resources/resources/event_api/examples/member_joined_channel.json +3 -3
  205. data/lib/slack_resources/resources/event_api/examples/member_left_channel.json +3 -3
  206. data/lib/slack_resources/resources/event_api/examples/message.app_home.json +7 -18
  207. data/lib/slack_resources/resources/event_api/examples/message.channels.json +7 -18
  208. data/lib/slack_resources/resources/event_api/examples/message.groups.json +7 -18
  209. data/lib/slack_resources/resources/event_api/examples/message.im.json +7 -18
  210. data/lib/slack_resources/resources/event_api/examples/message.json +6 -4
  211. data/lib/slack_resources/resources/event_api/examples/message.mpim.json +7 -18
  212. data/lib/slack_resources/resources/event_api/examples/pin_added.json +3 -3
  213. data/lib/slack_resources/resources/event_api/examples/pin_removed.json +4 -4
  214. data/lib/slack_resources/resources/event_api/examples/reaction_added.json +5 -5
  215. data/lib/slack_resources/resources/event_api/examples/reaction_removed.json +5 -5
  216. data/lib/slack_resources/resources/event_api/examples/resources_added.json +17 -28
  217. data/lib/slack_resources/resources/event_api/examples/resources_removed.json +17 -28
  218. data/lib/slack_resources/resources/event_api/examples/scope_denied.json +6 -17
  219. data/lib/slack_resources/resources/event_api/examples/scope_granted.json +6 -17
  220. data/lib/slack_resources/resources/event_api/examples/star_added.json +3 -3
  221. data/lib/slack_resources/resources/event_api/examples/star_removed.json +3 -3
  222. data/lib/slack_resources/resources/event_api/examples/subteam_created.json +2 -2
  223. data/lib/slack_resources/resources/event_api/examples/subteam_members_changed.json +6 -6
  224. data/lib/slack_resources/resources/event_api/examples/subteam_self_added.json +2 -2
  225. data/lib/slack_resources/resources/event_api/examples/subteam_self_removed.json +2 -2
  226. data/lib/slack_resources/resources/event_api/examples/subteam_updated.json +2 -2
  227. data/lib/slack_resources/resources/event_api/examples/team_domain_change.json +2 -2
  228. data/lib/slack_resources/resources/event_api/examples/team_rename.json +2 -2
  229. data/lib/slack_resources/resources/event_api/examples/tokens_revoked.json +8 -16
  230. data/lib/slack_resources/resources/event_api/examples/url_verification.json +1 -1
  231. data/lib/slack_resources/resources/event_api/examples/user_resource_denied.json +6 -17
  232. data/lib/slack_resources/resources/event_api/examples/user_resource_granted.json +6 -17
  233. data/lib/slack_resources/resources/event_api/examples/user_resource_removed.json +3 -14
  234. data/lib/slack_resources/resources/event_api/schema.json +257 -105
  235. data/lib/slack_resources/resources/event_api/schemas/emoji_changed.add.json +42 -0
  236. data/lib/slack_resources/resources/event_api/schemas/emoji_changed.json +27 -9
  237. data/lib/slack_resources/resources/event_api/schemas/emoji_changed.remove.json +40 -0
  238. data/lib/slack_resources/resources/event_api/schemas/member_joined_channel.json +1 -4
  239. data/lib/slack_resources/resources/event_api/schemas/member_left_channel.json +1 -4
  240. data/lib/slack_resources/resources/event_api/schemas/message.app_home.json +1 -4
  241. data/lib/slack_resources/resources/event_api/schemas/message.channels.json +1 -7
  242. data/lib/slack_resources/resources/event_api/schemas/message.groups.json +1 -7
  243. data/lib/slack_resources/resources/event_api/schemas/message.im.json +1 -7
  244. data/lib/slack_resources/resources/event_api/schemas/message.json +39 -17
  245. data/lib/slack_resources/resources/event_api/schemas/message.mpim.json +1 -7
  246. data/lib/slack_resources/resources/event_api/schemas/resources_added.json +15 -15
  247. data/lib/slack_resources/resources/event_api/schemas/resources_removed.json +15 -15
  248. data/lib/slack_resources/resources/event_api/schemas/team_rename.json +2 -2
  249. data/lib/slack_resources/resources/event_api/schemas/url_verification.json +0 -6
  250. data/lib/slack_resources/resources/event_api/summary.json +4887 -3400
  251. data/slack_resources.gemspec +4 -2
  252. metadata +91 -8
  253. data/lib/event_api/write.rb +0 -364
  254. data/lib/slack_resources/version.rb +0 -3
@@ -21,6 +21,13 @@
21
21
  },
22
22
  "user_count": {
23
23
  "type": "string"
24
+ },
25
+ "emoji_changed_subtype": {
26
+ "type": "string",
27
+ "enum": [
28
+ "add",
29
+ "remove"
30
+ ]
24
31
  }
25
32
  }
26
33
  }
@@ -0,0 +1,38 @@
1
+ require 'pathname'
2
+
3
+ module SlackResources
4
+ module Resources
5
+ module EventApi
6
+ BASE_PATH = Pathname(__dir__).join('event_api')
7
+
8
+ SUMMARY_PATH = BASE_PATH.join('summary.json')
9
+ DETAILS_PATH = BASE_PATH.join('details')
10
+ EXAMPLES_PATH = BASE_PATH.join('examples')
11
+ SCHEMAS_PATH = BASE_PATH.join('schemas')
12
+
13
+ class << self
14
+ def details(name)
15
+ File.read(DETAILS_PATH.join("#{name}.json"))
16
+ end
17
+
18
+ def example(name)
19
+ File.read(EXAMPLES_PATH.join("#{name}.json"))
20
+ end
21
+
22
+ def schemas(name)
23
+ File.read(SCHEMAS_PATH.join("#{name}.json"))
24
+ end
25
+
26
+ def event_types
27
+ summary_file.map { |h| h['event'] }
28
+ end
29
+
30
+ private
31
+
32
+ def summary_file
33
+ @summary_file = JSON.parse(File.read(SUMMARY_PATH))
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
@@ -1,58 +1,79 @@
1
1
  {
2
2
  "url": "https://api.slack.com/events/app_mention",
3
- "type": "app_mention",
4
- "response": {
5
- "channel": "C0LAN2Q65",
6
- "event_ts": "1515449522000016",
7
- "text": "<@U0LAN0Z89> is it everything a river should be?",
8
- "ts": "1515449522.000016",
9
- "type": "app_mention",
10
- "user": "U061F7AUR"
3
+ "event": "app_mention",
4
+ "sub_schemas": {
5
+ "channel_id": {
6
+ "type": "string"
7
+ },
8
+ "timestamp": {
9
+ "type": "string"
10
+ },
11
+ "user_id": {
12
+ "type": "string"
13
+ },
14
+ "app_mention": {
15
+ "type": "object",
16
+ "description": "learn more: https://api.slack.com/events/app_mention",
17
+ "properties": {
18
+ "channel": {
19
+ "$ref": "#/definitions/channel_id"
20
+ },
21
+ "event_ts": {
22
+ "$ref": "#/definitions/timestamp"
23
+ },
24
+ "text": {
25
+ "type": "string"
26
+ },
27
+ "ts": {
28
+ "$ref": "#/definitions/timestamp"
29
+ },
30
+ "type": {
31
+ "const": "app_mention"
32
+ },
33
+ "user": {
34
+ "$ref": "#/definitions/user_id"
35
+ }
36
+ },
37
+ "example": {
38
+ "channel": "C0LAN2Q65",
39
+ "event_ts": "1515449522000016",
40
+ "text": "<@U0LAN0Z89> is it everything a river should be?",
41
+ "ts": "1515449522.000016",
42
+ "type": "app_mention",
43
+ "user": "U061F7AUR"
44
+ }
45
+ }
11
46
  },
12
47
  "schema": {
13
- "$schema": "http://json-schema.org/draft-07/schema",
14
- "definitions": {
15
- "channel_id": {
16
- "type": "string"
48
+ "type": "object",
49
+ "description": "learn more: https://api.slack.com/events/app_mention",
50
+ "properties": {
51
+ "channel": {
52
+ "$ref": "#/definitions/channel_id"
17
53
  },
18
- "timestamp": {
19
- "type": "string"
54
+ "event_ts": {
55
+ "$ref": "#/definitions/timestamp"
20
56
  },
21
- "user_id": {
57
+ "text": {
22
58
  "type": "string"
23
59
  },
24
- "app_mention": {
25
- "type": "object",
26
- "description": "learn more: https://api.slack.com/events/app_mention",
27
- "properties": {
28
- "channel": {
29
- "$ref": "#/definitions/channel_id"
30
- },
31
- "event_ts": {
32
- "$ref": "#/definitions/timestamp"
33
- },
34
- "text": {
35
- "type": "string"
36
- },
37
- "ts": {
38
- "$ref": "#/definitions/timestamp"
39
- },
40
- "type": {
41
- "const": "app_mention"
42
- },
43
- "user": {
44
- "$ref": "#/definitions/user_id"
45
- }
46
- },
47
- "example": {
48
- "channel": "C0LAN2Q65",
49
- "event_ts": "1515449522000016",
50
- "text": "<@U0LAN0Z89> is it everything a river should be?",
51
- "ts": "1515449522.000016",
52
- "type": "app_mention",
53
- "user": "U061F7AUR"
54
- }
60
+ "ts": {
61
+ "$ref": "#/definitions/timestamp"
62
+ },
63
+ "type": {
64
+ "const": "app_mention"
65
+ },
66
+ "user": {
67
+ "$ref": "#/definitions/user_id"
55
68
  }
69
+ },
70
+ "example": {
71
+ "channel": "C0LAN2Q65",
72
+ "event_ts": "1515449522000016",
73
+ "text": "<@U0LAN0Z89> is it everything a river should be?",
74
+ "ts": "1515449522.000016",
75
+ "type": "app_mention",
76
+ "user": "U061F7AUR"
56
77
  }
57
78
  },
58
79
  "compatibility": [
@@ -1,56 +1,74 @@
1
1
  {
2
2
  "url": "https://api.slack.com/events/app_rate_limited",
3
- "type": "app_rate_limited",
4
- "response": {
5
- "api_app_id": "A123456",
6
- "minute_rate_limited": 1518467820,
7
- "team_id": "T123456",
8
- "token": "Jhj5dZrVaK7ZwHHjRyZWjbDl",
9
- "type": "app_rate_limited"
3
+ "event": "app_rate_limited",
4
+ "sub_schemas": {
5
+ "api_app_id": {
6
+ "type": "string"
7
+ },
8
+ "time_integer": {
9
+ "type": "number"
10
+ },
11
+ "team_id": {
12
+ "type": "string"
13
+ },
14
+ "token": {
15
+ "type": "string"
16
+ },
17
+ "app_rate_limited": {
18
+ "type": "object",
19
+ "description": "learn more: https://api.slack.com/events/app_rate_limited",
20
+ "properties": {
21
+ "api_app_id": {
22
+ "$ref": "#/definitions/api_app_id"
23
+ },
24
+ "minute_rate_limited": {
25
+ "$ref": "#/definitions/time_integer"
26
+ },
27
+ "team_id": {
28
+ "$ref": "#/definitions/team_id"
29
+ },
30
+ "token": {
31
+ "$ref": "#/definitions/token"
32
+ },
33
+ "type": {
34
+ "const": "app_rate_limited"
35
+ }
36
+ },
37
+ "example": {
38
+ "api_app_id": "A123456",
39
+ "minute_rate_limited": 1518467820,
40
+ "team_id": "T123456",
41
+ "token": "Jhj5dZrVaK7ZwHHjRyZWjbDl",
42
+ "type": "app_rate_limited"
43
+ }
44
+ }
10
45
  },
11
46
  "schema": {
12
- "$schema": "http://json-schema.org/draft-07/schema",
13
- "definitions": {
47
+ "type": "object",
48
+ "description": "learn more: https://api.slack.com/events/app_rate_limited",
49
+ "properties": {
14
50
  "api_app_id": {
15
- "type": "string"
51
+ "$ref": "#/definitions/api_app_id"
16
52
  },
17
- "time_integer": {
18
- "type": "number"
53
+ "minute_rate_limited": {
54
+ "$ref": "#/definitions/time_integer"
19
55
  },
20
56
  "team_id": {
21
- "type": "string"
57
+ "$ref": "#/definitions/team_id"
22
58
  },
23
59
  "token": {
24
- "type": "string"
60
+ "$ref": "#/definitions/token"
25
61
  },
26
- "app_rate_limited": {
27
- "type": "object",
28
- "description": "learn more: https://api.slack.com/events/app_rate_limited",
29
- "properties": {
30
- "api_app_id": {
31
- "$ref": "#/definitions/api_app_id"
32
- },
33
- "minute_rate_limited": {
34
- "$ref": "#/definitions/time_integer"
35
- },
36
- "team_id": {
37
- "$ref": "#/definitions/team_id"
38
- },
39
- "token": {
40
- "$ref": "#/definitions/token"
41
- },
42
- "type": {
43
- "const": "app_rate_limited"
44
- }
45
- },
46
- "example": {
47
- "api_app_id": "A123456",
48
- "minute_rate_limited": 1518467820,
49
- "team_id": "T123456",
50
- "token": "Jhj5dZrVaK7ZwHHjRyZWjbDl",
51
- "type": "app_rate_limited"
52
- }
62
+ "type": {
63
+ "const": "app_rate_limited"
53
64
  }
65
+ },
66
+ "example": {
67
+ "api_app_id": "A123456",
68
+ "minute_rate_limited": 1518467820,
69
+ "team_id": "T123456",
70
+ "token": "Jhj5dZrVaK7ZwHHjRyZWjbDl",
71
+ "type": "app_rate_limited"
54
72
  }
55
73
  },
56
74
  "compatibility": [
@@ -1,24 +1,30 @@
1
1
  {
2
2
  "url": "https://api.slack.com/events/app_uninstalled",
3
- "type": "app_uninstalled",
4
- "response": {
5
- "type": "app_uninstalled"
3
+ "event": "app_uninstalled",
4
+ "sub_schemas": {
5
+ "app_uninstalled": {
6
+ "type": "object",
7
+ "description": "learn more: https://api.slack.com/events/app_uninstalled",
8
+ "properties": {
9
+ "type": {
10
+ "const": "app_uninstalled"
11
+ }
12
+ },
13
+ "example": {
14
+ "type": "app_uninstalled"
15
+ }
16
+ }
6
17
  },
7
18
  "schema": {
8
- "$schema": "http://json-schema.org/draft-07/schema",
9
- "definitions": {
10
- "app_uninstalled": {
11
- "type": "object",
12
- "description": "learn more: https://api.slack.com/events/app_uninstalled",
13
- "properties": {
14
- "type": {
15
- "const": "app_uninstalled"
16
- }
17
- },
18
- "example": {
19
- "type": "app_uninstalled"
20
- }
19
+ "type": "object",
20
+ "description": "learn more: https://api.slack.com/events/app_uninstalled",
21
+ "properties": {
22
+ "type": {
23
+ "const": "app_uninstalled"
21
24
  }
25
+ },
26
+ "example": {
27
+ "type": "app_uninstalled"
22
28
  }
23
29
  },
24
30
  "compatibility": [
@@ -1,40 +1,52 @@
1
1
  {
2
2
  "url": "https://api.slack.com/events/channel_archive",
3
- "type": "channel_archive",
4
- "response": {
5
- "channel": "C024BE91L",
6
- "type": "channel_archive",
7
- "user": "U024BE7LH"
3
+ "event": "channel_archive",
4
+ "sub_schemas": {
5
+ "channel_id": {
6
+ "type": "string"
7
+ },
8
+ "user_id": {
9
+ "type": "string"
10
+ },
11
+ "channel_archive": {
12
+ "type": "object",
13
+ "description": "learn more: https://api.slack.com/events/channel_archive",
14
+ "properties": {
15
+ "channel": {
16
+ "$ref": "#/definitions/channel_id"
17
+ },
18
+ "type": {
19
+ "const": "channel_archive"
20
+ },
21
+ "user": {
22
+ "$ref": "#/definitions/user_id"
23
+ }
24
+ },
25
+ "example": {
26
+ "channel": "C024BE91L",
27
+ "type": "channel_archive",
28
+ "user": "U024BE7LH"
29
+ }
30
+ }
8
31
  },
9
32
  "schema": {
10
- "$schema": "http://json-schema.org/draft-07/schema",
11
- "definitions": {
12
- "channel_id": {
13
- "type": "string"
33
+ "type": "object",
34
+ "description": "learn more: https://api.slack.com/events/channel_archive",
35
+ "properties": {
36
+ "channel": {
37
+ "$ref": "#/definitions/channel_id"
14
38
  },
15
- "user_id": {
16
- "type": "string"
39
+ "type": {
40
+ "const": "channel_archive"
17
41
  },
18
- "channel_archive": {
19
- "type": "object",
20
- "description": "learn more: https://api.slack.com/events/channel_archive",
21
- "properties": {
22
- "channel": {
23
- "$ref": "#/definitions/channel_id"
24
- },
25
- "type": {
26
- "const": "channel_archive"
27
- },
28
- "user": {
29
- "$ref": "#/definitions/user_id"
30
- }
31
- },
32
- "example": {
33
- "channel": "C024BE91L",
34
- "type": "channel_archive",
35
- "user": "U024BE7LH"
36
- }
42
+ "user": {
43
+ "$ref": "#/definitions/user_id"
37
44
  }
45
+ },
46
+ "example": {
47
+ "channel": "C024BE91L",
48
+ "type": "channel_archive",
49
+ "user": "U024BE7LH"
38
50
  }
39
51
  },
40
52
  "compatibility": [
@@ -1,66 +1,75 @@
1
1
  {
2
2
  "url": "https://api.slack.com/events/channel_created",
3
- "type": "channel_created",
4
- "response": {
3
+ "event": "channel_created",
4
+ "sub_schemas": {
5
+ "time_integer": {
6
+ "type": "number"
7
+ },
8
+ "user_id": {
9
+ "type": "string"
10
+ },
11
+ "channel_id": {
12
+ "type": "string"
13
+ },
14
+ "channel_name": {
15
+ "type": "string"
16
+ },
5
17
  "channel": {
6
- "id": "C024BE91L",
7
- "name": "fun",
8
- "created": 1360782804,
9
- "creator": "U024BE7LH"
18
+ "type": "object",
19
+ "description": "(defined by script)",
20
+ "properties": {
21
+ "created": {
22
+ "$ref": "#/definitions/time_integer"
23
+ },
24
+ "id": {
25
+ "$ref": "#/definitions/channel_id"
26
+ },
27
+ "name": {
28
+ "$ref": "#/definitions/channel_name"
29
+ }
30
+ }
10
31
  },
11
- "type": "channel_created"
32
+ "channel_created": {
33
+ "type": "object",
34
+ "description": "learn more: https://api.slack.com/events/channel_created",
35
+ "properties": {
36
+ "channel": {
37
+ "$ref": "#/definitions/channel"
38
+ },
39
+ "type": {
40
+ "const": "channel_created"
41
+ }
42
+ },
43
+ "example": {
44
+ "channel": {
45
+ "id": "C024BE91L",
46
+ "name": "fun",
47
+ "created": 1360782804,
48
+ "creator": "U024BE7LH"
49
+ },
50
+ "type": "channel_created"
51
+ }
52
+ }
12
53
  },
13
54
  "schema": {
14
- "$schema": "http://json-schema.org/draft-07/schema",
15
- "definitions": {
16
- "time_integer": {
17
- "type": "number"
18
- },
19
- "user_id": {
20
- "type": "string"
21
- },
22
- "channel_id": {
23
- "type": "string"
24
- },
25
- "channel_name": {
26
- "type": "string"
27
- },
55
+ "type": "object",
56
+ "description": "learn more: https://api.slack.com/events/channel_created",
57
+ "properties": {
28
58
  "channel": {
29
- "type": "object",
30
- "description": "(defined by script)",
31
- "properties": {
32
- "created": {
33
- "$ref": "#/definitions/time_integer"
34
- },
35
- "id": {
36
- "$ref": "#/definitions/channel_id"
37
- },
38
- "name": {
39
- "$ref": "#/definitions/channel_name"
40
- }
41
- }
59
+ "$ref": "#/definitions/channel"
42
60
  },
43
- "channel_created": {
44
- "type": "object",
45
- "description": "learn more: https://api.slack.com/events/channel_created",
46
- "properties": {
47
- "channel": {
48
- "$ref": "#/definitions/channel"
49
- },
50
- "type": {
51
- "const": "channel_created"
52
- }
53
- },
54
- "example": {
55
- "channel": {
56
- "id": "C024BE91L",
57
- "name": "fun",
58
- "created": 1360782804,
59
- "creator": "U024BE7LH"
60
- },
61
- "type": "channel_created"
62
- }
61
+ "type": {
62
+ "const": "channel_created"
63
63
  }
64
+ },
65
+ "example": {
66
+ "channel": {
67
+ "id": "C024BE91L",
68
+ "name": "fun",
69
+ "created": 1360782804,
70
+ "creator": "U024BE7LH"
71
+ },
72
+ "type": "channel_created"
64
73
  }
65
74
  },
66
75
  "compatibility": [