@hailer/mcp 1.1.11 → 1.1.13

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 (252) hide show
  1. package/dist/app.js +18 -5
  2. package/dist/bot/bot-config.d.ts +12 -1
  3. package/dist/bot/bot-config.js +98 -14
  4. package/dist/bot/bot-manager.d.ts +13 -3
  5. package/dist/bot/bot-manager.js +80 -25
  6. package/dist/bot/bot.d.ts +46 -0
  7. package/dist/bot/bot.js +542 -166
  8. package/dist/bot/services/message-classifier.js +17 -0
  9. package/dist/bot/services/permission-guard.d.ts +52 -0
  10. package/dist/bot/services/permission-guard.js +149 -0
  11. package/dist/bot/services/types.d.ts +5 -0
  12. package/dist/bot/services/typing-indicator.d.ts +6 -1
  13. package/dist/bot/services/typing-indicator.js +19 -3
  14. package/dist/config.d.ts +6 -1
  15. package/dist/config.js +43 -0
  16. package/dist/core.js +3 -6
  17. package/dist/mcp/UserContextCache.d.ts +5 -0
  18. package/dist/mcp/UserContextCache.js +51 -19
  19. package/dist/mcp/hailer-clients.d.ts +19 -1
  20. package/dist/mcp/hailer-clients.js +157 -20
  21. package/dist/mcp/session-store.d.ts +68 -0
  22. package/dist/mcp/session-store.js +169 -0
  23. package/dist/mcp/signal-handler.js +12 -12
  24. package/dist/mcp/tool-registry.d.ts +17 -4
  25. package/dist/mcp/tool-registry.js +37 -7
  26. package/dist/mcp/tools/activity.js +99 -7
  27. package/dist/mcp/tools/app-scaffold.js +304 -336
  28. package/dist/mcp/tools/company.d.ts +9 -0
  29. package/dist/mcp/tools/company.js +88 -0
  30. package/dist/mcp/tools/discussion.js +68 -0
  31. package/dist/mcp/tools/workflow-permissions.d.ts +15 -0
  32. package/dist/mcp/tools/workflow-permissions.js +204 -0
  33. package/dist/mcp/tools/workflow.js +57 -18
  34. package/dist/mcp/utils/index.d.ts +2 -0
  35. package/dist/mcp/utils/index.js +12 -1
  36. package/dist/mcp/utils/role-utils.d.ts +74 -0
  37. package/dist/mcp/utils/role-utils.js +151 -0
  38. package/dist/mcp/utils/types.d.ts +43 -1
  39. package/dist/mcp/utils/types.js +14 -0
  40. package/dist/mcp/webhook-handler.d.ts +6 -0
  41. package/dist/mcp/webhook-handler.js +11 -0
  42. package/dist/mcp-server.d.ts +23 -2
  43. package/dist/mcp-server.js +639 -111
  44. package/dist/plugins/vipunen/client.d.ts +150 -0
  45. package/dist/plugins/vipunen/client.js +535 -0
  46. package/dist/plugins/vipunen/config/schema-config.json +19 -0
  47. package/dist/plugins/vipunen/config/schema-doc.json +22 -0
  48. package/dist/plugins/vipunen/index.d.ts +41 -0
  49. package/dist/plugins/vipunen/index.js +88 -0
  50. package/dist/plugins/vipunen/tools.d.ts +26 -0
  51. package/dist/plugins/vipunen/tools.js +501 -0
  52. package/package.json +2 -1
  53. package/.claude/.context-watchdog.json +0 -1
  54. package/.claude/.session-checked +0 -1
  55. package/.claude/CLAUDE.md +0 -370
  56. package/.claude/agents/agent-ada-skill-builder.md +0 -94
  57. package/.claude/agents/agent-alejandro-function-fields.md +0 -342
  58. package/.claude/agents/agent-bjorn-config-audit.md +0 -103
  59. package/.claude/agents/agent-builder-agent-creator.md +0 -130
  60. package/.claude/agents/agent-code-simplifier.md +0 -53
  61. package/.claude/agents/agent-dmitri-activity-crud.md +0 -159
  62. package/.claude/agents/agent-giuseppe-app-builder.md +0 -247
  63. package/.claude/agents/agent-gunther-mcp-tools.md +0 -39
  64. package/.claude/agents/agent-helga-workflow-config.md +0 -204
  65. package/.claude/agents/agent-igor-activity-mover-automation.md +0 -125
  66. package/.claude/agents/agent-ingrid-doc-templates.md +0 -261
  67. package/.claude/agents/agent-ivan-monolith.md +0 -154
  68. package/.claude/agents/agent-kenji-data-reader.md +0 -86
  69. package/.claude/agents/agent-lars-code-inspector.md +0 -102
  70. package/.claude/agents/agent-marco-mockup-builder.md +0 -110
  71. package/.claude/agents/agent-marcus-api-documenter.md +0 -323
  72. package/.claude/agents/agent-marketplace-publisher.md +0 -280
  73. package/.claude/agents/agent-marketplace-reviewer.md +0 -309
  74. package/.claude/agents/agent-permissions-handler.md +0 -208
  75. package/.claude/agents/agent-simple-writer.md +0 -48
  76. package/.claude/agents/agent-svetlana-code-review.md +0 -171
  77. package/.claude/agents/agent-tanya-test-runner.md +0 -333
  78. package/.claude/agents/agent-ui-designer.md +0 -100
  79. package/.claude/agents/agent-viktor-sql-insights.md +0 -212
  80. package/.claude/agents/agent-web-search.md +0 -55
  81. package/.claude/agents/agent-yevgeni-discussions.md +0 -45
  82. package/.claude/agents/agent-zara-zapier.md +0 -159
  83. package/.claude/commands/app-squad.md +0 -135
  84. package/.claude/commands/audit-squad.md +0 -158
  85. package/.claude/commands/autoplan.md +0 -563
  86. package/.claude/commands/cleanup-squad.md +0 -98
  87. package/.claude/commands/config-squad.md +0 -106
  88. package/.claude/commands/crud-squad.md +0 -87
  89. package/.claude/commands/data-squad.md +0 -97
  90. package/.claude/commands/debug-squad.md +0 -303
  91. package/.claude/commands/doc-squad.md +0 -65
  92. package/.claude/commands/handoff.md +0 -137
  93. package/.claude/commands/health.md +0 -49
  94. package/.claude/commands/help.md +0 -29
  95. package/.claude/commands/help:agents.md +0 -151
  96. package/.claude/commands/help:commands.md +0 -78
  97. package/.claude/commands/help:faq.md +0 -79
  98. package/.claude/commands/help:plugins.md +0 -50
  99. package/.claude/commands/help:skills.md +0 -93
  100. package/.claude/commands/help:tools.md +0 -75
  101. package/.claude/commands/hotfix-squad.md +0 -112
  102. package/.claude/commands/integration-squad.md +0 -82
  103. package/.claude/commands/janitor-squad.md +0 -167
  104. package/.claude/commands/learn-auto.md +0 -120
  105. package/.claude/commands/learn.md +0 -120
  106. package/.claude/commands/mcp-list.md +0 -27
  107. package/.claude/commands/onboard-squad.md +0 -140
  108. package/.claude/commands/plan-workspace.md +0 -732
  109. package/.claude/commands/prd.md +0 -130
  110. package/.claude/commands/project-status.md +0 -82
  111. package/.claude/commands/publish.md +0 -138
  112. package/.claude/commands/recap.md +0 -69
  113. package/.claude/commands/restore.md +0 -64
  114. package/.claude/commands/review-squad.md +0 -152
  115. package/.claude/commands/save.md +0 -24
  116. package/.claude/commands/stats.md +0 -19
  117. package/.claude/commands/swarm.md +0 -210
  118. package/.claude/commands/tool-builder.md +0 -39
  119. package/.claude/commands/ws-pull.md +0 -44
  120. package/.claude/hooks/_shared-memory.cjs +0 -305
  121. package/.claude/hooks/_utils.cjs +0 -108
  122. package/.claude/hooks/agent-failure-detector.cjs +0 -383
  123. package/.claude/hooks/agent-usage-logger.cjs +0 -204
  124. package/.claude/hooks/app-edit-guard.cjs +0 -494
  125. package/.claude/hooks/auto-learn.cjs +0 -304
  126. package/.claude/hooks/bash-guard.cjs +0 -272
  127. package/.claude/hooks/builder-mode-manager.cjs +0 -354
  128. package/.claude/hooks/bulk-activity-guard.cjs +0 -271
  129. package/.claude/hooks/context-watchdog.cjs +0 -230
  130. package/.claude/hooks/delegation-reminder.cjs +0 -465
  131. package/.claude/hooks/design-system-lint.cjs +0 -271
  132. package/.claude/hooks/post-scaffold-hook.cjs +0 -181
  133. package/.claude/hooks/prompt-guard.cjs +0 -354
  134. package/.claude/hooks/publish-template-guard.cjs +0 -147
  135. package/.claude/hooks/session-start.cjs +0 -35
  136. package/.claude/hooks/shared-memory-writer.cjs +0 -147
  137. package/.claude/hooks/skill-injector.cjs +0 -140
  138. package/.claude/hooks/skill-usage-logger.cjs +0 -258
  139. package/.claude/hooks/src-edit-guard.cjs +0 -240
  140. package/.claude/hooks/sync-marketplace-agents.cjs +0 -346
  141. package/.claude/settings.json +0 -257
  142. package/.claude/skills/SDK-activity-patterns/SKILL.md +0 -428
  143. package/.claude/skills/SDK-document-templates/SKILL.md +0 -1033
  144. package/.claude/skills/SDK-function-fields/SKILL.md +0 -542
  145. package/.claude/skills/SDK-generate-skill/SKILL.md +0 -92
  146. package/.claude/skills/SDK-init-skill/SKILL.md +0 -127
  147. package/.claude/skills/SDK-insight-queries/SKILL.md +0 -787
  148. package/.claude/skills/SDK-ws-config-skill/SKILL.md +0 -1139
  149. package/.claude/skills/agent-structure/SKILL.md +0 -98
  150. package/.claude/skills/api-documentation-patterns/SKILL.md +0 -474
  151. package/.claude/skills/chrome-mcp-reference/SKILL.md +0 -370
  152. package/.claude/skills/delegation-routing/SKILL.md +0 -202
  153. package/.claude/skills/frontend-design/SKILL.md +0 -254
  154. package/.claude/skills/hailer-activity-mover/SKILL.md +0 -213
  155. package/.claude/skills/hailer-api-client/SKILL.md +0 -518
  156. package/.claude/skills/hailer-app-builder/SKILL.md +0 -1434
  157. package/.claude/skills/hailer-apps-pictures/SKILL.md +0 -269
  158. package/.claude/skills/hailer-design-system/SKILL.md +0 -235
  159. package/.claude/skills/hailer-monolith-automations/SKILL.md +0 -686
  160. package/.claude/skills/hailer-permissions-system/SKILL.md +0 -121
  161. package/.claude/skills/hailer-project-protocol/SKILL.md +0 -488
  162. package/.claude/skills/hailer-rest-api/SKILL.md +0 -61
  163. package/.claude/skills/hailer-rest-api/hailer-activities.md +0 -184
  164. package/.claude/skills/hailer-rest-api/hailer-admin.md +0 -473
  165. package/.claude/skills/hailer-rest-api/hailer-calendar.md +0 -256
  166. package/.claude/skills/hailer-rest-api/hailer-feed.md +0 -249
  167. package/.claude/skills/hailer-rest-api/hailer-insights.md +0 -195
  168. package/.claude/skills/hailer-rest-api/hailer-messaging.md +0 -276
  169. package/.claude/skills/hailer-rest-api/hailer-workflows.md +0 -283
  170. package/.claude/skills/insight-join-patterns/SKILL.md +0 -174
  171. package/.claude/skills/integration-patterns/SKILL.md +0 -421
  172. package/.claude/skills/json-only-output/SKILL.md +0 -72
  173. package/.claude/skills/lsp-setup/SKILL.md +0 -160
  174. package/.claude/skills/mcp-direct-tools/SKILL.md +0 -153
  175. package/.claude/skills/optional-parameters/SKILL.md +0 -72
  176. package/.claude/skills/publish-hailer-app/SKILL.md +0 -244
  177. package/.claude/skills/testing-patterns/SKILL.md +0 -630
  178. package/.claude/skills/tool-builder/SKILL.md +0 -250
  179. package/.claude/skills/tool-parameter-usage/SKILL.md +0 -126
  180. package/.claude/skills/tool-response-verification/SKILL.md +0 -92
  181. package/.claude/skills/zapier-hailer-patterns/SKILL.md +0 -581
  182. package/.hailer-mcp-port +0 -1
  183. package/.mcp.json +0 -13
  184. package/.opencode/agent/agent-ada-skill-builder.md +0 -35
  185. package/.opencode/agent/agent-alejandro-function-fields.md +0 -39
  186. package/.opencode/agent/agent-bjorn-config-audit.md +0 -36
  187. package/.opencode/agent/agent-builder-agent-creator.md +0 -39
  188. package/.opencode/agent/agent-code-simplifier.md +0 -31
  189. package/.opencode/agent/agent-dmitri-activity-crud.md +0 -40
  190. package/.opencode/agent/agent-giuseppe-app-builder.md +0 -37
  191. package/.opencode/agent/agent-gunther-mcp-tools.md +0 -39
  192. package/.opencode/agent/agent-helga-workflow-config.md +0 -204
  193. package/.opencode/agent/agent-igor-activity-mover-automation.md +0 -46
  194. package/.opencode/agent/agent-ingrid-doc-templates.md +0 -39
  195. package/.opencode/agent/agent-ivan-monolith.md +0 -46
  196. package/.opencode/agent/agent-kenji-data-reader.md +0 -53
  197. package/.opencode/agent/agent-lars-code-inspector.md +0 -28
  198. package/.opencode/agent/agent-marco-mockup-builder.md +0 -42
  199. package/.opencode/agent/agent-marcus-api-documenter.md +0 -53
  200. package/.opencode/agent/agent-marketplace-publisher.md +0 -44
  201. package/.opencode/agent/agent-marketplace-reviewer.md +0 -42
  202. package/.opencode/agent/agent-permissions-handler.md +0 -50
  203. package/.opencode/agent/agent-simple-writer.md +0 -45
  204. package/.opencode/agent/agent-svetlana-code-review.md +0 -39
  205. package/.opencode/agent/agent-tanya-test-runner.md +0 -57
  206. package/.opencode/agent/agent-ui-designer.md +0 -56
  207. package/.opencode/agent/agent-viktor-sql-insights.md +0 -34
  208. package/.opencode/agent/agent-web-search.md +0 -42
  209. package/.opencode/agent/agent-yevgeni-discussions.md +0 -37
  210. package/.opencode/agent/agent-zara-zapier.md +0 -53
  211. package/.opencode/commands/app-squad.md +0 -135
  212. package/.opencode/commands/audit-squad.md +0 -158
  213. package/.opencode/commands/autoplan.md +0 -563
  214. package/.opencode/commands/cleanup-squad.md +0 -98
  215. package/.opencode/commands/config-squad.md +0 -106
  216. package/.opencode/commands/crud-squad.md +0 -87
  217. package/.opencode/commands/data-squad.md +0 -97
  218. package/.opencode/commands/debug-squad.md +0 -303
  219. package/.opencode/commands/doc-squad.md +0 -65
  220. package/.opencode/commands/handoff.md +0 -137
  221. package/.opencode/commands/health.md +0 -49
  222. package/.opencode/commands/help-agents.md +0 -151
  223. package/.opencode/commands/help-commands.md +0 -32
  224. package/.opencode/commands/help-faq.md +0 -29
  225. package/.opencode/commands/help-plugins.md +0 -28
  226. package/.opencode/commands/help-skills.md +0 -7
  227. package/.opencode/commands/help-tools.md +0 -40
  228. package/.opencode/commands/help.md +0 -28
  229. package/.opencode/commands/hotfix-squad.md +0 -112
  230. package/.opencode/commands/integration-squad.md +0 -82
  231. package/.opencode/commands/janitor-squad.md +0 -167
  232. package/.opencode/commands/learn-auto.md +0 -120
  233. package/.opencode/commands/learn.md +0 -120
  234. package/.opencode/commands/mcp-list.md +0 -27
  235. package/.opencode/commands/onboard-squad.md +0 -140
  236. package/.opencode/commands/plan-workspace.md +0 -732
  237. package/.opencode/commands/prd.md +0 -131
  238. package/.opencode/commands/project-status.md +0 -82
  239. package/.opencode/commands/publish.md +0 -138
  240. package/.opencode/commands/recap.md +0 -69
  241. package/.opencode/commands/restore.md +0 -64
  242. package/.opencode/commands/review-squad.md +0 -152
  243. package/.opencode/commands/save.md +0 -24
  244. package/.opencode/commands/stats.md +0 -19
  245. package/.opencode/commands/swarm.md +0 -210
  246. package/.opencode/commands/tool-builder.md +0 -39
  247. package/.opencode/commands/ws-pull.md +0 -44
  248. package/.opencode/opencode.json +0 -21
  249. package/inbox/failures.log +0 -1
  250. package/inbox/usage.jsonl +0 -4
  251. package/scripts/postinstall.cjs +0 -64
  252. package/scripts/test-hal-tools.ts +0 -154
