runline 0.32.0 → 0.34.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 (521) hide show
  1. package/dist/auth/oauth2.d.ts +7 -1
  2. package/dist/auth/oauth2.js +10 -0
  3. package/dist/auth/token.d.ts +1 -0
  4. package/dist/auth/token.js +19 -1
  5. package/dist/auth/types.d.ts +22 -1
  6. package/dist/core/engine.d.ts +7 -0
  7. package/dist/core/engine.js +9 -0
  8. package/dist/credentials/policy.d.ts +53 -1
  9. package/dist/credentials/policy.js +146 -6
  10. package/dist/credentials/registry.d.ts +9 -0
  11. package/dist/credentials/registry.js +179 -22
  12. package/dist/credentials/transport.d.ts +48 -2
  13. package/dist/credentials/transport.js +248 -70
  14. package/dist/credentials/types.d.ts +167 -10
  15. package/dist/index.d.ts +5 -5
  16. package/dist/index.js +2 -2
  17. package/dist/plugin/api.d.ts +7 -0
  18. package/dist/plugin/api.js +7 -0
  19. package/dist/plugin/types.d.ts +12 -0
  20. package/dist/plugins/_shared/credentialAdapter.js +79 -15
  21. package/dist/plugins/_shared/credentials.js +389 -0
  22. package/dist/plugins/_shared/googleAuth.js +9 -40
  23. package/dist/plugins/_shared/googleCredentials.js +28 -7
  24. package/dist/plugins/_shared/microsoftAuth.js +13 -44
  25. package/dist/plugins/_shared/microsoftCredentials.js +30 -8
  26. package/dist/plugins/_shared/provider.js +2 -14
  27. package/dist/plugins/_shared/shiftCloud.js +22 -34
  28. package/dist/plugins/_shared/shiftCredentials.js +83 -0
  29. package/dist/plugins/_shared/shiftUpload.js +1 -1
  30. package/dist/plugins/actionNetwork/src/credentials.js +14 -0
  31. package/dist/plugins/actionNetwork/src/index.js +39 -50
  32. package/dist/plugins/activeCampaign/src/credentials.js +22 -0
  33. package/dist/plugins/activeCampaign/src/index.js +61 -132
  34. package/dist/plugins/adalo/src/credentials.js +16 -0
  35. package/dist/plugins/adalo/src/index.js +19 -43
  36. package/dist/plugins/affinity/src/credentials.js +19 -0
  37. package/dist/plugins/affinity/src/index.js +29 -54
  38. package/dist/plugins/agileCrm/src/credentials.js +16 -0
  39. package/dist/plugins/agileCrm/src/index.js +46 -112
  40. package/dist/plugins/airtable/src/credentials.js +19 -0
  41. package/dist/plugins/airtable/src/index.js +37 -50
  42. package/dist/plugins/airtop/src/credentials.js +20 -0
  43. package/dist/plugins/airtop/src/index.js +51 -75
  44. package/dist/plugins/apiTemplateIo/src/credentials.js +19 -0
  45. package/dist/plugins/apiTemplateIo/src/index.js +14 -31
  46. package/dist/plugins/asana/src/credentials.js +19 -0
  47. package/dist/plugins/asana/src/index.js +51 -72
  48. package/dist/plugins/autopilot/src/credentials.js +19 -0
  49. package/dist/plugins/autopilot/src/index.js +38 -45
  50. package/dist/plugins/bambooHr/src/credentials.js +16 -0
  51. package/dist/plugins/bambooHr/src/index.js +41 -67
  52. package/dist/plugins/bannerbear/src/credentials.js +19 -0
  53. package/dist/plugins/bannerbear/src/index.js +15 -27
  54. package/dist/plugins/baserow/src/credentials.js +17 -0
  55. package/dist/plugins/baserow/src/index.js +23 -49
  56. package/dist/plugins/beeminder/src/credentials.js +19 -0
  57. package/dist/plugins/beeminder/src/index.js +32 -54
  58. package/dist/plugins/bitly/src/credentials.js +19 -0
  59. package/dist/plugins/bitly/src/index.js +12 -26
  60. package/dist/plugins/bitwarden/src/credentials.js +62 -0
  61. package/dist/plugins/bitwarden/src/index.js +34 -80
  62. package/dist/plugins/box/src/credentials.js +19 -0
  63. package/dist/plugins/box/src/index.js +24 -49
  64. package/dist/plugins/brandfetch/src/credentials.js +13 -0
  65. package/dist/plugins/brandfetch/src/index.js +12 -17
  66. package/dist/plugins/brevo/src/credentials.js +19 -0
  67. package/dist/plugins/brevo/src/index.js +30 -51
  68. package/dist/plugins/bubble/src/credentials.js +28 -0
  69. package/dist/plugins/bubble/src/index.js +29 -65
  70. package/dist/plugins/chargebee/src/credentials.js +16 -0
  71. package/dist/plugins/chargebee/src/index.js +15 -45
  72. package/dist/plugins/circleci/src/credentials.js +19 -0
  73. package/dist/plugins/circleci/src/index.js +19 -39
  74. package/dist/plugins/ciscoWebex/src/credentials.js +19 -0
  75. package/dist/plugins/ciscoWebex/src/index.js +43 -61
  76. package/dist/plugins/clearbit/src/credentials.js +22 -0
  77. package/dist/plugins/clearbit/src/index.js +11 -21
  78. package/dist/plugins/clickup/src/credentials.js +19 -0
  79. package/dist/plugins/clickup/src/index.js +85 -117
  80. package/dist/plugins/clockify/src/credentials.js +19 -0
  81. package/dist/plugins/clockify/src/index.js +46 -61
  82. package/dist/plugins/cloudflare/src/credentials.js +19 -0
  83. package/dist/plugins/cloudflare/src/index.js +19 -34
  84. package/dist/plugins/cockpit/src/credentials.js +17 -0
  85. package/dist/plugins/cockpit/src/index.js +18 -31
  86. package/dist/plugins/coda/src/credentials.js +19 -0
  87. package/dist/plugins/coda/src/index.js +33 -50
  88. package/dist/plugins/coingecko/src/credentials.js +20 -0
  89. package/dist/plugins/coingecko/src/index.js +24 -34
  90. package/dist/plugins/contentful/src/credentials.js +26 -0
  91. package/dist/plugins/contentful/src/index.js +19 -40
  92. package/dist/plugins/convertkit/src/credentials.js +26 -0
  93. package/dist/plugins/convertkit/src/index.js +27 -45
  94. package/dist/plugins/copper/src/credentials.js +17 -0
  95. package/dist/plugins/copper/src/index.js +25 -47
  96. package/dist/plugins/cortex/src/credentials.js +28 -0
  97. package/dist/plugins/cortex/src/index.js +26 -49
  98. package/dist/plugins/currents/src/credentials.js +19 -0
  99. package/dist/plugins/currents/src/index.js +46 -59
  100. package/dist/plugins/customerIo/src/credentials.js +52 -0
  101. package/dist/plugins/customerIo/src/index.js +30 -58
  102. package/dist/plugins/databricks/src/credentials.js +13 -0
  103. package/dist/plugins/databricks/src/index.js +51 -103
  104. package/dist/plugins/deepl/src/credentials.js +19 -0
  105. package/dist/plugins/deepl/src/index.js +13 -39
  106. package/dist/plugins/demio/src/credentials.js +26 -0
  107. package/dist/plugins/demio/src/index.js +17 -41
  108. package/dist/plugins/dhl/src/credentials.js +13 -0
  109. package/dist/plugins/dhl/src/index.js +8 -19
  110. package/dist/plugins/discord/src/credentials.js +19 -0
  111. package/dist/plugins/discord/src/index.js +30 -58
  112. package/dist/plugins/discourse/src/credentials.js +18 -0
  113. package/dist/plugins/discourse/src/index.js +36 -53
  114. package/dist/plugins/disqus/src/credentials.js +13 -0
  115. package/dist/plugins/disqus/src/index.js +14 -32
  116. package/dist/plugins/drift/src/credentials.js +13 -0
  117. package/dist/plugins/drift/src/index.js +16 -26
  118. package/dist/plugins/dropbox/src/credentials.js +13 -0
  119. package/dist/plugins/dropbox/src/index.js +23 -30
  120. package/dist/plugins/dropcontact/src/credentials.js +13 -0
  121. package/dist/plugins/dropcontact/src/index.js +13 -18
  122. package/dist/plugins/egoi/src/credentials.js +19 -0
  123. package/dist/plugins/egoi/src/index.js +23 -38
  124. package/dist/plugins/elasticsearch/src/credentials.js +18 -0
  125. package/dist/plugins/elasticsearch/src/index.js +27 -48
  126. package/dist/plugins/elevenlabs/src/credentials.js +30 -0
  127. package/dist/plugins/elevenlabs/src/index.js +4 -1
  128. package/dist/plugins/elevenlabs/src/schemas.js +2 -1
  129. package/dist/plugins/elevenlabs/src/shared.js +74 -35
  130. package/dist/plugins/elevenlabs/src/workflows.js +2 -2
  131. package/dist/plugins/emelia/src/credentials.js +14 -0
  132. package/dist/plugins/emelia/src/index.js +19 -23
  133. package/dist/plugins/erpnext/src/credentials.js +27 -0
  134. package/dist/plugins/erpnext/src/index.js +21 -42
  135. package/dist/plugins/facebookGraph/src/credentials.js +20 -0
  136. package/dist/plugins/facebookGraph/src/index.js +39 -37
  137. package/dist/plugins/fal/src/credentials.js +14 -0
  138. package/dist/plugins/fal/src/index.js +4 -2
  139. package/dist/plugins/fal/src/shared.js +58 -63
  140. package/dist/plugins/freshdesk/src/credentials.js +20 -0
  141. package/dist/plugins/freshdesk/src/index.js +25 -46
  142. package/dist/plugins/freshservice/src/credentials.js +16 -0
  143. package/dist/plugins/freshservice/src/index.js +37 -58
  144. package/dist/plugins/freshworksCrm/src/credentials.js +16 -0
  145. package/dist/plugins/freshworksCrm/src/index.js +20 -39
  146. package/dist/plugins/getresponse/src/credentials.js +22 -0
  147. package/dist/plugins/getresponse/src/index.js +20 -32
  148. package/dist/plugins/gett/src/credentials.js +64 -0
  149. package/dist/plugins/gett/src/index.js +11 -6
  150. package/dist/plugins/gett/src/login.js +24 -0
  151. package/dist/plugins/gett/src/session.js +15 -38
  152. package/dist/plugins/gett/src/shared.js +41 -84
  153. package/dist/plugins/ghost/src/credentials.js +36 -0
  154. package/dist/plugins/ghost/src/index.js +18 -59
  155. package/dist/plugins/github/src/credentials.js +18 -0
  156. package/dist/plugins/github/src/index.js +55 -78
  157. package/dist/plugins/gitlab/src/credentials.js +24 -0
  158. package/dist/plugins/gitlab/src/index.js +29 -48
  159. package/dist/plugins/gmail/src/index.js +26 -24
  160. package/dist/plugins/gong/src/credentials.js +16 -0
  161. package/dist/plugins/gong/src/index.js +16 -32
  162. package/dist/plugins/googleAppsScript/src/index.js +108 -42
  163. package/dist/plugins/googleCalendar/src/index.js +15 -13
  164. package/dist/plugins/googleContacts/src/index.js +12 -9
  165. package/dist/plugins/googleDocs/src/index.js +2 -0
  166. package/dist/plugins/googleDocs/src/shared.js +2 -1
  167. package/dist/plugins/googleDrive/src/index.js +50 -53
  168. package/dist/plugins/googleImage/src/credentials.js +14 -0
  169. package/dist/plugins/googleImage/src/index.js +14 -25
  170. package/dist/plugins/googleSheets/src/index.js +26 -27
  171. package/dist/plugins/googleSlides/src/index.js +6 -4
  172. package/dist/plugins/googleTasks/src/index.js +13 -11
  173. package/dist/plugins/gotify/src/credentials.js +32 -0
  174. package/dist/plugins/gotify/src/index.js +14 -36
  175. package/dist/plugins/gotowebinar/src/credentials.js +13 -0
  176. package/dist/plugins/gotowebinar/src/index.js +52 -69
  177. package/dist/plugins/grafana/src/credentials.js +16 -0
  178. package/dist/plugins/grafana/src/index.js +34 -53
  179. package/dist/plugins/graphql/src/credentials.js +42 -0
  180. package/dist/plugins/graphql/src/index.js +21 -46
  181. package/dist/plugins/grist/src/credentials.js +30 -0
  182. package/dist/plugins/grist/src/index.js +14 -43
  183. package/dist/plugins/halopsa/src/credentials.js +56 -0
  184. package/dist/plugins/halopsa/src/index.js +20 -47
  185. package/dist/plugins/harvest/src/credentials.js +20 -0
  186. package/dist/plugins/harvest/src/index.js +24 -43
  187. package/dist/plugins/helpscout/src/credentials.js +13 -0
  188. package/dist/plugins/helpscout/src/index.js +26 -38
  189. package/dist/plugins/highlevel/src/credentials.js +19 -0
  190. package/dist/plugins/highlevel/src/index.js +34 -63
  191. package/dist/plugins/homeAssistant/src/credentials.js +27 -0
  192. package/dist/plugins/homeAssistant/src/index.js +34 -52
  193. package/dist/plugins/hubspot/src/credentials.js +16 -0
  194. package/dist/plugins/hubspot/src/index.js +29 -41
  195. package/dist/plugins/humanticAi/src/credentials.js +13 -0
  196. package/dist/plugins/humanticAi/src/index.js +15 -22
  197. package/dist/plugins/hunter/src/credentials.js +13 -0
  198. package/dist/plugins/hunter/src/index.js +18 -17
  199. package/dist/plugins/intercom/src/credentials.js +19 -0
  200. package/dist/plugins/intercom/src/index.js +25 -38
  201. package/dist/plugins/iterable/src/credentials.js +17 -0
  202. package/dist/plugins/iterable/src/index.js +26 -40
  203. package/dist/plugins/jenkins/src/credentials.js +16 -0
  204. package/dist/plugins/jenkins/src/index.js +22 -36
  205. package/dist/plugins/jira/src/credentials.js +16 -0
  206. package/dist/plugins/jira/src/index.js +35 -61
  207. package/dist/plugins/keap/src/credentials.js +19 -0
  208. package/dist/plugins/keap/src/index.js +43 -71
  209. package/dist/plugins/kobotoolbox/src/credentials.js +13 -0
  210. package/dist/plugins/kobotoolbox/src/index.js +46 -84
  211. package/dist/plugins/lemlist/src/credentials.js +19 -0
  212. package/dist/plugins/lemlist/src/index.js +35 -47
  213. package/dist/plugins/linear/src/attachments.js +7 -7
  214. package/dist/plugins/linear/src/comments.js +7 -7
  215. package/dist/plugins/linear/src/credentials.js +17 -0
  216. package/dist/plugins/linear/src/cycles.js +5 -5
  217. package/dist/plugins/linear/src/index.js +2 -0
  218. package/dist/plugins/linear/src/initiatives.js +6 -6
  219. package/dist/plugins/linear/src/issues.js +14 -14
  220. package/dist/plugins/linear/src/labels.js +6 -6
  221. package/dist/plugins/linear/src/organization.js +2 -2
  222. package/dist/plugins/linear/src/projects.js +12 -12
  223. package/dist/plugins/linear/src/shared.js +34 -32
  224. package/dist/plugins/linear/src/states.js +3 -3
  225. package/dist/plugins/linear/src/teams.js +4 -4
  226. package/dist/plugins/linear/src/users.js +3 -3
  227. package/dist/plugins/linear/src/views.js +5 -5
  228. package/dist/plugins/linear/src/webhooks.js +5 -5
  229. package/dist/plugins/lingvanex/src/credentials.js +13 -0
  230. package/dist/plugins/lingvanex/src/index.js +7 -9
  231. package/dist/plugins/linkedin/src/credentials.js +17 -0
  232. package/dist/plugins/linkedin/src/index.js +13 -17
  233. package/dist/plugins/lonescale/src/credentials.js +13 -0
  234. package/dist/plugins/lonescale/src/index.js +16 -26
  235. package/dist/plugins/magento/src/credentials.js +16 -0
  236. package/dist/plugins/magento/src/index.js +67 -84
  237. package/dist/plugins/mailcheck/src/credentials.js +17 -0
  238. package/dist/plugins/mailcheck/src/index.js +7 -9
  239. package/dist/plugins/mailchimp/src/credentials.js +32 -0
  240. package/dist/plugins/mailchimp/src/index.js +36 -44
  241. package/dist/plugins/mailerlite/src/credentials.js +13 -0
  242. package/dist/plugins/mailerlite/src/index.js +19 -32
  243. package/dist/plugins/mailgun/src/credentials.js +21 -0
  244. package/dist/plugins/mailgun/src/index.js +15 -21
  245. package/dist/plugins/mailjet/src/credentials.js +38 -0
  246. package/dist/plugins/mailjet/src/index.js +60 -115
  247. package/dist/plugins/mandrill/src/credentials.js +17 -0
  248. package/dist/plugins/mandrill/src/index.js +11 -12
  249. package/dist/plugins/marketstack/src/credentials.js +16 -0
  250. package/dist/plugins/marketstack/src/index.js +18 -28
  251. package/dist/plugins/matrix/src/credentials.js +19 -0
  252. package/dist/plugins/matrix/src/index.js +23 -52
  253. package/dist/plugins/mattermost/src/credentials.js +19 -0
  254. package/dist/plugins/mattermost/src/index.js +41 -73
  255. package/dist/plugins/mautic/src/credentials.js +16 -0
  256. package/dist/plugins/mautic/src/index.js +46 -62
  257. package/dist/plugins/medium/src/credentials.js +20 -0
  258. package/dist/plugins/medium/src/index.js +18 -23
  259. package/dist/plugins/messagebird/src/credentials.js +22 -0
  260. package/dist/plugins/messagebird/src/index.js +13 -18
  261. package/dist/plugins/metabase/src/credentials.js +19 -0
  262. package/dist/plugins/metabase/src/index.js +24 -40
  263. package/dist/plugins/microsoftCalendar/src/index.js +48 -12
  264. package/dist/plugins/microsoftFiles/src/index.js +90 -25
  265. package/dist/plugins/microsoftMail/src/index.js +62 -15
  266. package/dist/plugins/misp/src/credentials.js +16 -0
  267. package/dist/plugins/misp/src/index.js +60 -71
  268. package/dist/plugins/mocean/src/credentials.js +17 -0
  269. package/dist/plugins/mocean/src/index.js +11 -23
  270. package/dist/plugins/monday/src/credentials.js +14 -0
  271. package/dist/plugins/monday/src/index.js +31 -44
  272. package/dist/plugins/monicaCrm/src/credentials.js +19 -0
  273. package/dist/plugins/monicaCrm/src/index.js +25 -42
  274. package/dist/plugins/msg91/src/credentials.js +10 -0
  275. package/dist/plugins/msg91/src/index.js +15 -11
  276. package/dist/plugins/nasa/src/credentials.js +22 -0
  277. package/dist/plugins/nasa/src/index.js +24 -28
  278. package/dist/plugins/netlify/src/credentials.js +19 -0
  279. package/dist/plugins/netlify/src/index.js +27 -51
  280. package/dist/plugins/netscalerAdc/src/credentials.js +18 -0
  281. package/dist/plugins/netscalerAdc/src/index.js +16 -31
  282. package/dist/plugins/nextcloud/src/credentials.js +27 -0
  283. package/dist/plugins/nextcloud/src/index.js +55 -109
  284. package/dist/plugins/nocodb/src/credentials.js +16 -0
  285. package/dist/plugins/nocodb/src/index.js +19 -37
  286. package/dist/plugins/notion/src/credentials.js +21 -0
  287. package/dist/plugins/notion/src/index.js +25 -38
  288. package/dist/plugins/npm/src/credentials.js +19 -0
  289. package/dist/plugins/npm/src/index.js +22 -32
  290. package/dist/plugins/odoo/src/credentials.js +21 -0
  291. package/dist/plugins/odoo/src/index.js +53 -69
  292. package/dist/plugins/okta/src/credentials.js +23 -0
  293. package/dist/plugins/okta/src/index.js +30 -35
  294. package/dist/plugins/oneSimpleApi/src/credentials.js +16 -0
  295. package/dist/plugins/oneSimpleApi/src/index.js +19 -24
  296. package/dist/plugins/onfleet/src/credentials.js +23 -0
  297. package/dist/plugins/onfleet/src/index.js +42 -53
  298. package/dist/plugins/openai/src/credentials.js +13 -0
  299. package/dist/plugins/openai/src/index.js +15 -23
  300. package/dist/plugins/openweathermap/src/credentials.js +16 -0
  301. package/dist/plugins/openweathermap/src/index.js +22 -22
  302. package/dist/plugins/oura/src/credentials.js +19 -0
  303. package/dist/plugins/oura/src/index.js +13 -18
  304. package/dist/plugins/paddle/src/credentials.js +27 -0
  305. package/dist/plugins/paddle/src/index.js +20 -36
  306. package/dist/plugins/pagerduty/src/credentials.js +24 -0
  307. package/dist/plugins/pagerduty/src/index.js +30 -39
  308. package/dist/plugins/parallel/src/credentials.js +18 -0
  309. package/dist/plugins/parallel/src/index.js +16 -22
  310. package/dist/plugins/paypal/src/credentials.js +44 -0
  311. package/dist/plugins/paypal/src/index.js +14 -40
  312. package/dist/plugins/peekalink/src/credentials.js +16 -0
  313. package/dist/plugins/peekalink/src/index.js +10 -11
  314. package/dist/plugins/phantombuster/src/credentials.js +19 -0
  315. package/dist/plugins/phantombuster/src/index.js +19 -32
  316. package/dist/plugins/philipsHue/src/credentials.js +17 -0
  317. package/dist/plugins/philipsHue/src/index.js +15 -27
  318. package/dist/plugins/pipedrive/src/credentials.js +26 -0
  319. package/dist/plugins/pipedrive/src/index.js +43 -73
  320. package/dist/plugins/plaud/src/index.js +2 -1
  321. package/dist/plugins/plaud/src/shared.js +23 -19
  322. package/dist/plugins/plivo/src/credentials.js +20 -0
  323. package/dist/plugins/plivo/src/index.js +13 -19
  324. package/dist/plugins/posthog/src/credentials.js +18 -0
  325. package/dist/plugins/posthog/src/index.js +14 -20
  326. package/dist/plugins/profitwell/src/credentials.js +22 -0
  327. package/dist/plugins/profitwell/src/index.js +10 -17
  328. package/dist/plugins/pushbullet/src/credentials.js +19 -0
  329. package/dist/plugins/pushbullet/src/index.js +19 -27
  330. package/dist/plugins/pushcut/src/credentials.js +19 -0
  331. package/dist/plugins/pushcut/src/index.js +7 -8
  332. package/dist/plugins/pushover/src/credentials.js +14 -0
  333. package/dist/plugins/pushover/src/index.js +7 -12
  334. package/dist/plugins/quickbase/src/credentials.js +15 -0
  335. package/dist/plugins/quickbase/src/index.js +24 -34
  336. package/dist/plugins/quickbooks/src/credentials.js +22 -0
  337. package/dist/plugins/quickbooks/src/index.js +17 -46
  338. package/dist/plugins/raindrop/src/credentials.js +19 -0
  339. package/dist/plugins/raindrop/src/index.js +30 -32
  340. package/dist/plugins/recraft/src/credentials.js +13 -0
  341. package/dist/plugins/recraft/src/index.js +38 -27
  342. package/dist/plugins/reddit/src/credentials.js +26 -0
  343. package/dist/plugins/reddit/src/index.js +30 -34
  344. package/dist/plugins/replicate/src/credentials.js +23 -0
  345. package/dist/plugins/replicate/src/index.js +17 -27
  346. package/dist/plugins/rocketchat/src/credentials.js +17 -0
  347. package/dist/plugins/rocketchat/src/index.js +8 -19
  348. package/dist/plugins/rundeck/src/credentials.js +16 -0
  349. package/dist/plugins/rundeck/src/index.js +12 -28
  350. package/dist/plugins/salesforce/src/credentials.js +73 -0
  351. package/dist/plugins/salesforce/src/index.js +6 -0
  352. package/dist/plugins/salesforce/src/metadata.js +3 -16
  353. package/dist/plugins/salesforce/src/shared.js +25 -100
  354. package/dist/plugins/salesforce/src/sobjects.js +10 -9
  355. package/dist/plugins/salesmate/src/credentials.js +17 -0
  356. package/dist/plugins/salesmate/src/index.js +20 -37
  357. package/dist/plugins/securityScorecard/src/credentials.js +22 -0
  358. package/dist/plugins/securityScorecard/src/index.js +24 -37
  359. package/dist/plugins/segment/src/credentials.js +16 -0
  360. package/dist/plugins/segment/src/index.js +12 -16
  361. package/dist/plugins/sendgrid/src/credentials.js +13 -0
  362. package/dist/plugins/sendgrid/src/index.js +31 -35
  363. package/dist/plugins/sendy/src/credentials.js +18 -0
  364. package/dist/plugins/sendy/src/index.js +18 -24
  365. package/dist/plugins/sentry/src/credentials.js +16 -0
  366. package/dist/plugins/sentry/src/index.js +30 -98
  367. package/dist/plugins/servicenow/src/credentials.js +13 -0
  368. package/dist/plugins/servicenow/src/index.js +22 -41
  369. package/dist/plugins/shiftAtlas/src/graph.js +2 -2
  370. package/dist/plugins/shiftAtlas/src/index.js +2 -0
  371. package/dist/plugins/shiftAtlas/src/shared.js +3 -1
  372. package/dist/plugins/shiftBwm/src/collections.js +201 -0
  373. package/dist/plugins/shiftBwm/src/index.js +35 -0
  374. package/dist/plugins/shiftBwm/src/records.js +180 -0
  375. package/dist/plugins/shiftBwm/src/shared.js +168 -0
  376. package/dist/plugins/shiftBwm/src/vendor/client.js +227 -0
  377. package/dist/plugins/shiftBwm/src/vendor/contracts.js +59 -0
  378. package/dist/plugins/shiftBwm/src/vendor/models.js +525 -0
  379. package/dist/plugins/shiftCrm/src/access.js +2 -2
  380. package/dist/plugins/shiftCrm/src/accounts.js +3 -3
  381. package/dist/plugins/shiftCrm/src/activities.js +3 -3
  382. package/dist/plugins/shiftCrm/src/credentials.js +6 -0
  383. package/dist/plugins/shiftCrm/src/index.js +2 -0
  384. package/dist/plugins/shiftCrm/src/opportunities.js +3 -3
  385. package/dist/plugins/shiftCrm/src/people.js +3 -3
  386. package/dist/plugins/shiftCrm/src/records.js +2 -2
  387. package/dist/plugins/shiftCrm/src/shared.js +2 -1
  388. package/dist/plugins/shiftCrm/src/tasks.js +3 -3
  389. package/dist/plugins/shiftObjects/src/credentials.js +2 -0
  390. package/dist/plugins/shiftObjects/src/index.js +2 -0
  391. package/dist/plugins/shiftObjects/src/objects.js +3 -3
  392. package/dist/plugins/shiftOcr/src/credentials.js +8 -0
  393. package/dist/plugins/shiftOcr/src/index.js +5 -2
  394. package/dist/plugins/shiftPages/src/index.js +2 -0
  395. package/dist/plugins/shiftPages/src/pages.js +5 -3
  396. package/dist/plugins/shiftPages/src/shared.js +3 -1
  397. package/dist/plugins/shiftTranscription/src/index.js +2 -0
  398. package/dist/plugins/shiftTranscription/src/shared.js +11 -1
  399. package/dist/plugins/shiftTranscription/src/transcription.js +3 -2
  400. package/dist/plugins/shiftWork/src/index.js +2 -0
  401. package/dist/plugins/shiftWork/src/issue-views.js +5 -5
  402. package/dist/plugins/shiftWork/src/issues.js +11 -7
  403. package/dist/plugins/shiftWork/src/projects.js +3 -3
  404. package/dist/plugins/shiftWork/src/shared.js +3 -1
  405. package/dist/plugins/shopify/src/credentials.js +16 -0
  406. package/dist/plugins/shopify/src/index.js +32 -59
  407. package/dist/plugins/signl4/src/credentials.js +17 -0
  408. package/dist/plugins/signl4/src/index.js +28 -29
  409. package/dist/plugins/slack/src/credentials.js +19 -0
  410. package/dist/plugins/slack/src/index.js +51 -60
  411. package/dist/plugins/sms77/src/credentials.js +17 -0
  412. package/dist/plugins/sms77/src/index.js +11 -16
  413. package/dist/plugins/splunk/src/credentials.js +19 -0
  414. package/dist/plugins/splunk/src/index.js +32 -74
  415. package/dist/plugins/spotify/src/credentials.js +19 -0
  416. package/dist/plugins/spotify/src/index.js +40 -55
  417. package/dist/plugins/stackby/src/credentials.js +13 -0
  418. package/dist/plugins/stackby/src/index.js +14 -23
  419. package/dist/plugins/steel/src/auth.js +27 -0
  420. package/dist/plugins/steel/src/browser.js +4 -3
  421. package/dist/plugins/steel/src/captchas.js +4 -3
  422. package/dist/plugins/steel/src/extensions.js +3 -2
  423. package/dist/plugins/steel/src/files.js +9 -10
  424. package/dist/plugins/steel/src/index.js +2 -0
  425. package/dist/plugins/steel/src/page/tools.js +3 -3
  426. package/dist/plugins/steel/src/profiles.js +4 -3
  427. package/dist/plugins/steel/src/sessions.js +13 -13
  428. package/dist/plugins/steel/src/shared.js +21 -51
  429. package/dist/plugins/storyblok/src/credentials.js +37 -0
  430. package/dist/plugins/storyblok/src/index.js +22 -66
  431. package/dist/plugins/strapi/src/credentials.js +71 -0
  432. package/dist/plugins/strapi/src/index.js +36 -70
  433. package/dist/plugins/strava/src/credentials.js +19 -0
  434. package/dist/plugins/strava/src/index.js +16 -33
  435. package/dist/plugins/stripe/src/credentials.js +19 -0
  436. package/dist/plugins/stripe/src/index.js +44 -58
  437. package/dist/plugins/supabase/src/credentials.js +30 -0
  438. package/dist/plugins/supabase/src/index.js +18 -40
  439. package/dist/plugins/syncromsp/src/credentials.js +16 -0
  440. package/dist/plugins/syncromsp/src/index.js +37 -70
  441. package/dist/plugins/tapfiliate/src/credentials.js +13 -0
  442. package/dist/plugins/tapfiliate/src/index.js +21 -31
  443. package/dist/plugins/telegram/src/credentials.js +20 -0
  444. package/dist/plugins/telegram/src/index.js +31 -39
  445. package/dist/plugins/thehive/src/credentials.js +14 -0
  446. package/dist/plugins/thehive/src/index.js +33 -50
  447. package/dist/plugins/thehiveProject/src/credentials.js +16 -0
  448. package/dist/plugins/thehiveProject/src/index.js +53 -122
  449. package/dist/plugins/todoist/src/credentials.js +26 -0
  450. package/dist/plugins/todoist/src/index.js +49 -79
  451. package/dist/plugins/together/src/credentials.js +16 -0
  452. package/dist/plugins/together/src/index.js +30 -32
  453. package/dist/plugins/travisci/src/credentials.js +24 -0
  454. package/dist/plugins/travisci/src/index.js +16 -30
  455. package/dist/plugins/trello/src/credentials.js +29 -0
  456. package/dist/plugins/trello/src/index.js +49 -64
  457. package/dist/plugins/twake/src/credentials.js +16 -0
  458. package/dist/plugins/twake/src/index.js +8 -10
  459. package/dist/plugins/twilio/src/credentials.js +23 -0
  460. package/dist/plugins/twilio/src/index.js +12 -26
  461. package/dist/plugins/twist/src/credentials.js +13 -0
  462. package/dist/plugins/twist/src/index.js +32 -44
  463. package/dist/plugins/twitter/src/credentials.js +16 -0
  464. package/dist/plugins/twitter/src/index.js +25 -37
  465. package/dist/plugins/typesafe/src/credentials.js +28 -0
  466. package/dist/plugins/typesafe/src/index.js +3 -1
  467. package/dist/plugins/typesafe/src/shared.js +23 -35
  468. package/dist/plugins/unleashedSoftware/src/credentials.js +21 -0
  469. package/dist/plugins/unleashedSoftware/src/index.js +13 -37
  470. package/dist/plugins/uplead/src/credentials.js +16 -0
  471. package/dist/plugins/uplead/src/index.js +11 -16
  472. package/dist/plugins/uproc/src/credentials.js +14 -0
  473. package/dist/plugins/uproc/src/index.js +7 -10
  474. package/dist/plugins/uptimerobot/src/credentials.js +14 -0
  475. package/dist/plugins/uptimerobot/src/index.js +28 -39
  476. package/dist/plugins/urlscanio/src/credentials.js +13 -0
  477. package/dist/plugins/urlscanio/src/index.js +13 -22
  478. package/dist/plugins/vercel/src/credentials.js +19 -0
  479. package/dist/plugins/vercel/src/deployments.js +27 -11
  480. package/dist/plugins/vercel/src/env.js +31 -12
  481. package/dist/plugins/vercel/src/index.js +2 -0
  482. package/dist/plugins/vercel/src/projects.js +6 -3
  483. package/dist/plugins/vercel/src/shared.js +32 -37
  484. package/dist/plugins/vero/src/credentials.js +17 -0
  485. package/dist/plugins/vero/src/index.js +18 -21
  486. package/dist/plugins/vonage/src/credentials.js +17 -0
  487. package/dist/plugins/vonage/src/index.js +14 -18
  488. package/dist/plugins/wekan/src/credentials.js +16 -0
  489. package/dist/plugins/wekan/src/index.js +33 -46
  490. package/dist/plugins/wolt/src/account.js +6 -0
  491. package/dist/plugins/wolt/src/catalog.js +2 -2
  492. package/dist/plugins/wolt/src/credentials.js +64 -0
  493. package/dist/plugins/wolt/src/index.js +8 -3
  494. package/dist/plugins/wolt/src/orders.js +2 -2
  495. package/dist/plugins/wolt/src/public.js +91 -0
  496. package/dist/plugins/wolt/src/shared.js +49 -158
  497. package/dist/plugins/woocommerce/src/credentials.js +16 -0
  498. package/dist/plugins/woocommerce/src/index.js +19 -37
  499. package/dist/plugins/wordpress/src/credentials.js +16 -0
  500. package/dist/plugins/wordpress/src/index.js +23 -42
  501. package/dist/plugins/xai/src/credentials.js +13 -0
  502. package/dist/plugins/xai/src/index.js +31 -30
  503. package/dist/plugins/xero/src/credentials.js +17 -0
  504. package/dist/plugins/xero/src/index.js +19 -36
  505. package/dist/plugins/yourls/src/credentials.js +17 -0
  506. package/dist/plugins/yourls/src/index.js +13 -23
  507. package/dist/plugins/zammad/src/credentials.js +15 -0
  508. package/dist/plugins/zammad/src/index.js +27 -47
  509. package/dist/plugins/zendesk/src/credentials.js +26 -0
  510. package/dist/plugins/zendesk/src/index.js +29 -48
  511. package/dist/plugins/zoho/src/credentials.js +17 -0
  512. package/dist/plugins/zoho/src/index.js +18 -38
  513. package/dist/plugins/zoom/src/credentials.js +19 -0
  514. package/dist/plugins/zoom/src/index.js +15 -30
  515. package/dist/plugins/zulip/src/credentials.js +16 -0
  516. package/dist/plugins/zulip/src/index.js +36 -42
  517. package/dist/sdk.d.ts +8 -0
  518. package/dist/sdk.js +3 -0
  519. package/package.json +3 -2
  520. package/dist/plugins/_shared/authedFetch.js +0 -33
  521. package/dist/plugins/_shared/tokenRefresh.js +0 -41
