runline 0.11.5 → 0.12.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 (253) hide show
  1. package/dist/commands/actions.js +3 -1
  2. package/dist/core/engine.js +3 -0
  3. package/dist/index.d.ts +1 -1
  4. package/dist/plugin/api.d.ts +2 -1
  5. package/dist/plugin/types.d.ts +2 -0
  6. package/dist/plugins/actionNetwork/src/index.js +23 -0
  7. package/dist/plugins/activeCampaign/src/index.js +48 -0
  8. package/dist/plugins/adalo/src/index.js +5 -0
  9. package/dist/plugins/affinity/src/index.js +16 -0
  10. package/dist/plugins/agileCrm/src/index.js +15 -0
  11. package/dist/plugins/airtable/src/index.js +10 -0
  12. package/dist/plugins/airtop/src/index.js +24 -0
  13. package/dist/plugins/apiTemplateIo/src/index.js +4 -0
  14. package/dist/plugins/asana/src/index.js +22 -0
  15. package/dist/plugins/autopilot/src/index.js +11 -0
  16. package/dist/plugins/bambooHr/src/index.js +11 -0
  17. package/dist/plugins/bannerbear/src/index.js +4 -0
  18. package/dist/plugins/baserow/src/index.js +8 -0
  19. package/dist/plugins/beeminder/src/index.js +18 -0
  20. package/dist/plugins/bitly/src/index.js +3 -0
  21. package/dist/plugins/bitwarden/src/index.js +19 -0
  22. package/dist/plugins/box/src/index.js +11 -0
  23. package/dist/plugins/brandfetch/src/index.js +5 -0
  24. package/dist/plugins/brevo/src/index.js +15 -0
  25. package/dist/plugins/bubble/src/index.js +5 -0
  26. package/dist/plugins/chargebee/src/index.js +5 -0
  27. package/dist/plugins/circleci/src/index.js +3 -0
  28. package/dist/plugins/ciscoWebex/src/index.js +10 -0
  29. package/dist/plugins/clearbit/src/index.js +3 -0
  30. package/dist/plugins/clickup/src/index.js +61 -0
  31. package/dist/plugins/clockify/src/index.js +25 -0
  32. package/dist/plugins/cloudflare/src/index.js +4 -0
  33. package/dist/plugins/cockpit/src/index.js +5 -0
  34. package/dist/plugins/coda/src/index.js +18 -0
  35. package/dist/plugins/coingecko/src/index.js +10 -0
  36. package/dist/plugins/contentful/src/index.js +7 -0
  37. package/dist/plugins/convertkit/src/index.js +16 -0
  38. package/dist/plugins/copper/src/index.js +7 -0
  39. package/dist/plugins/cortex/src/index.js +4 -0
  40. package/dist/plugins/currents/src/index.js +22 -0
  41. package/dist/plugins/customerIo/src/index.js +9 -0
  42. package/dist/plugins/databricks/src/index.js +34 -0
  43. package/dist/plugins/deepl/src/index.js +2 -0
  44. package/dist/plugins/demio/src/index.js +4 -0
  45. package/dist/plugins/dhl/src/index.js +1 -0
  46. package/dist/plugins/discord/src/index.js +13 -0
  47. package/dist/plugins/discourse/src/index.js +16 -0
  48. package/dist/plugins/disqus/src/index.js +4 -0
  49. package/dist/plugins/docker/src/index.js +5 -0
  50. package/dist/plugins/drift/src/index.js +5 -0
  51. package/dist/plugins/dropbox/src/index.js +9 -0
  52. package/dist/plugins/dropcontact/src/index.js +2 -0
  53. package/dist/plugins/egoi/src/index.js +4 -0
  54. package/dist/plugins/elasticsearch/src/index.js +9 -0
  55. package/dist/plugins/emelia/src/index.js +9 -0
  56. package/dist/plugins/erpnext/src/index.js +5 -0
  57. package/dist/plugins/facebookGraph/src/index.js +1 -0
  58. package/dist/plugins/freshdesk/src/index.js +10 -0
  59. package/dist/plugins/freshservice/src/index.js +7 -0
  60. package/dist/plugins/freshworksCrm/src/index.js +7 -0
  61. package/dist/plugins/getresponse/src/index.js +5 -0
  62. package/dist/plugins/ghost/src/index.js +5 -0
  63. package/dist/plugins/github/src/index.js +37 -0
  64. package/dist/plugins/gitlab/src/index.js +17 -0
  65. package/dist/plugins/gmail/src/index.js +32 -0
  66. package/dist/plugins/gong/src/index.js +4 -0
  67. package/dist/plugins/googleAppsScript/src/index.js +10 -0
  68. package/dist/plugins/googleCalendar/src/index.js +22 -0
  69. package/dist/plugins/googleContacts/src/index.js +10 -0
  70. package/dist/plugins/googleDocs/src/documents.js +4 -0
  71. package/dist/plugins/googleDocs/src/formatting.js +2 -0
  72. package/dist/plugins/googleDocs/src/images.js +2 -0
  73. package/dist/plugins/googleDocs/src/structure.js +13 -0
  74. package/dist/plugins/googleDocs/src/tables.js +11 -0
  75. package/dist/plugins/googleDocs/src/tabs.js +3 -0
  76. package/dist/plugins/googleDocs/src/text.js +9 -0
  77. package/dist/plugins/googleDrive/src/index.js +47 -0
  78. package/dist/plugins/googleImage/src/index.js +1 -0
  79. package/dist/plugins/googleSheets/src/index.js +23 -0
  80. package/dist/plugins/googleSlides/src/index.js +7 -0
  81. package/dist/plugins/googleTasks/src/index.js +12 -0
  82. package/dist/plugins/gotify/src/index.js +3 -0
  83. package/dist/plugins/gotowebinar/src/index.js +20 -0
  84. package/dist/plugins/grafana/src/index.js +17 -0
  85. package/dist/plugins/graphql/src/index.js +2 -0
  86. package/dist/plugins/grist/src/index.js +4 -0
  87. package/dist/plugins/hackernews/src/index.js +6 -0
  88. package/dist/plugins/halopsa/src/index.js +5 -0
  89. package/dist/plugins/harvest/src/index.js +14 -0
  90. package/dist/plugins/helpscout/src/index.js +13 -0
  91. package/dist/plugins/highlevel/src/index.js +17 -0
  92. package/dist/plugins/homeAssistant/src/index.js +13 -0
  93. package/dist/plugins/hubspot/src/index.js +14 -0
  94. package/dist/plugins/humanticAi/src/index.js +3 -0
  95. package/dist/plugins/hunter/src/index.js +3 -0
  96. package/dist/plugins/intercom/src/index.js +10 -0
  97. package/dist/plugins/iterable/src/index.js +6 -0
  98. package/dist/plugins/jenkins/src/index.js +11 -0
  99. package/dist/plugins/jira/src/index.js +16 -0
  100. package/dist/plugins/keap/src/index.js +28 -0
  101. package/dist/plugins/kobotoolbox/src/index.js +17 -0
  102. package/dist/plugins/lemlist/src/index.js +15 -0
  103. package/dist/plugins/linear/src/attachments.js +6 -0
  104. package/dist/plugins/linear/src/comments.js +5 -0
  105. package/dist/plugins/linear/src/cycles.js +2 -0
  106. package/dist/plugins/linear/src/initiatives.js +5 -0
  107. package/dist/plugins/linear/src/issues.js +14 -0
  108. package/dist/plugins/linear/src/labels.js +5 -0
  109. package/dist/plugins/linear/src/organization.js +1 -0
  110. package/dist/plugins/linear/src/projects.js +11 -0
  111. package/dist/plugins/linear/src/shared.js +2 -0
  112. package/dist/plugins/linear/src/states.js +2 -0
  113. package/dist/plugins/linear/src/teams.js +3 -0
  114. package/dist/plugins/linear/src/users.js +2 -0
  115. package/dist/plugins/linear/src/views.js +4 -0
  116. package/dist/plugins/linear/src/webhooks.js +4 -0
  117. package/dist/plugins/lingvanex/src/index.js +1 -0
  118. package/dist/plugins/linkedin/src/index.js +1 -0
  119. package/dist/plugins/lonescale/src/index.js +4 -0
  120. package/dist/plugins/magento/src/index.js +15 -0
  121. package/dist/plugins/mailcheck/src/index.js +1 -0
  122. package/dist/plugins/mailchimp/src/index.js +14 -0
  123. package/dist/plugins/mailerlite/src/index.js +4 -0
  124. package/dist/plugins/mailgun/src/index.js +1 -0
  125. package/dist/plugins/mailjet/src/index.js +3 -0
  126. package/dist/plugins/mandrill/src/index.js +2 -0
  127. package/dist/plugins/marketstack/src/index.js +3 -0
  128. package/dist/plugins/matrix/src/index.js +10 -0
  129. package/dist/plugins/mattermost/src/index.js +19 -0
  130. package/dist/plugins/mautic/src/index.js +20 -0
  131. package/dist/plugins/medium/src/index.js +3 -0
  132. package/dist/plugins/messagebird/src/index.js +2 -0
  133. package/dist/plugins/metabase/src/index.js +10 -0
  134. package/dist/plugins/microsoftCalendar/src/index.js +2 -0
  135. package/dist/plugins/microsoftFiles/src/index.js +5 -0
  136. package/dist/plugins/microsoftMail/src/index.js +4 -0
  137. package/dist/plugins/misp/src/index.js +44 -0
  138. package/dist/plugins/mocean/src/index.js +2 -0
  139. package/dist/plugins/monday/src/index.js +18 -0
  140. package/dist/plugins/monicaCrm/src/index.js +5 -0
  141. package/dist/plugins/msg91/src/index.js +1 -0
  142. package/dist/plugins/nasa/src/index.js +7 -0
  143. package/dist/plugins/netlify/src/index.js +7 -0
  144. package/dist/plugins/netscalerAdc/src/index.js +3 -0
  145. package/dist/plugins/nextcloud/src/index.js +13 -0
  146. package/dist/plugins/nocodb/src/index.js +5 -0
  147. package/dist/plugins/node/src/index.js +38 -0
  148. package/dist/plugins/notion/src/index.js +14 -0
  149. package/dist/plugins/npm/src/index.js +5 -0
  150. package/dist/plugins/odoo/src/index.js +6 -0
  151. package/dist/plugins/okta/src/index.js +5 -0
  152. package/dist/plugins/oneSimpleApi/src/index.js +10 -0
  153. package/dist/plugins/onfleet/src/index.js +24 -0
  154. package/dist/plugins/openThesaurus/src/index.js +1 -0
  155. package/dist/plugins/openai/src/index.js +1 -0
  156. package/dist/plugins/openweathermap/src/index.js +2 -0
  157. package/dist/plugins/oura/src/index.js +2 -0
  158. package/dist/plugins/paddle/src/index.js +9 -0
  159. package/dist/plugins/pagerduty/src/index.js +9 -0
  160. package/dist/plugins/parallel/src/index.js +1 -0
  161. package/dist/plugins/paypal/src/index.js +4 -0
  162. package/dist/plugins/peekalink/src/index.js +2 -0
  163. package/dist/plugins/phantombuster/src/index.js +5 -0
  164. package/dist/plugins/philipsHue/src/index.js +4 -0
  165. package/dist/plugins/pipedrive/src/index.js +14 -0
  166. package/dist/plugins/plivo/src/index.js +3 -0
  167. package/dist/plugins/postbin/src/index.js +6 -0
  168. package/dist/plugins/posthog/src/index.js +5 -0
  169. package/dist/plugins/profitwell/src/index.js +2 -0
  170. package/dist/plugins/pushbullet/src/index.js +4 -0
  171. package/dist/plugins/pushcut/src/index.js +1 -0
  172. package/dist/plugins/pushover/src/index.js +1 -0
  173. package/dist/plugins/quickbase/src/index.js +8 -0
  174. package/dist/plugins/quickbooks/src/index.js +5 -0
  175. package/dist/plugins/quickchart/src/index.js +1 -0
  176. package/dist/plugins/raindrop/src/index.js +13 -0
  177. package/dist/plugins/recraft/src/index.js +1 -0
  178. package/dist/plugins/reddit/src/index.js +10 -0
  179. package/dist/plugins/replicate/src/index.js +1 -0
  180. package/dist/plugins/rocketchat/src/index.js +1 -0
  181. package/dist/plugins/rundeck/src/index.js +2 -0
  182. package/dist/plugins/salesforce/src/metadata.js +4 -0
  183. package/dist/plugins/salesforce/src/query.js +5 -0
  184. package/dist/plugins/salesforce/src/sobjects.js +12 -0
  185. package/dist/plugins/salesmate/src/index.js +5 -0
  186. package/dist/plugins/securityScorecard/src/index.js +14 -0
  187. package/dist/plugins/segment/src/index.js +4 -0
  188. package/dist/plugins/sendgrid/src/index.js +10 -0
  189. package/dist/plugins/sendy/src/index.js +6 -0
  190. package/dist/plugins/sentry/src/index.js +24 -0
  191. package/dist/plugins/servicenow/src/index.js +10 -0
  192. package/dist/plugins/shiftLabs/src/index.js +15 -0
  193. package/dist/plugins/shiftLabs/src/issues.js +74 -0
  194. package/dist/plugins/shiftLabs/src/pages.js +148 -0
  195. package/dist/plugins/shiftLabs/src/shared.js +69 -0
  196. package/dist/plugins/shopify/src/index.js +10 -0
  197. package/dist/plugins/signl4/src/index.js +2 -0
  198. package/dist/plugins/slack/src/index.js +38 -0
  199. package/dist/plugins/sms77/src/index.js +2 -0
  200. package/dist/plugins/splunk/src/index.js +16 -0
  201. package/dist/plugins/spotify/src/index.js +30 -0
  202. package/dist/plugins/stackby/src/index.js +4 -0
  203. package/dist/plugins/steel/src/browser.js +7 -0
  204. package/dist/plugins/steel/src/captchas.js +3 -0
  205. package/dist/plugins/steel/src/credentials.js +4 -0
  206. package/dist/plugins/steel/src/extensions.js +5 -0
  207. package/dist/plugins/steel/src/files.js +10 -0
  208. package/dist/plugins/steel/src/profiles.js +4 -0
  209. package/dist/plugins/steel/src/sessions.js +11 -0
  210. package/dist/plugins/storyblok/src/index.js +7 -0
  211. package/dist/plugins/strapi/src/index.js +5 -0
  212. package/dist/plugins/strava/src/index.js +6 -0
  213. package/dist/plugins/stripe/src/index.js +20 -0
  214. package/dist/plugins/supabase/src/index.js +5 -0
  215. package/dist/plugins/syncromsp/src/index.js +20 -0
  216. package/dist/plugins/tapfiliate/src/index.js +11 -0
  217. package/dist/plugins/telegram/src/index.js +21 -0
  218. package/dist/plugins/thehive/src/index.js +23 -0
  219. package/dist/plugins/thehiveProject/src/index.js +31 -0
  220. package/dist/plugins/todoist/src/index.js +31 -0
  221. package/dist/plugins/together/src/index.js +1 -0
  222. package/dist/plugins/travisci/src/index.js +5 -0
  223. package/dist/plugins/trello/src/index.js +37 -0
  224. package/dist/plugins/twake/src/index.js +1 -0
  225. package/dist/plugins/twilio/src/index.js +2 -0
  226. package/dist/plugins/twist/src/index.js +22 -0
  227. package/dist/plugins/twitter/src/index.js +8 -0
  228. package/dist/plugins/unleashedSoftware/src/index.js +3 -0
  229. package/dist/plugins/uplead/src/index.js +2 -0
  230. package/dist/plugins/uproc/src/index.js +1 -0
  231. package/dist/plugins/uptimerobot/src/index.js +22 -0
  232. package/dist/plugins/urlscanio/src/index.js +3 -0
  233. package/dist/plugins/vercel/src/account.js +1 -0
  234. package/dist/plugins/vercel/src/deployments.js +5 -0
  235. package/dist/plugins/vercel/src/env.js +4 -0
  236. package/dist/plugins/vercel/src/projects.js +2 -0
  237. package/dist/plugins/vercel/src/shared.js +1 -0
  238. package/dist/plugins/vero/src/index.js +6 -0
  239. package/dist/plugins/vonage/src/index.js +1 -0
  240. package/dist/plugins/wekan/src/index.js +24 -0
  241. package/dist/plugins/woocommerce/src/index.js +5 -0
  242. package/dist/plugins/wordpress/src/index.js +10 -0
  243. package/dist/plugins/xai/src/index.js +1 -0
  244. package/dist/plugins/xero/src/index.js +8 -0
  245. package/dist/plugins/yourls/src/index.js +3 -0
  246. package/dist/plugins/zammad/src/index.js +12 -0
  247. package/dist/plugins/zendesk/src/index.js +18 -0
  248. package/dist/plugins/zoho/src/index.js +6 -0
  249. package/dist/plugins/zoom/src/index.js +5 -0
  250. package/dist/plugins/zulip/src/index.js +15 -0
  251. package/dist/sdk.d.ts +2 -1
  252. package/dist/sdk.js +1 -0
  253. package/package.json +1 -1