@@ -1,276 +0,0 @@
1
- # Hailer Messaging API
2
-
3
- Execute Hailer discussion and messenger operations via REST API.
4
-
5
- ## Base URL
6
- - **Production:** `https://api.hailer.com/api`
7
- - **Staging:** `https://api.hailer.biz/api`
8
-
9
- ## Authentication
10
- All requests require `hlrkey` header with session key.
11
-
12
- ---
13
-
14
- ## Send Messages
15
-
16
- ### Send Message to Discussion
17
- ```bash
18
- curl -X POST "https://api.hailer.com/api/messenger/send" \
19
- -H "Content-Type: application/json" \
20
- -H "hlrkey: YOUR_SESSION_KEY" \
21
- -d '[{"discussionId": "DISCUSSION_ID", "text": "Hello world!", "files": []}]'
22
- ```
23
-
24
- ### Send with File Attachments
25
- ```bash
26
- curl -X POST "https://api.hailer.com/api/messenger/send" \
27
- -H "Content-Type: application/json" \
28
- -H "hlrkey: YOUR_SESSION_KEY" \
29
- -d '[{"discussionId": "DISCUSSION_ID", "text": "See attachment", "files": ["FILE_ID_1", "FILE_ID_2"]}]'
30
- ```
31
-
32
- ---
33
-
34
- ## Load Messages
35
-
36
- ### Load Messages from Discussion
37
- ```bash
38
- curl -X POST "https://api.hailer.com/api/messenger/load_messages" \
39
- -H "Content-Type: application/json" \
40
- -H "hlrkey: YOUR_SESSION_KEY" \
41
- -d '[{"discussionId": "DISCUSSION_ID", "limit": 50}]'
42
- ```
43
-
44
- ### Get Specific Message (v3)
45
- ```bash
46
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/get" \
47
- -H "Content-Type: application/json" \
48
- -H "hlrkey: YOUR_SESSION_KEY" \
49
- -d '["MESSAGE_ID"]'
50
- ```
51
-
52
- ### Get Latest Messages (v3)
53
- ```bash
54
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/latest" \
55
- -H "Content-Type: application/json" \
56
- -H "hlrkey: YOUR_SESSION_KEY" \
57
- -d '["DISCUSSION_ID", {"limit": 20}]'
58
- ```
59
-
60
- ### Get Next/Previous Messages (v3)
61
- ```bash
62
- # Next (newer)
63
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/next" \
64
- -H "Content-Type: application/json" \
65
- -H "hlrkey: YOUR_SESSION_KEY" \
66
- -d '["DISCUSSION_ID", "AFTER_MESSAGE_ID", {"limit": 20}]'
67
-
68
- # Previous (older)
69
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/previous" \
70
- -H "Content-Type: application/json" \
71
- -H "hlrkey: YOUR_SESSION_KEY" \
72
- -d '["DISCUSSION_ID", "BEFORE_MESSAGE_ID", {"limit": 20}]'
73
- ```
74
-
75
- ---
76
-
77
- ## Edit & Delete Messages (v2)
78
-
79
- ### Edit Message
80
- ```bash
81
- curl -X POST "https://api.hailer.com/api/v2/discussion/message/edit" \
82
- -H "Content-Type: application/json" \
83
- -H "hlrkey: YOUR_SESSION_KEY" \
84
- -d '["MESSAGE_ID", "Updated message text"]'
85
- ```
86
-
87
- ### Delete Message
88
- ```bash
89
- curl -X POST "https://api.hailer.com/api/v2/discussion/message/delete" \
90
- -H "Content-Type: application/json" \
91
- -H "hlrkey: YOUR_SESSION_KEY" \
92
- -d '["MESSAGE_ID"]'
93
- ```
94
-
95
- ### React to Message (v2)
96
- ```bash
97
- curl -X POST "https://api.hailer.com/api/v2/discussion/message/react" \
98
- -H "Content-Type: application/json" \
99
- -H "hlrkey: YOUR_SESSION_KEY" \
100
- -d '["MESSAGE_ID", "emoji_name"]'
101
- # Common reactions: thumbsup, heart, laugh, etc.
102
- ```
103
-
104
- ---
105
-
106
- ## Discussion Management
107
-
108
- ### Load All Discussions
109
- ```bash
110
- curl -X POST "https://api.hailer.com/api/messenger/load_discussions" \
111
- -H "Content-Type: application/json" \
112
- -H "hlrkey: YOUR_SESSION_KEY" \
113
- -d '[{}]'
114
- ```
115
-
116
- ### Find User Discussion (DM)
117
- ```bash
118
- curl -X POST "https://api.hailer.com/api/messenger/find_user_discussion" \
119
- -H "Content-Type: application/json" \
120
- -H "hlrkey: YOUR_SESSION_KEY" \
121
- -d '["USER_ID"]'
122
- ```
123
-
124
- ### Sync Discussion (v2)
125
- ```bash
126
- curl -X POST "https://api.hailer.com/api/v2/discussion/sync" \
127
- -H "Content-Type: application/json" \
128
- -H "hlrkey: YOUR_SESSION_KEY" \
129
- -d '["DISCUSSION_ID"]'
130
- ```
131
-
132
- ### Get Discussion Files (v3)
133
- ```bash
134
- curl -X POST "https://api.hailer.com/api/v3/discussion/files" \
135
- -H "Content-Type: application/json" \
136
- -H "hlrkey: YOUR_SESSION_KEY" \
137
- -d '["DISCUSSION_ID", {"limit": 50}]'
138
- ```
139
-
140
- ---
141
-
142
- ## Discussion Participants
143
-
144
- ### Invite Users to Discussion
145
- ```bash
146
- curl -X POST "https://api.hailer.com/api/messenger/invite_users" \
147
- -H "Content-Type: application/json" \
148
- -H "hlrkey: YOUR_SESSION_KEY" \
149
- -d '[{"discussionId": "DISCUSSION_ID", "userIds": ["USER_ID_1", "USER_ID_2"]}]'
150
- ```
151
-
152
- ### Leave Discussion
153
- ```bash
154
- curl -X POST "https://api.hailer.com/api/messenger/leave_discussion" \
155
- -H "Content-Type: application/json" \
156
- -H "hlrkey: YOUR_SESSION_KEY" \
157
- -d '["DISCUSSION_ID"]'
158
- ```
159
-
160
- ---
161
-
162
- ## Stars & Bookmarks
163
-
164
- ### Star/Unstar Discussion (v2)
165
- ```bash
166
- curl -X POST "https://api.hailer.com/api/v2/discussion/star" \
167
- -H "Content-Type: application/json" \
168
- -H "hlrkey: YOUR_SESSION_KEY" \
169
- -d '["DISCUSSION_ID"]'
170
- ```
171
-
172
- ### Star/Unstar Message (v3)
173
- ```bash
174
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/star" \
175
- -H "Content-Type: application/json" \
176
- -H "hlrkey: YOUR_SESSION_KEY" \
177
- -d '["MESSAGE_ID"]'
178
- ```
179
-
180
- ### Get Starred Messages (v3)
181
- ```bash
182
- curl -X POST "https://api.hailer.com/api/v3/discussion/message/stars" \
183
- -H "Content-Type: application/json" \
184
- -H "hlrkey: YOUR_SESSION_KEY" \
185
- -d '["DISCUSSION_ID"]'
186
- ```
187
-
188
- ---
189
-
190
- ## Read Status & Notifications
191
-
192
- ### Mark as Read
193
- ```bash
194
- curl -X POST "https://api.hailer.com/api/messenger/set_discussion_last_seen" \
195
- -H "Content-Type: application/json" \
196
- -H "hlrkey: YOUR_SESSION_KEY" \
197
- -d '["DISCUSSION_ID", TIMESTAMP_MS]'
198
- ```
199
-
200
- ### Get Unread Count
201
- ```bash
202
- curl -X POST "https://api.hailer.com/api/messenger/get_unread_count" \
203
- -H "Content-Type: application/json" \
204
- -H "hlrkey: YOUR_SESSION_KEY" \
205
- -d '[]'
206
- ```
207
-
208
- ### Mute/Unmute Discussion (v2)
209
- ```bash
210
- curl -X POST "https://api.hailer.com/api/v2/discussion/mute" \
211
- -H "Content-Type: application/json" \
212
- -H "hlrkey: YOUR_SESSION_KEY" \
213
- -d '["DISCUSSION_ID", true]'
214
- # true = mute, false = unmute
215
- ```
216
-
217
- ---
218
-
219
- ## Settings & Permissions
220
-
221
- ### Save Discussion Settings
222
- ```bash
223
- curl -X POST "https://api.hailer.com/api/messenger/save_discussion_settings" \
224
- -H "Content-Type: application/json" \
225
- -H "hlrkey: YOUR_SESSION_KEY" \
226
- -d '["DISCUSSION_ID", {"name": "New Discussion Name"}]'
227
- ```
228
-
229
- ### Set Discussion Permission (v3)
230
- ```bash
231
- curl -X POST "https://api.hailer.com/api/v3/discussion/setPermission" \
232
- -H "Content-Type: application/json" \
233
- -H "hlrkey: YOUR_SESSION_KEY" \
234
- -d '["DISCUSSION_ID", {"permission": "write", "target": {"userId": "USER_ID"}}]'
235
- ```
236
-
237
- ### Close Discussion (v3)
238
- ```bash
239
- curl -X POST "https://api.hailer.com/api/v3/discussion/close" \
240
- -H "Content-Type: application/json" \
241
- -H "hlrkey: YOUR_SESSION_KEY" \
242
- -d '["DISCUSSION_ID"]'
243
- ```
244
-
245
- ---
246
-
247
- ## Typing Indicator
248
-
249
- ### Set Typing State
250
- ```bash
251
- curl -X POST "https://api.hailer.com/api/messenger/set_discussion_typing_state" \
252
- -H "Content-Type: application/json" \
253
- -H "hlrkey: YOUR_SESSION_KEY" \
254
- -d '["DISCUSSION_ID", true]'
255
- # true = typing, false = stopped
256
- ```
257
-
258
- ---
259
-
260
- ## Video Meetings (v2)
261
-
262
- ### Start Meet
263
- ```bash
264
- curl -X POST "https://api.hailer.com/api/v2/discussion/meet/start" \
265
- -H "Content-Type: application/json" \
266
- -H "hlrkey: YOUR_SESSION_KEY" \
267
- -d '["DISCUSSION_ID"]'
268
- ```
269
-
270
- ---
271
-
272
- ## Notes
273
- - Every activity has an associated discussion (same ID)
274
- - Discussions can be standalone (group chats) or linked to activities
275
- - Timestamps are milliseconds since Unix epoch
276
- - Files must be uploaded first via `/upload` endpoint, then attached by ID
@@ -1,283 +0,0 @@
1
- # Hailer Workflows API
2
-
3
- Execute Hailer workflow (process/table) operations via REST API.
4
-
5
- ## Base URL
6
- - **Production:** `https://api.hailer.com/api`
7
- - **Staging:** `https://api.hailer.biz/api`
8
-
9
- ## Authentication
10
- All requests require `hlrkey` header with session key.
11
-
12
- ---
13
-
14
- ## Workflow CRUD
15
-
16
- ### Create Workflow
17
- ```bash
18
- curl -X POST "https://api.hailer.com/api/process/create" \
19
- -H "Content-Type: application/json" \
20
- -H "hlrkey: YOUR_SESSION_KEY" \
21
- -d '[{"name": "My Workflow", "cid": "WORKSPACE_ID"}]'
22
- ```
23
-
24
- ### Get Workflow
25
- ```bash
26
- curl -X POST "https://api.hailer.com/api/v2/process/get" \
27
- -H "Content-Type: application/json" \
28
- -H "hlrkey: YOUR_SESSION_KEY" \
29
- -d '["WORKFLOW_ID"]'
30
- ```
31
-
32
- ### List Workflows
33
- ```bash
34
- curl -X POST "https://api.hailer.com/api/process/list" \
35
- -H "Content-Type: application/json" \
36
- -H "hlrkey: YOUR_SESSION_KEY" \
37
- -d '[]'
38
- ```
39
-
40
- ### Update Workflow Info
41
- ```bash
42
- curl -X POST "https://api.hailer.com/api/process/set_info" \
43
- -H "Content-Type: application/json" \
44
- -H "hlrkey: YOUR_SESSION_KEY" \
45
- -d '["WORKFLOW_ID", {"name": "New Name", "description": "Updated description"}]'
46
- ```
47
-
48
- ### Remove Workflow
49
- ```bash
50
- curl -X POST "https://api.hailer.com/api/process/remove" \
51
- -H "Content-Type: application/json" \
52
- -H "hlrkey: YOUR_SESSION_KEY" \
53
- -d '["WORKFLOW_ID"]'
54
- ```
55
-
56
- ### Copy Workflow
57
- ```bash
58
- curl -X POST "https://api.hailer.com/api/v2/process/copy" \
59
- -H "Content-Type: application/json" \
60
- -H "hlrkey: YOUR_SESSION_KEY" \
61
- -d '[{"processIds": ["WORKFLOW_ID"]}]'
62
- ```
63
-
64
- ### Star/Unstar Workflow
65
- ```bash
66
- curl -X POST "https://api.hailer.com/api/v2/process/star" \
67
- -H "Content-Type: application/json" \
68
- -H "hlrkey: YOUR_SESSION_KEY" \
69
- -d '["WORKFLOW_ID"]'
70
- ```
71
-
72
- ---
73
-
74
- ## Field Operations
75
-
76
- ### Create Field
77
- ```bash
78
- curl -X POST "https://api.hailer.com/api/process/create_field" \
79
- -H "Content-Type: application/json" \
80
- -H "hlrkey: YOUR_SESSION_KEY" \
81
- -d '["WORKFLOW_ID", {"name": "Field Name", "type": "text", "order": 1}]'
82
- ```
83
-
84
- Field types (from hailer.d.ts): `text`, `textarea`, `textunit`, `numeric`, `numericunit`, `date`, `datetime`, `daterange`, `datetimerange`, `time`, `timerange`, `textpredefinedoptions`, `users`, `teams`, `activitylink`, `linkedfrom`, `country`, `subheader`
85
-
86
- ### Update Field
87
- ```bash
88
- curl -X POST "https://api.hailer.com/api/process/update_field" \
89
- -H "Content-Type: application/json" \
90
- -H "hlrkey: YOUR_SESSION_KEY" \
91
- -d '["WORKFLOW_ID", "FIELD_ID", {"name": "Updated Name", "required": true}]'
92
- ```
93
-
94
- ### Remove Field
95
- ```bash
96
- curl -X POST "https://api.hailer.com/api/process/remove_field" \
97
- -H "Content-Type: application/json" \
98
- -H "hlrkey: YOUR_SESSION_KEY" \
99
- -d '["WORKFLOW_ID", "FIELD_ID"]'
100
- ```
101
-
102
- ---
103
-
104
- ## Phase Operations
105
-
106
- ### Create Phase
107
- ```bash
108
- curl -X POST "https://api.hailer.com/api/phase/create" \
109
- -H "Content-Type: application/json" \
110
- -H "hlrkey: YOUR_SESSION_KEY" \
111
- -d '[{"processId": "WORKFLOW_ID", "name": "New Phase", "order": 1}]'
112
- ```
113
-
114
- ### Update Phase
115
- ```bash
116
- curl -X POST "https://api.hailer.com/api/phase/update" \
117
- -H "Content-Type: application/json" \
118
- -H "hlrkey: YOUR_SESSION_KEY" \
119
- -d '["PHASE_ID", {"name": "Updated Phase", "color": "#FF5733"}]'
120
- ```
121
-
122
- ### Remove Phase
123
- ```bash
124
- curl -X POST "https://api.hailer.com/api/phase/remove" \
125
- -H "Content-Type: application/json" \
126
- -H "hlrkey: YOUR_SESSION_KEY" \
127
- -d '["PHASE_ID"]'
128
- ```
129
-
130
- ### Set Phase Info
131
- ```bash
132
- curl -X POST "https://api.hailer.com/api/phase/set_info" \
133
- -H "Content-Type: application/json" \
134
- -H "hlrkey: YOUR_SESSION_KEY" \
135
- -d '["PHASE_ID", {"description": "Phase description"}]'
136
- ```
137
-
138
- ---
139
-
140
- ## Workflow Members & Permissions (v2)
141
-
142
- ### List Members
143
- ```bash
144
- curl -X POST "https://api.hailer.com/api/v2/process/member/list" \
145
- -H "Content-Type: application/json" \
146
- -H "hlrkey: YOUR_SESSION_KEY" \
147
- -d '["WORKFLOW_ID"]'
148
- ```
149
-
150
- ### Add Member
151
- ```bash
152
- curl -X POST "https://api.hailer.com/api/v2/process/member/add" \
153
- -H "Content-Type: application/json" \
154
- -H "hlrkey: YOUR_SESSION_KEY" \
155
- -d '["WORKFLOW_ID", {"userId": "USER_ID"}]'
156
- # Or for team: {"teamId": "TEAM_ID"}
157
- ```
158
-
159
- ### Remove Member
160
- ```bash
161
- curl -X POST "https://api.hailer.com/api/v2/process/member/remove" \
162
- -H "Content-Type: application/json" \
163
- -H "hlrkey: YOUR_SESSION_KEY" \
164
- -d '["WORKFLOW_ID", {"userId": "USER_ID"}]'
165
- ```
166
-
167
- ### Grant Permission
168
- ```bash
169
- curl -X POST "https://api.hailer.com/api/v2/process/permissions/grant" \
170
- -H "Content-Type: application/json" \
171
- -H "hlrkey: YOUR_SESSION_KEY" \
172
- -d '["WORKFLOW_ID", {"userId": "USER_ID"}, "edit"]'
173
- # Permissions: view, edit, admin
174
- ```
175
-
176
- ### Deny Permission
177
- ```bash
178
- curl -X POST "https://api.hailer.com/api/v2/process/permissions/deny" \
179
- -H "Content-Type: application/json" \
180
- -H "hlrkey: YOUR_SESSION_KEY" \
181
- -d '["WORKFLOW_ID", {"userId": "USER_ID"}, "edit"]'
182
- ```
183
-
184
- ---
185
-
186
- ## Phase Members & Permissions (v2)
187
-
188
- ### List Phase Members
189
- ```bash
190
- curl -X POST "https://api.hailer.com/api/v2/process/phase/member/list" \
191
- -H "Content-Type: application/json" \
192
- -H "hlrkey: YOUR_SESSION_KEY" \
193
- -d '["PHASE_ID"]'
194
- ```
195
-
196
- ### Add Phase Member
197
- ```bash
198
- curl -X POST "https://api.hailer.com/api/v2/process/phase/member/add" \
199
- -H "Content-Type: application/json" \
200
- -H "hlrkey: YOUR_SESSION_KEY" \
201
- -d '["PHASE_ID", {"userId": "USER_ID"}]'
202
- ```
203
-
204
- ### Grant Phase Permission
205
- ```bash
206
- curl -X POST "https://api.hailer.com/api/v2/process/phase/permissions/grant" \
207
- -H "Content-Type: application/json" \
208
- -H "hlrkey: YOUR_SESSION_KEY" \
209
- -d '["PHASE_ID", {"userId": "USER_ID"}, "edit"]'
210
- ```
211
-
212
- ---
213
-
214
- ## Templates
215
-
216
- ### Install Template
217
- ```bash
218
- curl -X POST "https://api.hailer.com/api/process/install_template" \
219
- -H "Content-Type: application/json" \
220
- -H "hlrkey: YOUR_SESSION_KEY" \
221
- -d '["TEMPLATE_ID"]'
222
- ```
223
-
224
- ### Create Activity Template
225
- ```bash
226
- curl -X POST "https://api.hailer.com/api/v3/activity/template/create" \
227
- -H "Content-Type: application/json" \
228
- -H "hlrkey: YOUR_SESSION_KEY" \
229
- -d '["WORKFLOW_ID", "PHASE_ID"]'
230
- ```
231
-
232
- ---
233
-
234
- ## Public Forms (v2)
235
-
236
- ### Create Public Form
237
- ```bash
238
- curl -X POST "https://api.hailer.com/api/v2/process/publicForm/create" \
239
- -H "Content-Type: application/json" \
240
- -H "hlrkey: YOUR_SESSION_KEY" \
241
- -d '[{"processId": "WORKFLOW_ID", "phaseId": "PHASE_ID", "fields": ["FIELD_ID_1"]}]'
242
- ```
243
-
244
- ### Update Public Form
245
- ```bash
246
- curl -X POST "https://api.hailer.com/api/v2/process/publicForm/update" \
247
- -H "Content-Type: application/json" \
248
- -H "hlrkey: YOUR_SESSION_KEY" \
249
- -d '[{"formId": "FORM_ID", "enabled": true}]'
250
- ```
251
-
252
- ---
253
-
254
- ## Document Templates
255
-
256
- ### Set Document Templates
257
- ```bash
258
- curl -X POST "https://api.hailer.com/api/process/set_documentTemplates" \
259
- -H "Content-Type: application/json" \
260
- -H "hlrkey: YOUR_SESSION_KEY" \
261
- -d '["WORKFLOW_ID", {"template1": {"name": "Invoice", "content": "..."}}]'
262
- ```
263
-
264
- ---
265
-
266
- ## Translations (v2)
267
-
268
- ### Create Translation
269
- ```bash
270
- curl -X POST "https://api.hailer.com/api/v2/process/translation/create" \
271
- -H "Content-Type: application/json" \
272
- -H "hlrkey: YOUR_SESSION_KEY" \
273
- -d '["WORKFLOW_ID", "fi"]'
274
- # ISO language codes: en, fi, sv, de, etc.
275
- ```
276
-
277
- ---
278
-
279
- ## Notes
280
- - workflowId = processId (legacy naming)
281
- - cid = companyId = workspaceId = networkId (all refer to workspace)
282
- - Phases are like columns in a Kanban or row states
283
- - Fields are columns in the workflow table