@@ -1,27 +1,19 @@
1
- function getConn(ctx) {
2
- const c = ctx.connection.config;
3
- const baseUrl = (c.baseUrl || "https://api.telegram.org").replace(/\/$/, "");
4
- return { baseUrl, token: c.accessToken };
5
- }
6
- async function apiRequest(conn, method, endpoint, body) {
7
- const url = `${conn.baseUrl}/bot${conn.token}/${endpoint}`;
8
- const init = {
9
- method,
10
- headers: { "Content-Type": "application/json" },
11
- };
12
- if (body && Object.keys(body).length > 0)
13
- init.body = JSON.stringify(body);
14
- const res = await fetch(url, init);
15
- if (!res.ok)
16
- throw new Error(`Telegram error ${res.status}: ${await res.text()}`);
17
- const data = (await res.json());
1
+ import { answerFailed, credentialJson } from "../../_shared/credentials.js";
2
+ import { telegramCredential } from "./credentials.js";
3
+ /** A call to the Bot API method `name`; an answer that is not ok is a failure. */
4
+ async function apiRequest(ctx, name, body = {}) {
5
+ const data = await credentialJson(ctx, telegramCredential, "telegram", { target: "api", path: name, method: "POST", json: body });
18
6
  if (!data.ok)
19
- throw new Error(`Telegram API error: ${JSON.stringify(data)}`);
7
+ throw answerFailed("telegram", {
8
+ code: data.error_code,
9
+ message: data.description,
10
+ });
20
11
  return data.result;
21
12
  }
22
13
  export default function telegram(rl) {
23
14
  rl.setName("telegram");
24
15
  rl.setVersion("0.1.0");
16
+ rl.setCredential(telegramCredential);
25
17
  rl.setConnectionSchema({
26
18
  accessToken: {
27
19
  type: "string",
@@ -63,7 +55,7 @@ export default function telegram(rl) {
63
55
  body.disable_notification = true;
64
56
  if (p.replyToMessageId)
65
57
  body.reply_to_message_id = p.replyToMessageId;
66
- return apiRequest(getConn(ctx), "POST", "sendMessage", body);
58
+ return apiRequest(ctx, "sendMessage", body);
67
59
  },
68
60
  });
69
61
  rl.registerAction("message.edit", {
@@ -84,7 +76,7 @@ export default function telegram(rl) {
84
76
  };
85
77
  if (p.parseMode)
86
78
  body.parse_mode = p.parseMode;
87
- return apiRequest(getConn(ctx), "POST", "editMessageText", body);
79
+ return apiRequest(ctx, "editMessageText", body);
88
80
  },
89
81
  });
90
82
  rl.registerAction("message.delete", {
@@ -96,7 +88,7 @@ export default function telegram(rl) {
96
88
  },
97
89
  async execute(input, ctx) {
98
90
  const p = input;
99
- return apiRequest(getConn(ctx), "POST", "deleteMessage", {
91
+ return apiRequest(ctx, "deleteMessage", {
100
92
  chat_id: p.chatId,
101
93
  message_id: p.messageId,
102
94
  });
@@ -118,7 +110,7 @@ export default function telegram(rl) {
118
110
  };
119
111
  if (p.disableNotification)
120
112
  body.disable_notification = true;
121
- return apiRequest(getConn(ctx), "POST", "pinChatMessage", body);
113
+ return apiRequest(ctx, "pinChatMessage", body);
122
114
  },
123
115
  });
124
116
  rl.registerAction("message.unpin", {
@@ -130,7 +122,7 @@ export default function telegram(rl) {
130
122
  },
131
123
  async execute(input, ctx) {
132
124
  const p = input;
133
- return apiRequest(getConn(ctx), "POST", "unpinChatMessage", {
125
+ return apiRequest(ctx, "unpinChatMessage", {
134
126
  chat_id: p.chatId,
135
127
  message_id: p.messageId,
136
128
  });
@@ -146,7 +138,7 @@ export default function telegram(rl) {
146
138
  },
147
139
  async execute(input, ctx) {
148
140
  const p = input;
149
- return apiRequest(getConn(ctx), "POST", "sendLocation", {
141
+ return apiRequest(ctx, "sendLocation", {
150
142
  chat_id: p.chatId,
151
143
  latitude: p.latitude,
152
144
  longitude: p.longitude,
@@ -166,7 +158,7 @@ export default function telegram(rl) {
166
158
  },
167
159
  async execute(input, ctx) {
168
160
  const p = input;
169
- return apiRequest(getConn(ctx), "POST", "sendChatAction", {
161
+ return apiRequest(ctx, "sendChatAction", {
170
162
  chat_id: p.chatId,
171
163
  action: p.action,
172
164
  });
@@ -192,7 +184,7 @@ export default function telegram(rl) {
192
184
  };
193
185
  if (p.caption)
194
186
  body.caption = p.caption;
195
- return apiRequest(getConn(ctx), "POST", "sendPhoto", body);
187
+ return apiRequest(ctx, "sendPhoto", body);
196
188
  },
197
189
  });
198
190
  rl.registerAction("message.sendDocument", {
@@ -215,7 +207,7 @@ export default function telegram(rl) {
215
207
  };
216
208
  if (p.caption)
217
209
  body.caption = p.caption;
218
- return apiRequest(getConn(ctx), "POST", "sendDocument", body);
210
+ return apiRequest(ctx, "sendDocument", body);
219
211
  },
220
212
  });
221
213
  rl.registerAction("message.sendVideo", {
@@ -238,7 +230,7 @@ export default function telegram(rl) {
238
230
  };
239
231
  if (p.caption)
240
232
  body.caption = p.caption;
241
- return apiRequest(getConn(ctx), "POST", "sendVideo", body);
233
+ return apiRequest(ctx, "sendVideo", body);
242
234
  },
243
235
  });
244
236
  rl.registerAction("message.sendSticker", {
@@ -254,7 +246,7 @@ export default function telegram(rl) {
254
246
  },
255
247
  async execute(input, ctx) {
256
248
  const p = input;
257
- return apiRequest(getConn(ctx), "POST", "sendSticker", {
249
+ return apiRequest(ctx, "sendSticker", {
258
250
  chat_id: p.chatId,
259
251
  sticker: p.sticker,
260
252
  });
@@ -280,7 +272,7 @@ export default function telegram(rl) {
280
272
  };
281
273
  if (p.caption)
282
274
  body.caption = p.caption;
283
- return apiRequest(getConn(ctx), "POST", "sendAnimation", body);
275
+ return apiRequest(ctx, "sendAnimation", body);
284
276
  },
285
277
  });
286
278
  rl.registerAction("message.sendAudio", {
@@ -303,7 +295,7 @@ export default function telegram(rl) {
303
295
  };
304
296
  if (p.caption)
305
297
  body.caption = p.caption;
306
- return apiRequest(getConn(ctx), "POST", "sendAudio", body);
298
+ return apiRequest(ctx, "sendAudio", body);
307
299
  },
308
300
  });
309
301
  // ── Chat ────────────────────────────────────────────
@@ -312,7 +304,7 @@ export default function telegram(rl) {
312
304
  description: "Get chat info",
313
305
  inputSchema: { chatId: { type: "string", required: true } },
314
306
  async execute(input, ctx) {
315
- return apiRequest(getConn(ctx), "POST", "getChat", {
307
+ return apiRequest(ctx, "getChat", {
316
308
  chat_id: input.chatId,
317
309
  });
318
310
  },
@@ -322,7 +314,7 @@ export default function telegram(rl) {
322
314
  description: "Get chat administrators",
323
315
  inputSchema: { chatId: { type: "string", required: true } },
324
316
  async execute(input, ctx) {
325
- return apiRequest(getConn(ctx), "POST", "getChatAdministrators", {
317
+ return apiRequest(ctx, "getChatAdministrators", {
326
318
  chat_id: input.chatId,
327
319
  });
328
320
  },
@@ -336,7 +328,7 @@ export default function telegram(rl) {
336
328
  },
337
329
  async execute(input, ctx) {
338
330
  const p = input;
339
- return apiRequest(getConn(ctx), "POST", "getChatMember", {
331
+ return apiRequest(ctx, "getChatMember", {
340
332
  chat_id: p.chatId,
341
333
  user_id: p.userId,
342
334
  });
@@ -347,7 +339,7 @@ export default function telegram(rl) {
347
339
  description: "Leave a chat",
348
340
  inputSchema: { chatId: { type: "string", required: true } },
349
341
  async execute(input, ctx) {
350
- return apiRequest(getConn(ctx), "POST", "leaveChat", {
342
+ return apiRequest(ctx, "leaveChat", {
351
343
  chat_id: input.chatId,
352
344
  });
353
345
  },
@@ -361,7 +353,7 @@ export default function telegram(rl) {
361
353
  },
362
354
  async execute(input, ctx) {
363
355
  const p = input;
364
- return apiRequest(getConn(ctx), "POST", "setChatDescription", {
356
+ return apiRequest(ctx, "setChatDescription", {
365
357
  chat_id: p.chatId,
366
358
  description: p.description,
367
359
  });
@@ -376,7 +368,7 @@ export default function telegram(rl) {
376
368
  },
377
369
  async execute(input, ctx) {
378
370
  const p = input;
379
- return apiRequest(getConn(ctx), "POST", "setChatTitle", {
371
+ return apiRequest(ctx, "setChatTitle", {
380
372
  chat_id: p.chatId,
381
373
  title: p.title,
382
374
  });
@@ -400,7 +392,7 @@ export default function telegram(rl) {
400
392
  body.text = p.text;
401
393
  if (p.showAlert)
402
394
  body.show_alert = true;
403
- return apiRequest(getConn(ctx), "POST", "answerCallbackQuery", body);
395
+ return apiRequest(ctx, "answerCallbackQuery", body);
404
396
  },
405
397
  });
406
398
  // ── File ────────────────────────────────────────────
@@ -409,7 +401,7 @@ export default function telegram(rl) {
409
401
  description: "Get file metadata (use result.file_path to download)",
410
402
  inputSchema: { fileId: { type: "string", required: true } },
411
403
  async execute(input, ctx) {
412
- return apiRequest(getConn(ctx), "POST", "getFile", {
404
+ return apiRequest(ctx, "getFile", {
413
405
  file_id: input.fileId,
414
406
  });
415
407
  },
@@ -0,0 +1,14 @@
1
+ import { httpsBase, staticCredential } from "../../_shared/credentials.js";
2
+ /** An API key, sent as a bearer to the connection's own TheHive instance
3
+ * beneath /api/. The instance URL is public config and must be HTTPS. */
4
+ export const thehiveCredential = staticCredential({
5
+ id: "thehive",
6
+ auth: { kind: "bearer" },
7
+ local: { secret: "apiKey" },
8
+ targets: (config) => ({
9
+ api: {
10
+ baseUrl: httpsBase(config.url, "api/"),
11
+ methods: ["GET", "POST", "PATCH"],
12
+ },
13
+ }),
14
+ });
@@ -1,35 +1,18 @@
1
- function getConn(ctx) {
2
- const c = ctx.connection.config;
3
- return {
4
- url: c.url.replace(/\/$/, ""),
5
- apiKey: c.apiKey,
6
- };
7
- }
8
- async function api(conn, method, endpoint, body, qs) {
9
- const url = new URL(`${conn.url}/api${endpoint}`);
10
- if (qs) {
11
- for (const [k, v] of Object.entries(qs)) {
12
- if (v !== undefined && v !== null)
13
- url.searchParams.set(k, String(v));
14
- }
15
- }
16
- const init = {
1
+ import { credentialJson, pathSegment } from "../../_shared/credentials.js";
2
+ import { thehiveCredential } from "./credentials.js";
3
+ async function api(ctx, method, endpoint, body, qs) {
4
+ return credentialJson(ctx, thehiveCredential, "thehive", {
5
+ target: "api",
6
+ path: endpoint,
17
7
  method,
18
- headers: {
19
- Authorization: `Bearer ${conn.apiKey}`,
20
- "Content-Type": "application/json",
21
- },
22
- };
23
- if (body && Object.keys(body).length > 0)
24
- init.body = JSON.stringify(body);
25
- const res = await fetch(url.toString(), init);
26
- if (!res.ok)
27
- throw new Error(`TheHive error ${res.status}: ${await res.text()}`);
28
- return res.json();
8
+ query: qs,
9
+ ...(body && Object.keys(body).length > 0 ? { json: body } : {}),
10
+ });
29
11
  }
30
12
  export default function thehive(rl) {
31
13
  rl.setName("thehive");
32
14
  rl.setVersion("0.1.0");
15
+ rl.setCredential(thehiveCredential);
33
16
  rl.setConnectionSchema({
34
17
  url: {
35
18
  type: "string",
@@ -63,7 +46,7 @@ export default function thehive(rl) {
63
46
  const body = { ...p, date: Date.now() };
64
47
  if (p.tags)
65
48
  body.tags = p.tags.split(",").map((t) => t.trim());
66
- return api(getConn(ctx), "POST", "/alert", body);
49
+ return api(ctx, "POST", "alert", body);
67
50
  },
68
51
  });
69
52
  rl.registerAction("alert.get", {
@@ -71,7 +54,7 @@ export default function thehive(rl) {
71
54
  description: "Get an alert by ID",
72
55
  inputSchema: { id: { type: "string", required: true } },
73
56
  async execute(input, ctx) {
74
- return api(getConn(ctx), "GET", `/alert/${input.id}`);
57
+ return api(ctx, "GET", `alert/${pathSegment(input.id)}`);
75
58
  },
76
59
  });
77
60
  rl.registerAction("alert.list", {
@@ -83,7 +66,7 @@ export default function thehive(rl) {
83
66
  const body = { query: [{ _name: "listAlert" }] };
84
67
  if (p.limit)
85
68
  body.query.push({ _name: "page", from: 0, to: p.limit });
86
- return api(getConn(ctx), "POST", "/v1/query", body, { name: "alerts" });
69
+ return api(ctx, "POST", "v1/query", body, { name: "alerts" });
87
70
  },
88
71
  });
89
72
  rl.registerAction("alert.update", {
@@ -95,7 +78,7 @@ export default function thehive(rl) {
95
78
  },
96
79
  async execute(input, ctx) {
97
80
  const p = input;
98
- return api(getConn(ctx), "PATCH", `/alert/${p.id}`, p.data);
81
+ return api(ctx, "PATCH", `alert/${pathSegment(p.id)}`, p.data);
99
82
  },
100
83
  });
101
84
  rl.registerAction("alert.markAsRead", {
@@ -103,7 +86,7 @@ export default function thehive(rl) {
103
86
  description: "Mark an alert as read",
104
87
  inputSchema: { id: { type: "string", required: true } },
105
88
  async execute(input, ctx) {
106
- return api(getConn(ctx), "POST", `/alert/${input.id}/markAsRead`);
89
+ return api(ctx, "POST", `alert/${pathSegment(input.id)}/markAsRead`);
107
90
  },
108
91
  });
109
92
  rl.registerAction("alert.markAsUnread", {
@@ -111,7 +94,7 @@ export default function thehive(rl) {
111
94
  description: "Mark an alert as unread",
112
95
  inputSchema: { id: { type: "string", required: true } },
113
96
  async execute(input, ctx) {
114
- return api(getConn(ctx), "POST", `/alert/${input.id}/markAsUnread`);
97
+ return api(ctx, "POST", `alert/${pathSegment(input.id)}/markAsUnread`);
115
98
  },
116
99
  });
117
100
  rl.registerAction("alert.promote", {
@@ -119,7 +102,7 @@ export default function thehive(rl) {
119
102
  description: "Promote an alert to a case",
120
103
  inputSchema: { id: { type: "string", required: true } },
121
104
  async execute(input, ctx) {
122
- return api(getConn(ctx), "POST", `/alert/${input.id}/createCase`);
105
+ return api(ctx, "POST", `alert/${pathSegment(input.id)}/createCase`);
123
106
  },
124
107
  });
125
108
  rl.registerAction("alert.merge", {
@@ -131,7 +114,7 @@ export default function thehive(rl) {
131
114
  },
132
115
  async execute(input, ctx) {
133
116
  const p = input;
134
- return api(getConn(ctx), "POST", `/alert/${p.alertId}/merge/${p.caseId}`);
117
+ return api(ctx, "POST", `alert/${pathSegment(p.alertId)}/merge/${pathSegment(p.caseId)}`);
135
118
  },
136
119
  });
137
120
  // ── Case ────────────────────────────────────────────
@@ -151,7 +134,7 @@ export default function thehive(rl) {
151
134
  const body = { ...p, startDate: Date.now() };
152
135
  if (p.tags)
153
136
  body.tags = p.tags.split(",").map((t) => t.trim());
154
- return api(getConn(ctx), "POST", "/case", body);
137
+ return api(ctx, "POST", "case", body);
155
138
  },
156
139
  });
157
140
  rl.registerAction("case.get", {
@@ -159,7 +142,7 @@ export default function thehive(rl) {
159
142
  description: "Get a case",
160
143
  inputSchema: { id: { type: "string", required: true } },
161
144
  async execute(input, ctx) {
162
- return api(getConn(ctx), "GET", `/case/${input.id}`);
145
+ return api(ctx, "GET", `case/${pathSegment(input.id)}`);
163
146
  },
164
147
  });
165
148
  rl.registerAction("case.list", {
@@ -171,7 +154,7 @@ export default function thehive(rl) {
171
154
  const body = { query: [{ _name: "listCase" }] };
172
155
  if (p.limit)
173
156
  body.query.push({ _name: "page", from: 0, to: p.limit });
174
- return api(getConn(ctx), "POST", "/v1/query", body, { name: "cases" });
157
+ return api(ctx, "POST", "v1/query", body, { name: "cases" });
175
158
  },
176
159
  });
177
160
  rl.registerAction("case.update", {
@@ -183,7 +166,7 @@ export default function thehive(rl) {
183
166
  },
184
167
  async execute(input, ctx) {
185
168
  const p = input;
186
- return api(getConn(ctx), "PATCH", `/case/${p.id}`, p.data);
169
+ return api(ctx, "PATCH", `case/${pathSegment(p.id)}`, p.data);
187
170
  },
188
171
  });
189
172
  // ── Observable ──────────────────────────────────────
@@ -201,7 +184,7 @@ export default function thehive(rl) {
201
184
  },
202
185
  async execute(input, ctx) {
203
186
  const { caseId, ...body } = input;
204
- return api(getConn(ctx), "POST", `/case/${caseId}/artifact`, body);
187
+ return api(ctx, "POST", `case/${pathSegment(caseId)}/artifact`, body);
205
188
  },
206
189
  });
207
190
  rl.registerAction("observable.get", {
@@ -209,7 +192,7 @@ export default function thehive(rl) {
209
192
  description: "Get an observable",
210
193
  inputSchema: { id: { type: "string", required: true } },
211
194
  async execute(input, ctx) {
212
- return api(getConn(ctx), "POST", "/v1/query", {
195
+ return api(ctx, "POST", "v1/query", {
213
196
  query: [
214
197
  {
215
198
  _name: "getObservable",
@@ -236,7 +219,7 @@ export default function thehive(rl) {
236
219
  };
237
220
  if (p.limit)
238
221
  body.query.push({ _name: "page", from: 0, to: p.limit });
239
- return api(getConn(ctx), "POST", "/v1/query", body, {
222
+ return api(ctx, "POST", "v1/query", body, {
240
223
  name: "observables",
241
224
  });
242
225
  },
@@ -250,7 +233,7 @@ export default function thehive(rl) {
250
233
  },
251
234
  async execute(input, ctx) {
252
235
  const p = input;
253
- return api(getConn(ctx), "PATCH", `/case/artifact/${p.id}`, p.data);
236
+ return api(ctx, "PATCH", `case/artifact/${pathSegment(p.id)}`, p.data);
254
237
  },
255
238
  });
256
239
  // ── Task ────────────────────────────────────────────
@@ -269,7 +252,7 @@ export default function thehive(rl) {
269
252
  },
270
253
  async execute(input, ctx) {
271
254
  const { caseId, ...body } = input;
272
- return api(getConn(ctx), "POST", `/case/${caseId}/task`, body);
255
+ return api(ctx, "POST", `case/${pathSegment(caseId)}/task`, body);
273
256
  },
274
257
  });
275
258
  rl.registerAction("task.get", {
@@ -277,7 +260,7 @@ export default function thehive(rl) {
277
260
  description: "Get a task",
278
261
  inputSchema: { id: { type: "string", required: true } },
279
262
  async execute(input, ctx) {
280
- return api(getConn(ctx), "POST", "/v1/query", {
263
+ return api(ctx, "POST", "v1/query", {
281
264
  query: [
282
265
  {
283
266
  _name: "getTask",
@@ -301,7 +284,7 @@ export default function thehive(rl) {
301
284
  };
302
285
  if (p.limit)
303
286
  body.query.push({ _name: "page", from: 0, to: p.limit });
304
- return api(getConn(ctx), "POST", "/v1/query", body, {
287
+ return api(ctx, "POST", "v1/query", body, {
305
288
  name: "case-tasks",
306
289
  });
307
290
  },
@@ -315,7 +298,7 @@ export default function thehive(rl) {
315
298
  },
316
299
  async execute(input, ctx) {
317
300
  const p = input;
318
- return api(getConn(ctx), "PATCH", `/case/task/${p.id}`, p.data);
301
+ return api(ctx, "PATCH", `case/task/${pathSegment(p.id)}`, p.data);
319
302
  },
320
303
  });
321
304
  // ── Log ─────────────────────────────────────────────
@@ -330,7 +313,7 @@ export default function thehive(rl) {
330
313
  async execute(input, ctx) {
331
314
  const { taskId, ...body } = input;
332
315
  body.startDate = Date.now();
333
- return api(getConn(ctx), "POST", `/case/task/${taskId}/log`, body);
316
+ return api(ctx, "POST", `case/task/${pathSegment(taskId)}/log`, body);
334
317
  },
335
318
  });
336
319
  rl.registerAction("log.get", {
@@ -338,7 +321,7 @@ export default function thehive(rl) {
338
321
  description: "Get a log entry",
339
322
  inputSchema: { id: { type: "string", required: true } },
340
323
  async execute(input, ctx) {
341
- return api(getConn(ctx), "POST", "/v1/query", {
324
+ return api(ctx, "POST", "v1/query", {
342
325
  query: [
343
326
  {
344
327
  _name: "getLog",
@@ -362,7 +345,7 @@ export default function thehive(rl) {
362
345
  };
363
346
  if (p.limit)
364
347
  body.query.push({ _name: "page", from: 0, to: p.limit });
365
- return api(getConn(ctx), "POST", "/v1/query", body, {
348
+ return api(ctx, "POST", "v1/query", body, {
366
349
  name: "case-task-logs",
367
350
  });
368
351
  },
@@ -0,0 +1,16 @@
1
+ import { httpsBase, staticCredential } from "../../_shared/credentials.js";
2
+ /**
3
+ * An API key, sent as a bearer to the connection's own TheHive instance
4
+ * beneath /api/. The instance URL is public config and must be HTTPS.
5
+ */
6
+ export const thehiveProjectCredential = staticCredential({
7
+ id: "thehiveProject",
8
+ auth: { kind: "bearer" },
9
+ local: { secret: "apiKey" },
10
+ targets: (config) => ({
11
+ api: {
12
+ baseUrl: httpsBase(config.url, "api/"),
13
+ methods: ["GET", "POST", "PATCH", "DELETE"],
14
+ },
15
+ }),
16
+ });