@@ -56,6 +56,7 @@ export default function syncromsp(rl) {
56
56
  });
57
57
  // ── Customer ────────────────────────────────────────
58
58
  rl.registerAction("customer.create", {
59
+ access: "write",
59
60
  description: "Create a customer",
60
61
  inputSchema: {
61
62
  email: { type: "string", required: true },
@@ -96,6 +97,7 @@ export default function syncromsp(rl) {
96
97
  },
97
98
  });
98
99
  rl.registerAction("customer.get", {
100
+ access: "read",
99
101
  description: "Get a customer",
100
102
  inputSchema: { id: { type: "string", required: true } },
101
103
  async execute(input, ctx) {
@@ -105,6 +107,7 @@ export default function syncromsp(rl) {
105
107
  },
106
108
  });
107
109
  rl.registerAction("customer.list", {
110
+ access: "read",
108
111
  description: "List customers",
109
112
  inputSchema: {
110
113
  limit: { type: "number", required: false },
@@ -128,6 +131,7 @@ export default function syncromsp(rl) {
128
131
  },
129
132
  });
130
133
  rl.registerAction("customer.update", {
134
+ access: "write",
131
135
  description: "Update a customer",
132
136
  inputSchema: {
133
137
  id: { type: "string", required: true },
@@ -159,6 +163,7 @@ export default function syncromsp(rl) {
159
163
  },
160
164
  });
161
165
  rl.registerAction("customer.delete", {
166
+ access: "write",
162
167
  description: "Delete a customer",
163
168
  inputSchema: { id: { type: "string", required: true } },
164
169
  async execute(input, ctx) {
@@ -169,6 +174,7 @@ export default function syncromsp(rl) {
169
174
  });
170
175
  // ── Contact ─────────────────────────────────────────
171
176
  rl.registerAction("contact.create", {
177
+ access: "write",
172
178
  description: "Create a contact",
173
179
  inputSchema: {
174
180
  customerId: { type: "string", required: true },
@@ -194,6 +200,7 @@ export default function syncromsp(rl) {
194
200
  },
195
201
  });
196
202
  rl.registerAction("contact.get", {
203
+ access: "read",
197
204
  description: "Get a contact",
198
205
  inputSchema: { id: { type: "string", required: true } },
199
206
  async execute(input, ctx) {
@@ -202,6 +209,7 @@ export default function syncromsp(rl) {
202
209
  },
203
210
  });
204
211
  rl.registerAction("contact.list", {
212
+ access: "read",
205
213
  description: "List contacts",
206
214
  inputSchema: { limit: { type: "number", required: false } },
207
215
  async execute(input, ctx) {
@@ -215,6 +223,7 @@ export default function syncromsp(rl) {
215
223
  },
216
224
  });
217
225
  rl.registerAction("contact.update", {
226
+ access: "write",
218
227
  description: "Update a contact",
219
228
  inputSchema: {
220
229
  id: { type: "string", required: true },
@@ -242,6 +251,7 @@ export default function syncromsp(rl) {
242
251
  },
243
252
  });
244
253
  rl.registerAction("contact.delete", {
254
+ access: "write",
245
255
  description: "Delete a contact",
246
256
  inputSchema: { id: { type: "string", required: true } },
247
257
  async execute(input, ctx) {
@@ -252,6 +262,7 @@ export default function syncromsp(rl) {
252
262
  });
253
263
  // ── Ticket ──────────────────────────────────────────
254
264
  rl.registerAction("ticket.create", {
265
+ access: "write",
255
266
  description: "Create a ticket",
256
267
  inputSchema: {
257
268
  customerId: { type: "string", required: true },
@@ -281,6 +292,7 @@ export default function syncromsp(rl) {
281
292
  },
282
293
  });
283
294
  rl.registerAction("ticket.get", {
295
+ access: "read",
284
296
  description: "Get a ticket",
285
297
  inputSchema: { id: { type: "string", required: true } },
286
298
  async execute(input, ctx) {
@@ -290,6 +302,7 @@ export default function syncromsp(rl) {
290
302
  },
291
303
  });
292
304
  rl.registerAction("ticket.list", {
305
+ access: "read",
293
306
  description: "List tickets",
294
307
  inputSchema: {
295
308
  limit: { type: "number", required: false },
@@ -310,6 +323,7 @@ export default function syncromsp(rl) {
310
323
  },
311
324
  });
312
325
  rl.registerAction("ticket.update", {
326
+ access: "write",
313
327
  description: "Update a ticket",
314
328
  inputSchema: {
315
329
  id: { type: "string", required: true },
@@ -344,6 +358,7 @@ export default function syncromsp(rl) {
344
358
  },
345
359
  });
346
360
  rl.registerAction("ticket.delete", {
361
+ access: "write",
347
362
  description: "Delete a ticket",
348
363
  inputSchema: { id: { type: "string", required: true } },
349
364
  async execute(input, ctx) {
@@ -354,6 +369,7 @@ export default function syncromsp(rl) {
354
369
  });
355
370
  // ── RMM Alerts ──────────────────────────────────────
356
371
  rl.registerAction("rmmAlert.create", {
372
+ access: "write",
357
373
  description: "Create an RMM alert",
358
374
  inputSchema: {
359
375
  customerId: { type: "string", required: true },
@@ -372,6 +388,7 @@ export default function syncromsp(rl) {
372
388
  },
373
389
  });
374
390
  rl.registerAction("rmmAlert.get", {
391
+ access: "read",
375
392
  description: "Get an RMM alert",
376
393
  inputSchema: { id: { type: "string", required: true } },
377
394
  async execute(input, ctx) {
@@ -381,6 +398,7 @@ export default function syncromsp(rl) {
381
398
  },
382
399
  });
383
400
  rl.registerAction("rmmAlert.list", {
401
+ access: "read",
384
402
  description: "List RMM alerts",
385
403
  inputSchema: {
386
404
  limit: { type: "number", required: false },
@@ -403,6 +421,7 @@ export default function syncromsp(rl) {
403
421
  },
404
422
  });
405
423
  rl.registerAction("rmmAlert.delete", {
424
+ access: "write",
406
425
  description: "Delete an RMM alert",
407
426
  inputSchema: { id: { type: "string", required: true } },
408
427
  async execute(input, ctx) {
@@ -412,6 +431,7 @@ export default function syncromsp(rl) {
412
431
  },
413
432
  });
414
433
  rl.registerAction("rmmAlert.mute", {
434
+ access: "write",
415
435
  description: "Mute an RMM alert",
416
436
  inputSchema: {
417
437
  id: { type: "string", required: true },
@@ -33,6 +33,7 @@ export default function tapfiliate(rl) {
33
33
  const key = (ctx) => ctx.connection.config.apiKey;
34
34
  // ── Affiliate ───────────────────────────────────────
35
35
  rl.registerAction("affiliate.create", {
36
+ access: "write",
36
37
  description: "Create an affiliate",
37
38
  inputSchema: {
38
39
  firstname: { type: "string", required: true },
@@ -53,6 +54,7 @@ export default function tapfiliate(rl) {
53
54
  },
54
55
  });
55
56
  rl.registerAction("affiliate.get", {
57
+ access: "read",
56
58
  description: "Get an affiliate by ID",
57
59
  inputSchema: { affiliateId: { type: "string", required: true } },
58
60
  async execute(input, ctx) {
@@ -60,6 +62,7 @@ export default function tapfiliate(rl) {
60
62
  },
61
63
  });
62
64
  rl.registerAction("affiliate.list", {
65
+ access: "read",
63
66
  description: "List affiliates",
64
67
  inputSchema: {
65
68
  limit: { type: "number", required: false },
@@ -75,6 +78,7 @@ export default function tapfiliate(rl) {
75
78
  },
76
79
  });
77
80
  rl.registerAction("affiliate.delete", {
81
+ access: "write",
78
82
  description: "Delete an affiliate",
79
83
  inputSchema: { affiliateId: { type: "string", required: true } },
80
84
  async execute(input, ctx) {
@@ -84,6 +88,7 @@ export default function tapfiliate(rl) {
84
88
  });
85
89
  // ── Affiliate Metadata ──────────────────────────────
86
90
  rl.registerAction("affiliateMetadata.set", {
91
+ access: "write",
87
92
  description: "Set metadata key-value on an affiliate",
88
93
  inputSchema: {
89
94
  affiliateId: { type: "string", required: true },
@@ -96,6 +101,7 @@ export default function tapfiliate(rl) {
96
101
  },
97
102
  });
98
103
  rl.registerAction("affiliateMetadata.delete", {
104
+ access: "write",
99
105
  description: "Delete a metadata key from an affiliate",
100
106
  inputSchema: {
101
107
  affiliateId: { type: "string", required: true },
@@ -109,6 +115,7 @@ export default function tapfiliate(rl) {
109
115
  });
110
116
  // ── Program Affiliate ───────────────────────────────
111
117
  rl.registerAction("programAffiliate.add", {
118
+ access: "write",
112
119
  description: "Add an affiliate to a program",
113
120
  inputSchema: {
114
121
  programId: { type: "string", required: true },
@@ -120,6 +127,7 @@ export default function tapfiliate(rl) {
120
127
  },
121
128
  });
122
129
  rl.registerAction("programAffiliate.approve", {
130
+ access: "write",
123
131
  description: "Approve an affiliate for a program",
124
132
  inputSchema: {
125
133
  programId: { type: "string", required: true },
@@ -131,6 +139,7 @@ export default function tapfiliate(rl) {
131
139
  },
132
140
  });
133
141
  rl.registerAction("programAffiliate.disapprove", {
142
+ access: "write",
134
143
  description: "Disapprove an affiliate for a program",
135
144
  inputSchema: {
136
145
  programId: { type: "string", required: true },
@@ -143,6 +152,7 @@ export default function tapfiliate(rl) {
143
152
  },
144
153
  });
145
154
  rl.registerAction("programAffiliate.get", {
155
+ access: "read",
146
156
  description: "Get an affiliate in a program",
147
157
  inputSchema: {
148
158
  programId: { type: "string", required: true },
@@ -154,6 +164,7 @@ export default function tapfiliate(rl) {
154
164
  },
155
165
  });
156
166
  rl.registerAction("programAffiliate.list", {
167
+ access: "read",
157
168
  description: "List affiliates in a program",
158
169
  inputSchema: {
159
170
  programId: { type: "string", required: true },
@@ -38,6 +38,7 @@ export default function telegram(rl) {
38
38
  });
39
39
  // ── Message ─────────────────────────────────────────
40
40
  rl.registerAction("message.send", {
41
+ access: "write",
41
42
  description: "Send a text message",
42
43
  inputSchema: {
43
44
  chatId: { type: "string", required: true },
@@ -66,6 +67,7 @@ export default function telegram(rl) {
66
67
  },
67
68
  });
68
69
  rl.registerAction("message.edit", {
70
+ access: "write",
69
71
  description: "Edit a text message",
70
72
  inputSchema: {
71
73
  chatId: { type: "string", required: true },
@@ -86,6 +88,7 @@ export default function telegram(rl) {
86
88
  },
87
89
  });
88
90
  rl.registerAction("message.delete", {
91
+ access: "write",
89
92
  description: "Delete a message",
90
93
  inputSchema: {
91
94
  chatId: { type: "string", required: true },
@@ -100,6 +103,7 @@ export default function telegram(rl) {
100
103
  },
101
104
  });
102
105
  rl.registerAction("message.pin", {
106
+ access: "write",
103
107
  description: "Pin a message in a chat",
104
108
  inputSchema: {
105
109
  chatId: { type: "string", required: true },
@@ -118,6 +122,7 @@ export default function telegram(rl) {
118
122
  },
119
123
  });
120
124
  rl.registerAction("message.unpin", {
125
+ access: "write",
121
126
  description: "Unpin a message in a chat",
122
127
  inputSchema: {
123
128
  chatId: { type: "string", required: true },
@@ -132,6 +137,7 @@ export default function telegram(rl) {
132
137
  },
133
138
  });
134
139
  rl.registerAction("message.sendLocation", {
140
+ access: "write",
135
141
  description: "Send a location",
136
142
  inputSchema: {
137
143
  chatId: { type: "string", required: true },
@@ -148,6 +154,7 @@ export default function telegram(rl) {
148
154
  },
149
155
  });
150
156
  rl.registerAction("message.sendChatAction", {
157
+ access: "write",
151
158
  description: "Send a chat action (typing, upload_photo, etc.)",
152
159
  inputSchema: {
153
160
  chatId: { type: "string", required: true },
@@ -166,6 +173,7 @@ export default function telegram(rl) {
166
173
  },
167
174
  });
168
175
  rl.registerAction("message.sendPhoto", {
176
+ access: "write",
169
177
  description: "Send a photo by URL",
170
178
  inputSchema: {
171
179
  chatId: { type: "string", required: true },
@@ -188,6 +196,7 @@ export default function telegram(rl) {
188
196
  },
189
197
  });
190
198
  rl.registerAction("message.sendDocument", {
199
+ access: "write",
191
200
  description: "Send a document by URL",
192
201
  inputSchema: {
193
202
  chatId: { type: "string", required: true },
@@ -210,6 +219,7 @@ export default function telegram(rl) {
210
219
  },
211
220
  });
212
221
  rl.registerAction("message.sendVideo", {
222
+ access: "write",
213
223
  description: "Send a video by URL",
214
224
  inputSchema: {
215
225
  chatId: { type: "string", required: true },
@@ -232,6 +242,7 @@ export default function telegram(rl) {
232
242
  },
233
243
  });
234
244
  rl.registerAction("message.sendSticker", {
245
+ access: "write",
235
246
  description: "Send a sticker",
236
247
  inputSchema: {
237
248
  chatId: { type: "string", required: true },
@@ -250,6 +261,7 @@ export default function telegram(rl) {
250
261
  },
251
262
  });
252
263
  rl.registerAction("message.sendAnimation", {
264
+ access: "write",
253
265
  description: "Send a GIF/animation",
254
266
  inputSchema: {
255
267
  chatId: { type: "string", required: true },
@@ -272,6 +284,7 @@ export default function telegram(rl) {
272
284
  },
273
285
  });
274
286
  rl.registerAction("message.sendAudio", {
287
+ access: "write",
275
288
  description: "Send audio by URL",
276
289
  inputSchema: {
277
290
  chatId: { type: "string", required: true },
@@ -295,6 +308,7 @@ export default function telegram(rl) {
295
308
  });
296
309
  // ── Chat ────────────────────────────────────────────
297
310
  rl.registerAction("chat.get", {
311
+ access: "read",
298
312
  description: "Get chat info",
299
313
  inputSchema: { chatId: { type: "string", required: true } },
300
314
  async execute(input, ctx) {
@@ -304,6 +318,7 @@ export default function telegram(rl) {
304
318
  },
305
319
  });
306
320
  rl.registerAction("chat.getAdministrators", {
321
+ access: "read",
307
322
  description: "Get chat administrators",
308
323
  inputSchema: { chatId: { type: "string", required: true } },
309
324
  async execute(input, ctx) {
@@ -313,6 +328,7 @@ export default function telegram(rl) {
313
328
  },
314
329
  });
315
330
  rl.registerAction("chat.getMember", {
331
+ access: "read",
316
332
  description: "Get a chat member",
317
333
  inputSchema: {
318
334
  chatId: { type: "string", required: true },
@@ -327,6 +343,7 @@ export default function telegram(rl) {
327
343
  },
328
344
  });
329
345
  rl.registerAction("chat.leave", {
346
+ access: "write",
330
347
  description: "Leave a chat",
331
348
  inputSchema: { chatId: { type: "string", required: true } },
332
349
  async execute(input, ctx) {
@@ -336,6 +353,7 @@ export default function telegram(rl) {
336
353
  },
337
354
  });
338
355
  rl.registerAction("chat.setDescription", {
356
+ access: "write",
339
357
  description: "Set chat description",
340
358
  inputSchema: {
341
359
  chatId: { type: "string", required: true },
@@ -350,6 +368,7 @@ export default function telegram(rl) {
350
368
  },
351
369
  });
352
370
  rl.registerAction("chat.setTitle", {
371
+ access: "write",
353
372
  description: "Set chat title",
354
373
  inputSchema: {
355
374
  chatId: { type: "string", required: true },
@@ -365,6 +384,7 @@ export default function telegram(rl) {
365
384
  });
366
385
  // ── Callback ────────────────────────────────────────
367
386
  rl.registerAction("callback.answer", {
387
+ access: "write",
368
388
  description: "Answer a callback query",
369
389
  inputSchema: {
370
390
  callbackQueryId: { type: "string", required: true },
@@ -385,6 +405,7 @@ export default function telegram(rl) {
385
405
  });
386
406
  // ── File ────────────────────────────────────────────
387
407
  rl.registerAction("file.get", {
408
+ access: "read",
388
409
  description: "Get file metadata (use result.file_path to download)",
389
410
  inputSchema: { fileId: { type: "string", required: true } },
390
411
  async execute(input, ctx) {
@@ -46,6 +46,7 @@ export default function thehive(rl) {
46
46
  });
47
47
  // ── Alert ───────────────────────────────────────────
48
48
  rl.registerAction("alert.create", {
49
+ access: "write",
49
50
  description: "Create an alert",
50
51
  inputSchema: {
51
52
  title: { type: "string", required: true },
@@ -66,6 +67,7 @@ export default function thehive(rl) {
66
67
  },
67
68
  });
68
69
  rl.registerAction("alert.get", {
70
+ access: "read",
69
71
  description: "Get an alert by ID",
70
72
  inputSchema: { id: { type: "string", required: true } },
71
73
  async execute(input, ctx) {
@@ -73,6 +75,7 @@ export default function thehive(rl) {
73
75
  },
74
76
  });
75
77
  rl.registerAction("alert.list", {
78
+ access: "read",
76
79
  description: "List alerts",
77
80
  inputSchema: { limit: { type: "number", required: false } },
78
81
  async execute(input, ctx) {
@@ -84,6 +87,7 @@ export default function thehive(rl) {
84
87
  },
85
88
  });
86
89
  rl.registerAction("alert.update", {
90
+ access: "write",
87
91
  description: "Update an alert",
88
92
  inputSchema: {
89
93
  id: { type: "string", required: true },
@@ -95,6 +99,7 @@ export default function thehive(rl) {
95
99
  },
96
100
  });
97
101
  rl.registerAction("alert.markAsRead", {
102
+ access: "write",
98
103
  description: "Mark an alert as read",
99
104
  inputSchema: { id: { type: "string", required: true } },
100
105
  async execute(input, ctx) {
@@ -102,6 +107,7 @@ export default function thehive(rl) {
102
107
  },
103
108
  });
104
109
  rl.registerAction("alert.markAsUnread", {
110
+ access: "write",
105
111
  description: "Mark an alert as unread",
106
112
  inputSchema: { id: { type: "string", required: true } },
107
113
  async execute(input, ctx) {
@@ -109,6 +115,7 @@ export default function thehive(rl) {
109
115
  },
110
116
  });
111
117
  rl.registerAction("alert.promote", {
118
+ access: "write",
112
119
  description: "Promote an alert to a case",
113
120
  inputSchema: { id: { type: "string", required: true } },
114
121
  async execute(input, ctx) {
@@ -116,6 +123,7 @@ export default function thehive(rl) {
116
123
  },
117
124
  });
118
125
  rl.registerAction("alert.merge", {
126
+ access: "write",
119
127
  description: "Merge an alert into an existing case",
120
128
  inputSchema: {
121
129
  alertId: { type: "string", required: true },
@@ -128,6 +136,7 @@ export default function thehive(rl) {
128
136
  });
129
137
  // ── Case ────────────────────────────────────────────
130
138
  rl.registerAction("case.create", {
139
+ access: "write",
131
140
  description: "Create a case",
132
141
  inputSchema: {
133
142
  title: { type: "string", required: true },
@@ -146,6 +155,7 @@ export default function thehive(rl) {
146
155
  },
147
156
  });
148
157
  rl.registerAction("case.get", {
158
+ access: "read",
149
159
  description: "Get a case",
150
160
  inputSchema: { id: { type: "string", required: true } },
151
161
  async execute(input, ctx) {
@@ -153,6 +163,7 @@ export default function thehive(rl) {
153
163
  },
154
164
  });
155
165
  rl.registerAction("case.list", {
166
+ access: "read",
156
167
  description: "List cases",
157
168
  inputSchema: { limit: { type: "number", required: false } },
158
169
  async execute(input, ctx) {
@@ -164,6 +175,7 @@ export default function thehive(rl) {
164
175
  },
165
176
  });
166
177
  rl.registerAction("case.update", {
178
+ access: "write",
167
179
  description: "Update a case",
168
180
  inputSchema: {
169
181
  id: { type: "string", required: true },
@@ -176,6 +188,7 @@ export default function thehive(rl) {
176
188
  });
177
189
  // ── Observable ──────────────────────────────────────
178
190
  rl.registerAction("observable.create", {
191
+ access: "write",
179
192
  description: "Create an observable on a case",
180
193
  inputSchema: {
181
194
  caseId: { type: "string", required: true },
@@ -192,6 +205,7 @@ export default function thehive(rl) {
192
205
  },
193
206
  });
194
207
  rl.registerAction("observable.get", {
208
+ access: "read",
195
209
  description: "Get an observable",
196
210
  inputSchema: { id: { type: "string", required: true } },
197
211
  async execute(input, ctx) {
@@ -206,6 +220,7 @@ export default function thehive(rl) {
206
220
  },
207
221
  });
208
222
  rl.registerAction("observable.list", {
223
+ access: "read",
209
224
  description: "List observables for a case",
210
225
  inputSchema: {
211
226
  caseId: { type: "string", required: true },
@@ -227,6 +242,7 @@ export default function thehive(rl) {
227
242
  },
228
243
  });
229
244
  rl.registerAction("observable.update", {
245
+ access: "write",
230
246
  description: "Update an observable",
231
247
  inputSchema: {
232
248
  id: { type: "string", required: true },
@@ -239,6 +255,7 @@ export default function thehive(rl) {
239
255
  });
240
256
  // ── Task ────────────────────────────────────────────
241
257
  rl.registerAction("task.create", {
258
+ access: "write",
242
259
  description: "Create a task on a case",
243
260
  inputSchema: {
244
261
  caseId: { type: "string", required: true },
@@ -256,6 +273,7 @@ export default function thehive(rl) {
256
273
  },
257
274
  });
258
275
  rl.registerAction("task.get", {
276
+ access: "read",
259
277
  description: "Get a task",
260
278
  inputSchema: { id: { type: "string", required: true } },
261
279
  async execute(input, ctx) {
@@ -270,6 +288,7 @@ export default function thehive(rl) {
270
288
  },
271
289
  });
272
290
  rl.registerAction("task.list", {
291
+ access: "read",
273
292
  description: "List tasks for a case",
274
293
  inputSchema: {
275
294
  caseId: { type: "string", required: true },
@@ -288,6 +307,7 @@ export default function thehive(rl) {
288
307
  },
289
308
  });
290
309
  rl.registerAction("task.update", {
310
+ access: "write",
291
311
  description: "Update a task",
292
312
  inputSchema: {
293
313
  id: { type: "string", required: true },
@@ -300,6 +320,7 @@ export default function thehive(rl) {
300
320
  });
301
321
  // ── Log ─────────────────────────────────────────────
302
322
  rl.registerAction("log.create", {
323
+ access: "write",
303
324
  description: "Create a log entry on a task",
304
325
  inputSchema: {
305
326
  taskId: { type: "string", required: true },
@@ -313,6 +334,7 @@ export default function thehive(rl) {
313
334
  },
314
335
  });
315
336
  rl.registerAction("log.get", {
337
+ access: "read",
316
338
  description: "Get a log entry",
317
339
  inputSchema: { id: { type: "string", required: true } },
318
340
  async execute(input, ctx) {
@@ -327,6 +349,7 @@ export default function thehive(rl) {
327
349
  },
328
350
  });
329
351
  rl.registerAction("log.list", {
352
+ access: "read",
330
353
  description: "List logs for a task",
331
354
  inputSchema: {
332
355
  taskId: { type: "string", required: true },