runline 0.33.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 (515) 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 +19 -55
  28. package/dist/plugins/_shared/shiftCredentials.js +83 -0
  29. package/dist/plugins/actionNetwork/src/credentials.js +14 -0
  30. package/dist/plugins/actionNetwork/src/index.js +39 -50
  31. package/dist/plugins/activeCampaign/src/credentials.js +22 -0
  32. package/dist/plugins/activeCampaign/src/index.js +61 -132
  33. package/dist/plugins/adalo/src/credentials.js +16 -0
  34. package/dist/plugins/adalo/src/index.js +19 -43
  35. package/dist/plugins/affinity/src/credentials.js +19 -0
  36. package/dist/plugins/affinity/src/index.js +29 -54
  37. package/dist/plugins/agileCrm/src/credentials.js +16 -0
  38. package/dist/plugins/agileCrm/src/index.js +46 -112
  39. package/dist/plugins/airtable/src/credentials.js +19 -0
  40. package/dist/plugins/airtable/src/index.js +37 -50
  41. package/dist/plugins/airtop/src/credentials.js +20 -0
  42. package/dist/plugins/airtop/src/index.js +51 -75
  43. package/dist/plugins/apiTemplateIo/src/credentials.js +19 -0
  44. package/dist/plugins/apiTemplateIo/src/index.js +14 -31
  45. package/dist/plugins/asana/src/credentials.js +19 -0
  46. package/dist/plugins/asana/src/index.js +51 -72
  47. package/dist/plugins/autopilot/src/credentials.js +19 -0
  48. package/dist/plugins/autopilot/src/index.js +38 -45
  49. package/dist/plugins/bambooHr/src/credentials.js +16 -0
  50. package/dist/plugins/bambooHr/src/index.js +41 -67
  51. package/dist/plugins/bannerbear/src/credentials.js +19 -0
  52. package/dist/plugins/bannerbear/src/index.js +15 -27
  53. package/dist/plugins/baserow/src/credentials.js +17 -0
  54. package/dist/plugins/baserow/src/index.js +23 -49
  55. package/dist/plugins/beeminder/src/credentials.js +19 -0
  56. package/dist/plugins/beeminder/src/index.js +32 -54
  57. package/dist/plugins/bitly/src/credentials.js +19 -0
  58. package/dist/plugins/bitly/src/index.js +12 -26
  59. package/dist/plugins/bitwarden/src/credentials.js +62 -0
  60. package/dist/plugins/bitwarden/src/index.js +34 -80
  61. package/dist/plugins/box/src/credentials.js +19 -0
  62. package/dist/plugins/box/src/index.js +24 -49
  63. package/dist/plugins/brandfetch/src/credentials.js +13 -0
  64. package/dist/plugins/brandfetch/src/index.js +12 -17
  65. package/dist/plugins/brevo/src/credentials.js +19 -0
  66. package/dist/plugins/brevo/src/index.js +30 -51
  67. package/dist/plugins/bubble/src/credentials.js +28 -0
  68. package/dist/plugins/bubble/src/index.js +29 -65
  69. package/dist/plugins/chargebee/src/credentials.js +16 -0
  70. package/dist/plugins/chargebee/src/index.js +15 -45
  71. package/dist/plugins/circleci/src/credentials.js +19 -0
  72. package/dist/plugins/circleci/src/index.js +19 -39
  73. package/dist/plugins/ciscoWebex/src/credentials.js +19 -0
  74. package/dist/plugins/ciscoWebex/src/index.js +43 -61
  75. package/dist/plugins/clearbit/src/credentials.js +22 -0
  76. package/dist/plugins/clearbit/src/index.js +11 -21
  77. package/dist/plugins/clickup/src/credentials.js +19 -0
  78. package/dist/plugins/clickup/src/index.js +85 -117
  79. package/dist/plugins/clockify/src/credentials.js +19 -0
  80. package/dist/plugins/clockify/src/index.js +46 -61
  81. package/dist/plugins/cloudflare/src/credentials.js +19 -0
  82. package/dist/plugins/cloudflare/src/index.js +19 -34
  83. package/dist/plugins/cockpit/src/credentials.js +17 -0
  84. package/dist/plugins/cockpit/src/index.js +18 -31
  85. package/dist/plugins/coda/src/credentials.js +19 -0
  86. package/dist/plugins/coda/src/index.js +33 -50
  87. package/dist/plugins/coingecko/src/credentials.js +20 -0
  88. package/dist/plugins/coingecko/src/index.js +24 -34
  89. package/dist/plugins/contentful/src/credentials.js +26 -0
  90. package/dist/plugins/contentful/src/index.js +19 -40
  91. package/dist/plugins/convertkit/src/credentials.js +26 -0
  92. package/dist/plugins/convertkit/src/index.js +27 -45
  93. package/dist/plugins/copper/src/credentials.js +17 -0
  94. package/dist/plugins/copper/src/index.js +25 -47
  95. package/dist/plugins/cortex/src/credentials.js +28 -0
  96. package/dist/plugins/cortex/src/index.js +26 -49
  97. package/dist/plugins/currents/src/credentials.js +19 -0
  98. package/dist/plugins/currents/src/index.js +46 -59
  99. package/dist/plugins/customerIo/src/credentials.js +52 -0
  100. package/dist/plugins/customerIo/src/index.js +30 -58
  101. package/dist/plugins/databricks/src/credentials.js +13 -0
  102. package/dist/plugins/databricks/src/index.js +51 -103
  103. package/dist/plugins/deepl/src/credentials.js +19 -0
  104. package/dist/plugins/deepl/src/index.js +13 -39
  105. package/dist/plugins/demio/src/credentials.js +26 -0
  106. package/dist/plugins/demio/src/index.js +17 -41
  107. package/dist/plugins/dhl/src/credentials.js +13 -0
  108. package/dist/plugins/dhl/src/index.js +8 -19
  109. package/dist/plugins/discord/src/credentials.js +19 -0
  110. package/dist/plugins/discord/src/index.js +30 -58
  111. package/dist/plugins/discourse/src/credentials.js +18 -0
  112. package/dist/plugins/discourse/src/index.js +36 -53
  113. package/dist/plugins/disqus/src/credentials.js +13 -0
  114. package/dist/plugins/disqus/src/index.js +14 -32
  115. package/dist/plugins/drift/src/credentials.js +13 -0
  116. package/dist/plugins/drift/src/index.js +16 -26
  117. package/dist/plugins/dropbox/src/credentials.js +13 -0
  118. package/dist/plugins/dropbox/src/index.js +23 -30
  119. package/dist/plugins/dropcontact/src/credentials.js +13 -0
  120. package/dist/plugins/dropcontact/src/index.js +13 -18
  121. package/dist/plugins/egoi/src/credentials.js +19 -0
  122. package/dist/plugins/egoi/src/index.js +23 -38
  123. package/dist/plugins/elasticsearch/src/credentials.js +18 -0
  124. package/dist/plugins/elasticsearch/src/index.js +27 -48
  125. package/dist/plugins/elevenlabs/src/credentials.js +30 -0
  126. package/dist/plugins/elevenlabs/src/index.js +4 -1
  127. package/dist/plugins/elevenlabs/src/schemas.js +2 -1
  128. package/dist/plugins/elevenlabs/src/shared.js +74 -35
  129. package/dist/plugins/elevenlabs/src/workflows.js +2 -2
  130. package/dist/plugins/emelia/src/credentials.js +14 -0
  131. package/dist/plugins/emelia/src/index.js +19 -23
  132. package/dist/plugins/erpnext/src/credentials.js +27 -0
  133. package/dist/plugins/erpnext/src/index.js +21 -42
  134. package/dist/plugins/facebookGraph/src/credentials.js +20 -0
  135. package/dist/plugins/facebookGraph/src/index.js +39 -37
  136. package/dist/plugins/fal/src/credentials.js +14 -0
  137. package/dist/plugins/fal/src/index.js +4 -2
  138. package/dist/plugins/fal/src/shared.js +58 -63
  139. package/dist/plugins/freshdesk/src/credentials.js +20 -0
  140. package/dist/plugins/freshdesk/src/index.js +25 -46
  141. package/dist/plugins/freshservice/src/credentials.js +16 -0
  142. package/dist/plugins/freshservice/src/index.js +37 -58
  143. package/dist/plugins/freshworksCrm/src/credentials.js +16 -0
  144. package/dist/plugins/freshworksCrm/src/index.js +20 -39
  145. package/dist/plugins/getresponse/src/credentials.js +22 -0
  146. package/dist/plugins/getresponse/src/index.js +20 -32
  147. package/dist/plugins/gett/src/credentials.js +64 -0
  148. package/dist/plugins/gett/src/index.js +11 -6
  149. package/dist/plugins/gett/src/login.js +24 -0
  150. package/dist/plugins/gett/src/session.js +15 -38
  151. package/dist/plugins/gett/src/shared.js +41 -84
  152. package/dist/plugins/ghost/src/credentials.js +36 -0
  153. package/dist/plugins/ghost/src/index.js +18 -59
  154. package/dist/plugins/github/src/credentials.js +18 -0
  155. package/dist/plugins/github/src/index.js +55 -78
  156. package/dist/plugins/gitlab/src/credentials.js +24 -0
  157. package/dist/plugins/gitlab/src/index.js +29 -48
  158. package/dist/plugins/gmail/src/index.js +26 -24
  159. package/dist/plugins/gong/src/credentials.js +16 -0
  160. package/dist/plugins/gong/src/index.js +16 -32
  161. package/dist/plugins/googleAppsScript/src/index.js +108 -42
  162. package/dist/plugins/googleCalendar/src/index.js +15 -13
  163. package/dist/plugins/googleContacts/src/index.js +12 -9
  164. package/dist/plugins/googleDocs/src/index.js +2 -0
  165. package/dist/plugins/googleDocs/src/shared.js +2 -1
  166. package/dist/plugins/googleDrive/src/index.js +50 -53
  167. package/dist/plugins/googleImage/src/credentials.js +14 -0
  168. package/dist/plugins/googleImage/src/index.js +14 -25
  169. package/dist/plugins/googleSheets/src/index.js +26 -27
  170. package/dist/plugins/googleSlides/src/index.js +6 -4
  171. package/dist/plugins/googleTasks/src/index.js +13 -11
  172. package/dist/plugins/gotify/src/credentials.js +32 -0
  173. package/dist/plugins/gotify/src/index.js +14 -36
  174. package/dist/plugins/gotowebinar/src/credentials.js +13 -0
  175. package/dist/plugins/gotowebinar/src/index.js +52 -69
  176. package/dist/plugins/grafana/src/credentials.js +16 -0
  177. package/dist/plugins/grafana/src/index.js +34 -53
  178. package/dist/plugins/graphql/src/credentials.js +42 -0
  179. package/dist/plugins/graphql/src/index.js +21 -46
  180. package/dist/plugins/grist/src/credentials.js +30 -0
  181. package/dist/plugins/grist/src/index.js +14 -43
  182. package/dist/plugins/halopsa/src/credentials.js +56 -0
  183. package/dist/plugins/halopsa/src/index.js +20 -47
  184. package/dist/plugins/harvest/src/credentials.js +20 -0
  185. package/dist/plugins/harvest/src/index.js +24 -43
  186. package/dist/plugins/helpscout/src/credentials.js +13 -0
  187. package/dist/plugins/helpscout/src/index.js +26 -38
  188. package/dist/plugins/highlevel/src/credentials.js +19 -0
  189. package/dist/plugins/highlevel/src/index.js +34 -63
  190. package/dist/plugins/homeAssistant/src/credentials.js +27 -0
  191. package/dist/plugins/homeAssistant/src/index.js +34 -52
  192. package/dist/plugins/hubspot/src/credentials.js +16 -0
  193. package/dist/plugins/hubspot/src/index.js +29 -41
  194. package/dist/plugins/humanticAi/src/credentials.js +13 -0
  195. package/dist/plugins/humanticAi/src/index.js +15 -22
  196. package/dist/plugins/hunter/src/credentials.js +13 -0
  197. package/dist/plugins/hunter/src/index.js +18 -17
  198. package/dist/plugins/intercom/src/credentials.js +19 -0
  199. package/dist/plugins/intercom/src/index.js +25 -38
  200. package/dist/plugins/iterable/src/credentials.js +17 -0
  201. package/dist/plugins/iterable/src/index.js +26 -40
  202. package/dist/plugins/jenkins/src/credentials.js +16 -0
  203. package/dist/plugins/jenkins/src/index.js +22 -36
  204. package/dist/plugins/jira/src/credentials.js +16 -0
  205. package/dist/plugins/jira/src/index.js +35 -61
  206. package/dist/plugins/keap/src/credentials.js +19 -0
  207. package/dist/plugins/keap/src/index.js +43 -71
  208. package/dist/plugins/kobotoolbox/src/credentials.js +13 -0
  209. package/dist/plugins/kobotoolbox/src/index.js +46 -84
  210. package/dist/plugins/lemlist/src/credentials.js +19 -0
  211. package/dist/plugins/lemlist/src/index.js +35 -47
  212. package/dist/plugins/linear/src/attachments.js +7 -7
  213. package/dist/plugins/linear/src/comments.js +7 -7
  214. package/dist/plugins/linear/src/credentials.js +17 -0
  215. package/dist/plugins/linear/src/cycles.js +5 -5
  216. package/dist/plugins/linear/src/index.js +2 -0
  217. package/dist/plugins/linear/src/initiatives.js +6 -6
  218. package/dist/plugins/linear/src/issues.js +14 -14
  219. package/dist/plugins/linear/src/labels.js +6 -6
  220. package/dist/plugins/linear/src/organization.js +2 -2
  221. package/dist/plugins/linear/src/projects.js +12 -12
  222. package/dist/plugins/linear/src/shared.js +34 -32
  223. package/dist/plugins/linear/src/states.js +3 -3
  224. package/dist/plugins/linear/src/teams.js +4 -4
  225. package/dist/plugins/linear/src/users.js +3 -3
  226. package/dist/plugins/linear/src/views.js +5 -5
  227. package/dist/plugins/linear/src/webhooks.js +5 -5
  228. package/dist/plugins/lingvanex/src/credentials.js +13 -0
  229. package/dist/plugins/lingvanex/src/index.js +7 -9
  230. package/dist/plugins/linkedin/src/credentials.js +17 -0
  231. package/dist/plugins/linkedin/src/index.js +13 -17
  232. package/dist/plugins/lonescale/src/credentials.js +13 -0
  233. package/dist/plugins/lonescale/src/index.js +16 -26
  234. package/dist/plugins/magento/src/credentials.js +16 -0
  235. package/dist/plugins/magento/src/index.js +67 -84
  236. package/dist/plugins/mailcheck/src/credentials.js +17 -0
  237. package/dist/plugins/mailcheck/src/index.js +7 -9
  238. package/dist/plugins/mailchimp/src/credentials.js +32 -0
  239. package/dist/plugins/mailchimp/src/index.js +36 -44
  240. package/dist/plugins/mailerlite/src/credentials.js +13 -0
  241. package/dist/plugins/mailerlite/src/index.js +19 -32
  242. package/dist/plugins/mailgun/src/credentials.js +21 -0
  243. package/dist/plugins/mailgun/src/index.js +15 -21
  244. package/dist/plugins/mailjet/src/credentials.js +38 -0
  245. package/dist/plugins/mailjet/src/index.js +60 -115
  246. package/dist/plugins/mandrill/src/credentials.js +17 -0
  247. package/dist/plugins/mandrill/src/index.js +11 -12
  248. package/dist/plugins/marketstack/src/credentials.js +16 -0
  249. package/dist/plugins/marketstack/src/index.js +18 -28
  250. package/dist/plugins/matrix/src/credentials.js +19 -0
  251. package/dist/plugins/matrix/src/index.js +23 -52
  252. package/dist/plugins/mattermost/src/credentials.js +19 -0
  253. package/dist/plugins/mattermost/src/index.js +41 -73
  254. package/dist/plugins/mautic/src/credentials.js +16 -0
  255. package/dist/plugins/mautic/src/index.js +46 -62
  256. package/dist/plugins/medium/src/credentials.js +20 -0
  257. package/dist/plugins/medium/src/index.js +18 -23
  258. package/dist/plugins/messagebird/src/credentials.js +22 -0
  259. package/dist/plugins/messagebird/src/index.js +13 -18
  260. package/dist/plugins/metabase/src/credentials.js +19 -0
  261. package/dist/plugins/metabase/src/index.js +24 -40
  262. package/dist/plugins/microsoftCalendar/src/index.js +48 -12
  263. package/dist/plugins/microsoftFiles/src/index.js +90 -25
  264. package/dist/plugins/microsoftMail/src/index.js +62 -15
  265. package/dist/plugins/misp/src/credentials.js +16 -0
  266. package/dist/plugins/misp/src/index.js +60 -71
  267. package/dist/plugins/mocean/src/credentials.js +17 -0
  268. package/dist/plugins/mocean/src/index.js +11 -23
  269. package/dist/plugins/monday/src/credentials.js +14 -0
  270. package/dist/plugins/monday/src/index.js +31 -44
  271. package/dist/plugins/monicaCrm/src/credentials.js +19 -0
  272. package/dist/plugins/monicaCrm/src/index.js +25 -42
  273. package/dist/plugins/msg91/src/credentials.js +10 -0
  274. package/dist/plugins/msg91/src/index.js +15 -11
  275. package/dist/plugins/nasa/src/credentials.js +22 -0
  276. package/dist/plugins/nasa/src/index.js +24 -28
  277. package/dist/plugins/netlify/src/credentials.js +19 -0
  278. package/dist/plugins/netlify/src/index.js +27 -51
  279. package/dist/plugins/netscalerAdc/src/credentials.js +18 -0
  280. package/dist/plugins/netscalerAdc/src/index.js +16 -31
  281. package/dist/plugins/nextcloud/src/credentials.js +27 -0
  282. package/dist/plugins/nextcloud/src/index.js +55 -109
  283. package/dist/plugins/nocodb/src/credentials.js +16 -0
  284. package/dist/plugins/nocodb/src/index.js +19 -37
  285. package/dist/plugins/notion/src/credentials.js +21 -0
  286. package/dist/plugins/notion/src/index.js +25 -38
  287. package/dist/plugins/npm/src/credentials.js +19 -0
  288. package/dist/plugins/npm/src/index.js +22 -32
  289. package/dist/plugins/odoo/src/credentials.js +21 -0
  290. package/dist/plugins/odoo/src/index.js +53 -69
  291. package/dist/plugins/okta/src/credentials.js +23 -0
  292. package/dist/plugins/okta/src/index.js +30 -35
  293. package/dist/plugins/oneSimpleApi/src/credentials.js +16 -0
  294. package/dist/plugins/oneSimpleApi/src/index.js +19 -24
  295. package/dist/plugins/onfleet/src/credentials.js +23 -0
  296. package/dist/plugins/onfleet/src/index.js +42 -53
  297. package/dist/plugins/openai/src/credentials.js +13 -0
  298. package/dist/plugins/openai/src/index.js +15 -23
  299. package/dist/plugins/openweathermap/src/credentials.js +16 -0
  300. package/dist/plugins/openweathermap/src/index.js +22 -22
  301. package/dist/plugins/oura/src/credentials.js +19 -0
  302. package/dist/plugins/oura/src/index.js +13 -18
  303. package/dist/plugins/paddle/src/credentials.js +27 -0
  304. package/dist/plugins/paddle/src/index.js +20 -36
  305. package/dist/plugins/pagerduty/src/credentials.js +24 -0
  306. package/dist/plugins/pagerduty/src/index.js +30 -39
  307. package/dist/plugins/parallel/src/credentials.js +18 -0
  308. package/dist/plugins/parallel/src/index.js +16 -22
  309. package/dist/plugins/paypal/src/credentials.js +44 -0
  310. package/dist/plugins/paypal/src/index.js +14 -40
  311. package/dist/plugins/peekalink/src/credentials.js +16 -0
  312. package/dist/plugins/peekalink/src/index.js +10 -11
  313. package/dist/plugins/phantombuster/src/credentials.js +19 -0
  314. package/dist/plugins/phantombuster/src/index.js +19 -32
  315. package/dist/plugins/philipsHue/src/credentials.js +17 -0
  316. package/dist/plugins/philipsHue/src/index.js +15 -27
  317. package/dist/plugins/pipedrive/src/credentials.js +26 -0
  318. package/dist/plugins/pipedrive/src/index.js +43 -73
  319. package/dist/plugins/plaud/src/index.js +2 -1
  320. package/dist/plugins/plaud/src/shared.js +23 -19
  321. package/dist/plugins/plivo/src/credentials.js +20 -0
  322. package/dist/plugins/plivo/src/index.js +13 -19
  323. package/dist/plugins/posthog/src/credentials.js +18 -0
  324. package/dist/plugins/posthog/src/index.js +14 -20
  325. package/dist/plugins/profitwell/src/credentials.js +22 -0
  326. package/dist/plugins/profitwell/src/index.js +10 -17
  327. package/dist/plugins/pushbullet/src/credentials.js +19 -0
  328. package/dist/plugins/pushbullet/src/index.js +19 -27
  329. package/dist/plugins/pushcut/src/credentials.js +19 -0
  330. package/dist/plugins/pushcut/src/index.js +7 -8
  331. package/dist/plugins/pushover/src/credentials.js +14 -0
  332. package/dist/plugins/pushover/src/index.js +7 -12
  333. package/dist/plugins/quickbase/src/credentials.js +15 -0
  334. package/dist/plugins/quickbase/src/index.js +24 -34
  335. package/dist/plugins/quickbooks/src/credentials.js +22 -0
  336. package/dist/plugins/quickbooks/src/index.js +17 -46
  337. package/dist/plugins/raindrop/src/credentials.js +19 -0
  338. package/dist/plugins/raindrop/src/index.js +30 -32
  339. package/dist/plugins/recraft/src/credentials.js +13 -0
  340. package/dist/plugins/recraft/src/index.js +38 -27
  341. package/dist/plugins/reddit/src/credentials.js +26 -0
  342. package/dist/plugins/reddit/src/index.js +30 -34
  343. package/dist/plugins/replicate/src/credentials.js +23 -0
  344. package/dist/plugins/replicate/src/index.js +17 -27
  345. package/dist/plugins/rocketchat/src/credentials.js +17 -0
  346. package/dist/plugins/rocketchat/src/index.js +8 -19
  347. package/dist/plugins/rundeck/src/credentials.js +16 -0
  348. package/dist/plugins/rundeck/src/index.js +12 -28
  349. package/dist/plugins/salesforce/src/credentials.js +73 -0
  350. package/dist/plugins/salesforce/src/index.js +6 -0
  351. package/dist/plugins/salesforce/src/metadata.js +3 -16
  352. package/dist/plugins/salesforce/src/shared.js +25 -100
  353. package/dist/plugins/salesforce/src/sobjects.js +10 -9
  354. package/dist/plugins/salesmate/src/credentials.js +17 -0
  355. package/dist/plugins/salesmate/src/index.js +20 -37
  356. package/dist/plugins/securityScorecard/src/credentials.js +22 -0
  357. package/dist/plugins/securityScorecard/src/index.js +24 -37
  358. package/dist/plugins/segment/src/credentials.js +16 -0
  359. package/dist/plugins/segment/src/index.js +12 -16
  360. package/dist/plugins/sendgrid/src/credentials.js +13 -0
  361. package/dist/plugins/sendgrid/src/index.js +31 -35
  362. package/dist/plugins/sendy/src/credentials.js +18 -0
  363. package/dist/plugins/sendy/src/index.js +18 -24
  364. package/dist/plugins/sentry/src/credentials.js +16 -0
  365. package/dist/plugins/sentry/src/index.js +30 -98
  366. package/dist/plugins/servicenow/src/credentials.js +13 -0
  367. package/dist/plugins/servicenow/src/index.js +22 -41
  368. package/dist/plugins/shiftAtlas/src/graph.js +2 -2
  369. package/dist/plugins/shiftAtlas/src/index.js +2 -0
  370. package/dist/plugins/shiftAtlas/src/shared.js +3 -1
  371. package/dist/plugins/shiftBwm/src/index.js +4 -2
  372. package/dist/plugins/shiftBwm/src/shared.js +41 -16
  373. package/dist/plugins/shiftCrm/src/access.js +2 -2
  374. package/dist/plugins/shiftCrm/src/accounts.js +3 -3
  375. package/dist/plugins/shiftCrm/src/activities.js +3 -3
  376. package/dist/plugins/shiftCrm/src/credentials.js +6 -0
  377. package/dist/plugins/shiftCrm/src/index.js +2 -0
  378. package/dist/plugins/shiftCrm/src/opportunities.js +3 -3
  379. package/dist/plugins/shiftCrm/src/people.js +3 -3
  380. package/dist/plugins/shiftCrm/src/records.js +2 -2
  381. package/dist/plugins/shiftCrm/src/shared.js +2 -1
  382. package/dist/plugins/shiftCrm/src/tasks.js +3 -3
  383. package/dist/plugins/shiftObjects/src/credentials.js +2 -0
  384. package/dist/plugins/shiftObjects/src/index.js +2 -0
  385. package/dist/plugins/shiftObjects/src/objects.js +3 -2
  386. package/dist/plugins/shiftOcr/src/credentials.js +8 -0
  387. package/dist/plugins/shiftOcr/src/index.js +6 -5
  388. package/dist/plugins/shiftPages/src/index.js +2 -0
  389. package/dist/plugins/shiftPages/src/pages.js +5 -3
  390. package/dist/plugins/shiftPages/src/shared.js +3 -1
  391. package/dist/plugins/shiftTranscription/src/index.js +2 -0
  392. package/dist/plugins/shiftTranscription/src/shared.js +11 -1
  393. package/dist/plugins/shiftTranscription/src/transcription.js +4 -4
  394. package/dist/plugins/shiftWork/src/index.js +2 -0
  395. package/dist/plugins/shiftWork/src/issue-views.js +5 -5
  396. package/dist/plugins/shiftWork/src/issues.js +11 -7
  397. package/dist/plugins/shiftWork/src/projects.js +3 -3
  398. package/dist/plugins/shiftWork/src/shared.js +3 -1
  399. package/dist/plugins/shopify/src/credentials.js +16 -0
  400. package/dist/plugins/shopify/src/index.js +32 -59
  401. package/dist/plugins/signl4/src/credentials.js +17 -0
  402. package/dist/plugins/signl4/src/index.js +28 -29
  403. package/dist/plugins/slack/src/credentials.js +19 -0
  404. package/dist/plugins/slack/src/index.js +51 -60
  405. package/dist/plugins/sms77/src/credentials.js +17 -0
  406. package/dist/plugins/sms77/src/index.js +11 -16
  407. package/dist/plugins/splunk/src/credentials.js +19 -0
  408. package/dist/plugins/splunk/src/index.js +32 -74
  409. package/dist/plugins/spotify/src/credentials.js +19 -0
  410. package/dist/plugins/spotify/src/index.js +40 -55
  411. package/dist/plugins/stackby/src/credentials.js +13 -0
  412. package/dist/plugins/stackby/src/index.js +14 -23
  413. package/dist/plugins/steel/src/auth.js +27 -0
  414. package/dist/plugins/steel/src/browser.js +4 -3
  415. package/dist/plugins/steel/src/captchas.js +4 -3
  416. package/dist/plugins/steel/src/extensions.js +3 -2
  417. package/dist/plugins/steel/src/files.js +9 -10
  418. package/dist/plugins/steel/src/index.js +2 -0
  419. package/dist/plugins/steel/src/page/tools.js +3 -3
  420. package/dist/plugins/steel/src/profiles.js +4 -3
  421. package/dist/plugins/steel/src/sessions.js +13 -13
  422. package/dist/plugins/steel/src/shared.js +21 -51
  423. package/dist/plugins/storyblok/src/credentials.js +37 -0
  424. package/dist/plugins/storyblok/src/index.js +22 -66
  425. package/dist/plugins/strapi/src/credentials.js +71 -0
  426. package/dist/plugins/strapi/src/index.js +36 -70
  427. package/dist/plugins/strava/src/credentials.js +19 -0
  428. package/dist/plugins/strava/src/index.js +16 -33
  429. package/dist/plugins/stripe/src/credentials.js +19 -0
  430. package/dist/plugins/stripe/src/index.js +44 -58
  431. package/dist/plugins/supabase/src/credentials.js +30 -0
  432. package/dist/plugins/supabase/src/index.js +18 -40
  433. package/dist/plugins/syncromsp/src/credentials.js +16 -0
  434. package/dist/plugins/syncromsp/src/index.js +37 -70
  435. package/dist/plugins/tapfiliate/src/credentials.js +13 -0
  436. package/dist/plugins/tapfiliate/src/index.js +21 -31
  437. package/dist/plugins/telegram/src/credentials.js +20 -0
  438. package/dist/plugins/telegram/src/index.js +31 -39
  439. package/dist/plugins/thehive/src/credentials.js +14 -0
  440. package/dist/plugins/thehive/src/index.js +33 -50
  441. package/dist/plugins/thehiveProject/src/credentials.js +16 -0
  442. package/dist/plugins/thehiveProject/src/index.js +53 -122
  443. package/dist/plugins/todoist/src/credentials.js +26 -0
  444. package/dist/plugins/todoist/src/index.js +49 -79
  445. package/dist/plugins/together/src/credentials.js +16 -0
  446. package/dist/plugins/together/src/index.js +30 -32
  447. package/dist/plugins/travisci/src/credentials.js +24 -0
  448. package/dist/plugins/travisci/src/index.js +16 -30
  449. package/dist/plugins/trello/src/credentials.js +29 -0
  450. package/dist/plugins/trello/src/index.js +49 -64
  451. package/dist/plugins/twake/src/credentials.js +16 -0
  452. package/dist/plugins/twake/src/index.js +8 -10
  453. package/dist/plugins/twilio/src/credentials.js +23 -0
  454. package/dist/plugins/twilio/src/index.js +12 -26
  455. package/dist/plugins/twist/src/credentials.js +13 -0
  456. package/dist/plugins/twist/src/index.js +32 -44
  457. package/dist/plugins/twitter/src/credentials.js +16 -0
  458. package/dist/plugins/twitter/src/index.js +25 -37
  459. package/dist/plugins/typesafe/src/credentials.js +28 -0
  460. package/dist/plugins/typesafe/src/index.js +3 -1
  461. package/dist/plugins/typesafe/src/shared.js +23 -35
  462. package/dist/plugins/unleashedSoftware/src/credentials.js +21 -0
  463. package/dist/plugins/unleashedSoftware/src/index.js +13 -37
  464. package/dist/plugins/uplead/src/credentials.js +16 -0
  465. package/dist/plugins/uplead/src/index.js +11 -16
  466. package/dist/plugins/uproc/src/credentials.js +14 -0
  467. package/dist/plugins/uproc/src/index.js +7 -10
  468. package/dist/plugins/uptimerobot/src/credentials.js +14 -0
  469. package/dist/plugins/uptimerobot/src/index.js +28 -39
  470. package/dist/plugins/urlscanio/src/credentials.js +13 -0
  471. package/dist/plugins/urlscanio/src/index.js +13 -22
  472. package/dist/plugins/vercel/src/credentials.js +19 -0
  473. package/dist/plugins/vercel/src/deployments.js +27 -11
  474. package/dist/plugins/vercel/src/env.js +31 -12
  475. package/dist/plugins/vercel/src/index.js +2 -0
  476. package/dist/plugins/vercel/src/projects.js +6 -3
  477. package/dist/plugins/vercel/src/shared.js +32 -37
  478. package/dist/plugins/vero/src/credentials.js +17 -0
  479. package/dist/plugins/vero/src/index.js +18 -21
  480. package/dist/plugins/vonage/src/credentials.js +17 -0
  481. package/dist/plugins/vonage/src/index.js +14 -18
  482. package/dist/plugins/wekan/src/credentials.js +16 -0
  483. package/dist/plugins/wekan/src/index.js +33 -46
  484. package/dist/plugins/wolt/src/account.js +6 -0
  485. package/dist/plugins/wolt/src/catalog.js +2 -2
  486. package/dist/plugins/wolt/src/credentials.js +64 -0
  487. package/dist/plugins/wolt/src/index.js +8 -3
  488. package/dist/plugins/wolt/src/orders.js +2 -2
  489. package/dist/plugins/wolt/src/public.js +91 -0
  490. package/dist/plugins/wolt/src/shared.js +49 -158
  491. package/dist/plugins/woocommerce/src/credentials.js +16 -0
  492. package/dist/plugins/woocommerce/src/index.js +19 -37
  493. package/dist/plugins/wordpress/src/credentials.js +16 -0
  494. package/dist/plugins/wordpress/src/index.js +23 -42
  495. package/dist/plugins/xai/src/credentials.js +13 -0
  496. package/dist/plugins/xai/src/index.js +31 -30
  497. package/dist/plugins/xero/src/credentials.js +17 -0
  498. package/dist/plugins/xero/src/index.js +19 -36
  499. package/dist/plugins/yourls/src/credentials.js +17 -0
  500. package/dist/plugins/yourls/src/index.js +13 -23
  501. package/dist/plugins/zammad/src/credentials.js +15 -0
  502. package/dist/plugins/zammad/src/index.js +27 -47
  503. package/dist/plugins/zendesk/src/credentials.js +26 -0
  504. package/dist/plugins/zendesk/src/index.js +29 -48
  505. package/dist/plugins/zoho/src/credentials.js +17 -0
  506. package/dist/plugins/zoho/src/index.js +18 -38
  507. package/dist/plugins/zoom/src/credentials.js +19 -0
  508. package/dist/plugins/zoom/src/index.js +15 -30
  509. package/dist/plugins/zulip/src/credentials.js +16 -0
  510. package/dist/plugins/zulip/src/index.js +36 -42
  511. package/dist/sdk.d.ts +8 -0
  512. package/dist/sdk.js +3 -0
  513. package/package.json +1 -1
  514. package/dist/plugins/_shared/authedFetch.js +0 -33
  515. package/dist/plugins/_shared/tokenRefresh.js +0 -41
@@ -1,56 +1,31 @@
1
- function getConn(ctx) {
2
- const url = ctx.connection.config.url.replace(/\/$/, "");
3
- const apiKey = ctx.connection.config.apiKey;
4
- return { url, apiKey };
5
- }
6
- async function api(url, apiKey, method, path, body, qs) {
7
- const u = new URL(`${url}/api${path}`);
8
- if (qs) {
9
- for (const [k, v] of Object.entries(qs)) {
10
- if (v !== undefined)
11
- u.searchParams.set(k, String(v));
12
- }
13
- }
14
- const init = {
1
+ import { credentialJson, pathSegment } from "../../_shared/credentials.js";
2
+ import { thehiveProjectCredential } from "./credentials.js";
3
+ function api(ctx, method, path, body, qs) {
4
+ return credentialJson(ctx, thehiveProjectCredential, "thehiveProject", {
5
+ target: "api",
6
+ path,
15
7
  method,
16
- headers: {
17
- Authorization: `Bearer ${apiKey}`,
18
- "Content-Type": "application/json",
19
- },
20
- };
21
- if (body && Object.keys(body).length > 0)
22
- init.body = JSON.stringify(body);
23
- const res = await fetch(u.toString(), init);
24
- if (res.status === 204)
25
- return { success: true };
26
- if (!res.ok)
27
- throw new Error(`TheHive error ${res.status}: ${await res.text()}`);
28
- const text = await res.text();
29
- return text ? JSON.parse(text) : { success: true };
8
+ query: qs,
9
+ ...(body && Object.keys(body).length > 0 ? { json: body } : {}),
10
+ });
30
11
  }
31
12
  // TheHive v1 query API — paginated search
32
- async function query(url, apiKey, scope, filters, sortFields, limit) {
33
- const q = [];
34
- if (scope.id)
35
- q.push({ _name: scope.query, idOrName: scope.id });
36
- else
37
- q.push({ _name: scope.query });
38
- if (scope.restrictTo)
39
- q.push({ _name: scope.restrictTo });
13
+ async function query(ctx, queryName, filters, sortFields, limit) {
14
+ const q = [{ _name: queryName }];
40
15
  if (filters && filters.length)
41
16
  q.push({ _name: "filter", _and: filters });
42
17
  if (sortFields && sortFields.length)
43
18
  q.push({ _name: "sort", _fields: sortFields });
44
19
  if (limit) {
45
20
  q.push({ _name: "page", from: 0, to: limit });
46
- return api(url, apiKey, "POST", "/v1/query", { query: q });
21
+ return api(ctx, "POST", "v1/query", { query: q });
47
22
  }
48
23
  // Paginate in batches of 500
49
24
  const results = [];
50
25
  let from = 0;
51
26
  let batch;
52
27
  do {
53
- batch = ((await api(url, apiKey, "POST", "/v1/query", {
28
+ batch = ((await api(ctx, "POST", "v1/query", {
54
29
  query: [...q, { _name: "page", from, to: from + 500 }],
55
30
  })) ?? []);
56
31
  results.push(...batch);
@@ -58,7 +33,7 @@ async function query(url, apiKey, scope, filters, sortFields, limit) {
58
33
  } while (batch.length > 0);
59
34
  return results;
60
35
  }
61
- function searchAction(rl, name, scope, description, extraInputs) {
36
+ function searchAction(rl, name, queryName, description) {
62
37
  rl.registerAction(name, {
63
38
  access: "read",
64
39
  description,
@@ -74,33 +49,17 @@ function searchAction(rl, name, scope, description, extraInputs) {
74
49
  required: false,
75
50
  description: "Array of sort field objects",
76
51
  },
77
- ...extraInputs,
78
52
  },
79
53
  async execute(input, ctx) {
80
- const { url, apiKey } = getConn(ctx);
81
54
  const p = (input ?? {});
82
- let s;
83
- if (typeof scope === "string") {
84
- s = { query: scope };
85
- }
86
- else {
87
- s = scope;
88
- }
89
- // If there's scope customization via input (e.g. caseId for tasks)
90
- if (p.caseId && typeof scope === "object" && scope.restrictTo) {
91
- s = {
92
- query: "getCase",
93
- id: p.caseId,
94
- restrictTo: scope.restrictTo,
95
- };
96
- }
97
- return query(url, apiKey, s, p.filters, p.sort, p.limit);
55
+ return query(ctx, queryName, p.filters, p.sort, p.limit);
98
56
  },
99
57
  });
100
58
  }
101
59
  export default function theHiveProject(rl) {
102
60
  rl.setName("thehiveProject");
103
61
  rl.setVersion("0.1.0");
62
+ rl.setCredential(thehiveProjectCredential);
104
63
  rl.setConnectionSchema({
105
64
  url: {
106
65
  type: "string",
@@ -131,8 +90,7 @@ export default function theHiveProject(rl) {
131
90
  customFields: { type: "object", required: false },
132
91
  },
133
92
  async execute(input, ctx) {
134
- const { url, apiKey } = getConn(ctx);
135
- return api(url, apiKey, "POST", "/v1/alert", input);
93
+ return api(ctx, "POST", "v1/alert", input);
136
94
  },
137
95
  });
138
96
  rl.registerAction("alert.get", {
@@ -140,8 +98,7 @@ export default function theHiveProject(rl) {
140
98
  description: "Get an alert by ID",
141
99
  inputSchema: { id: { type: "string", required: true } },
142
100
  async execute(input, ctx) {
143
- const { url, apiKey } = getConn(ctx);
144
- return api(url, apiKey, "GET", `/v1/alert/${input.id}`);
101
+ return api(ctx, "GET", `v1/alert/${pathSegment(input.id)}`);
145
102
  },
146
103
  });
147
104
  rl.registerAction("alert.update", {
@@ -158,9 +115,8 @@ export default function theHiveProject(rl) {
158
115
  customFields: { type: "object", required: false },
159
116
  },
160
117
  async execute(input, ctx) {
161
- const { url, apiKey } = getConn(ctx);
162
118
  const { id, ...body } = input;
163
- await api(url, apiKey, "PATCH", `/v1/alert/${id}`, body);
119
+ await api(ctx, "PATCH", `v1/alert/${pathSegment(id)}`, body);
164
120
  return { success: true };
165
121
  },
166
122
  });
@@ -169,8 +125,7 @@ export default function theHiveProject(rl) {
169
125
  description: "Delete an alert",
170
126
  inputSchema: { id: { type: "string", required: true } },
171
127
  async execute(input, ctx) {
172
- const { url, apiKey } = getConn(ctx);
173
- await api(url, apiKey, "DELETE", `/v1/alert/${input.id}`);
128
+ await api(ctx, "DELETE", `v1/alert/${pathSegment(input.id)}`);
174
129
  return { success: true };
175
130
  },
176
131
  });
@@ -183,9 +138,8 @@ export default function theHiveProject(rl) {
183
138
  caseId: { type: "string", required: true },
184
139
  },
185
140
  async execute(input, ctx) {
186
- const { url, apiKey } = getConn(ctx);
187
141
  const p = input;
188
- return api(url, apiKey, "POST", `/alert/${p.alertId}/merge/${p.caseId}`);
142
+ return api(ctx, "POST", `alert/${pathSegment(p.alertId)}/merge/${pathSegment(p.caseId)}`);
189
143
  },
190
144
  });
191
145
  rl.registerAction("alert.promote", {
@@ -196,12 +150,11 @@ export default function theHiveProject(rl) {
196
150
  caseTemplate: { type: "string", required: false },
197
151
  },
198
152
  async execute(input, ctx) {
199
- const { url, apiKey } = getConn(ctx);
200
153
  const p = input;
201
154
  const body = {};
202
155
  if (p.caseTemplate)
203
156
  body.caseTemplate = p.caseTemplate;
204
- return api(url, apiKey, "POST", `/v1/alert/${p.id}/case`, body);
157
+ return api(ctx, "POST", `v1/alert/${pathSegment(p.id)}/case`, body);
205
158
  },
206
159
  });
207
160
  rl.registerAction("alert.setStatus", {
@@ -212,9 +165,8 @@ export default function theHiveProject(rl) {
212
165
  status: { type: "string", required: true },
213
166
  },
214
167
  async execute(input, ctx) {
215
- const { url, apiKey } = getConn(ctx);
216
168
  const p = input;
217
- await api(url, apiKey, "PATCH", `/v1/alert/${p.id}`, {
169
+ await api(ctx, "PATCH", `v1/alert/${pathSegment(p.id)}`, {
218
170
  status: p.status,
219
171
  });
220
172
  return { success: true };
@@ -234,8 +186,7 @@ export default function theHiveProject(rl) {
234
186
  customFields: { type: "object", required: false },
235
187
  },
236
188
  async execute(input, ctx) {
237
- const { url, apiKey } = getConn(ctx);
238
- return api(url, apiKey, "POST", "/v1/case", input);
189
+ return api(ctx, "POST", "v1/case", input);
239
190
  },
240
191
  });
241
192
  rl.registerAction("case.get", {
@@ -243,8 +194,7 @@ export default function theHiveProject(rl) {
243
194
  description: "Get a case by ID",
244
195
  inputSchema: { id: { type: "string", required: true } },
245
196
  async execute(input, ctx) {
246
- const { url, apiKey } = getConn(ctx);
247
- return api(url, apiKey, "POST", "/v1/query", {
197
+ return api(ctx, "POST", "v1/query", {
248
198
  query: [
249
199
  { _name: "getCase", idOrName: input.id },
250
200
  { _name: "page", from: 0, to: 10, extraData: ["attachmentCount"] },
@@ -267,9 +217,8 @@ export default function theHiveProject(rl) {
267
217
  customFields: { type: "object", required: false },
268
218
  },
269
219
  async execute(input, ctx) {
270
- const { url, apiKey } = getConn(ctx);
271
220
  const { id, ...body } = input;
272
- await api(url, apiKey, "PATCH", `/v1/case/${id}`, body);
221
+ await api(ctx, "PATCH", `v1/case/${pathSegment(id)}`, body);
273
222
  return { success: true };
274
223
  },
275
224
  });
@@ -278,8 +227,7 @@ export default function theHiveProject(rl) {
278
227
  description: "Delete a case",
279
228
  inputSchema: { id: { type: "string", required: true } },
280
229
  async execute(input, ctx) {
281
- const { url, apiKey } = getConn(ctx);
282
- await api(url, apiKey, "DELETE", `/v1/case/${input.id}`);
230
+ await api(ctx, "DELETE", `v1/case/${pathSegment(input.id)}`);
283
231
  return { success: true };
284
232
  },
285
233
  });
@@ -289,8 +237,7 @@ export default function theHiveProject(rl) {
289
237
  description: "Get case timeline",
290
238
  inputSchema: { id: { type: "string", required: true } },
291
239
  async execute(input, ctx) {
292
- const { url, apiKey } = getConn(ctx);
293
- return api(url, apiKey, "GET", `/v1/case/${input.id}/timeline`);
240
+ return api(ctx, "GET", `v1/case/${pathSegment(input.id)}/timeline`);
294
241
  },
295
242
  });
296
243
  // ── Task ────────────────────────────────────────────
@@ -306,9 +253,8 @@ export default function theHiveProject(rl) {
306
253
  assignee: { type: "string", required: false },
307
254
  },
308
255
  async execute(input, ctx) {
309
- const { url, apiKey } = getConn(ctx);
310
256
  const { caseId, ...body } = input;
311
- return api(url, apiKey, "POST", `/v1/case/${caseId}/task`, body);
257
+ return api(ctx, "POST", `v1/case/${pathSegment(caseId)}/task`, body);
312
258
  },
313
259
  });
314
260
  rl.registerAction("task.get", {
@@ -316,8 +262,7 @@ export default function theHiveProject(rl) {
316
262
  description: "Get a task by ID",
317
263
  inputSchema: { id: { type: "string", required: true } },
318
264
  async execute(input, ctx) {
319
- const { url, apiKey } = getConn(ctx);
320
- return api(url, apiKey, "POST", "/v1/query", {
265
+ return api(ctx, "POST", "v1/query", {
321
266
  query: [
322
267
  { _name: "getTask", idOrName: input.id },
323
268
  ],
@@ -336,9 +281,8 @@ export default function theHiveProject(rl) {
336
281
  assignee: { type: "string", required: false },
337
282
  },
338
283
  async execute(input, ctx) {
339
- const { url, apiKey } = getConn(ctx);
340
284
  const { id, ...body } = input;
341
- await api(url, apiKey, "PATCH", `/v1/task/${id}`, body);
285
+ await api(ctx, "PATCH", `v1/task/${pathSegment(id)}`, body);
342
286
  return { success: true };
343
287
  },
344
288
  });
@@ -347,8 +291,7 @@ export default function theHiveProject(rl) {
347
291
  description: "Delete a task",
348
292
  inputSchema: { id: { type: "string", required: true } },
349
293
  async execute(input, ctx) {
350
- const { url, apiKey } = getConn(ctx);
351
- await api(url, apiKey, "DELETE", `/v1/task/${input.id}`);
294
+ await api(ctx, "DELETE", `v1/task/${pathSegment(input.id)}`);
352
295
  return { success: true };
353
296
  },
354
297
  });
@@ -380,9 +323,8 @@ export default function theHiveProject(rl) {
380
323
  ioc: { type: "boolean", required: false },
381
324
  },
382
325
  async execute(input, ctx) {
383
- const { url, apiKey } = getConn(ctx);
384
326
  const { createIn, parentId, ...body } = input;
385
- return api(url, apiKey, "POST", `/v1/${createIn}/${parentId}/observable`, body);
327
+ return api(ctx, "POST", `v1/${pathSegment(createIn)}/${pathSegment(parentId)}/observable`, body);
386
328
  },
387
329
  });
388
330
  rl.registerAction("observable.get", {
@@ -390,8 +332,7 @@ export default function theHiveProject(rl) {
390
332
  description: "Get an observable by ID",
391
333
  inputSchema: { id: { type: "string", required: true } },
392
334
  async execute(input, ctx) {
393
- const { url, apiKey } = getConn(ctx);
394
- return api(url, apiKey, "POST", "/v1/query", {
335
+ return api(ctx, "POST", "v1/query", {
395
336
  query: [
396
337
  {
397
338
  _name: "getObservable",
@@ -413,9 +354,8 @@ export default function theHiveProject(rl) {
413
354
  sighted: { type: "boolean", required: false },
414
355
  },
415
356
  async execute(input, ctx) {
416
- const { url, apiKey } = getConn(ctx);
417
357
  const { id, ...body } = input;
418
- await api(url, apiKey, "PATCH", `/v1/observable/${id}`, body);
358
+ await api(ctx, "PATCH", `v1/observable/${pathSegment(id)}`, body);
419
359
  return { success: true };
420
360
  },
421
361
  });
@@ -424,8 +364,7 @@ export default function theHiveProject(rl) {
424
364
  description: "Delete an observable",
425
365
  inputSchema: { id: { type: "string", required: true } },
426
366
  async execute(input, ctx) {
427
- const { url, apiKey } = getConn(ctx);
428
- await api(url, apiKey, "DELETE", `/v1/observable/${input.id}`);
367
+ await api(ctx, "DELETE", `v1/observable/${pathSegment(input.id)}`);
429
368
  return { success: true };
430
369
  },
431
370
  });
@@ -440,9 +379,8 @@ export default function theHiveProject(rl) {
440
379
  message: { type: "string", required: true },
441
380
  },
442
381
  async execute(input, ctx) {
443
- const { url, apiKey } = getConn(ctx);
444
382
  const p = input;
445
- return api(url, apiKey, "POST", `/v1/${p.addTo}/${p.parentId}/comment`, {
383
+ return api(ctx, "POST", `v1/${pathSegment(p.addTo)}/${pathSegment(p.parentId)}/comment`, {
446
384
  message: p.message,
447
385
  });
448
386
  },
@@ -455,9 +393,8 @@ export default function theHiveProject(rl) {
455
393
  message: { type: "string", required: true },
456
394
  },
457
395
  async execute(input, ctx) {
458
- const { url, apiKey } = getConn(ctx);
459
396
  const p = input;
460
- return api(url, apiKey, "PATCH", `/v1/comment/${p.id}`, {
397
+ return api(ctx, "PATCH", `v1/comment/${pathSegment(p.id)}`, {
461
398
  message: p.message,
462
399
  });
463
400
  },
@@ -467,8 +404,7 @@ export default function theHiveProject(rl) {
467
404
  description: "Delete a comment",
468
405
  inputSchema: { id: { type: "string", required: true } },
469
406
  async execute(input, ctx) {
470
- const { url, apiKey } = getConn(ctx);
471
- await api(url, apiKey, "DELETE", `/v1/comment/${input.id}`);
407
+ await api(ctx, "DELETE", `v1/comment/${pathSegment(input.id)}`);
472
408
  return { success: true };
473
409
  },
474
410
  });
@@ -484,9 +420,8 @@ export default function theHiveProject(rl) {
484
420
  includeInTimeline: { type: "string", required: false },
485
421
  },
486
422
  async execute(input, ctx) {
487
- const { url, apiKey } = getConn(ctx);
488
423
  const { taskId, ...body } = input;
489
- return api(url, apiKey, "POST", `/v1/task/${taskId}/log`, body);
424
+ return api(ctx, "POST", `v1/task/${pathSegment(taskId)}/log`, body);
490
425
  },
491
426
  });
492
427
  rl.registerAction("log.get", {
@@ -494,8 +429,7 @@ export default function theHiveProject(rl) {
494
429
  description: "Get a log entry by ID",
495
430
  inputSchema: { id: { type: "string", required: true } },
496
431
  async execute(input, ctx) {
497
- const { url, apiKey } = getConn(ctx);
498
- return api(url, apiKey, "POST", "/v1/query", {
432
+ return api(ctx, "POST", "v1/query", {
499
433
  query: [
500
434
  { _name: "getLog", idOrName: input.id },
501
435
  ],
@@ -507,8 +441,7 @@ export default function theHiveProject(rl) {
507
441
  description: "Delete a log entry",
508
442
  inputSchema: { id: { type: "string", required: true } },
509
443
  async execute(input, ctx) {
510
- const { url, apiKey } = getConn(ctx);
511
- await api(url, apiKey, "DELETE", `/v1/log/${input.id}`);
444
+ await api(ctx, "DELETE", `v1/log/${pathSegment(input.id)}`);
512
445
  return { success: true };
513
446
  },
514
447
  });
@@ -528,10 +461,11 @@ export default function theHiveProject(rl) {
528
461
  content: { type: "string", required: true },
529
462
  },
530
463
  async execute(input, ctx) {
531
- const { url, apiKey } = getConn(ctx);
532
464
  const { caseId, ...body } = input;
533
- const endpoint = caseId ? `/v1/case/${caseId}/page` : "/v1/page";
534
- return api(url, apiKey, "POST", endpoint, body);
465
+ const endpoint = caseId
466
+ ? `v1/case/${pathSegment(caseId)}/page`
467
+ : "v1/page";
468
+ return api(ctx, "POST", endpoint, body);
535
469
  },
536
470
  });
537
471
  rl.registerAction("page.update", {
@@ -546,12 +480,11 @@ export default function theHiveProject(rl) {
546
480
  order: { type: "number", required: false },
547
481
  },
548
482
  async execute(input, ctx) {
549
- const { url, apiKey } = getConn(ctx);
550
483
  const { pageId, caseId, ...body } = input;
551
484
  const endpoint = caseId
552
- ? `/v1/case/${caseId}/page/${pageId}`
553
- : `/v1/page/${pageId}`;
554
- return api(url, apiKey, "PATCH", endpoint, body);
485
+ ? `v1/case/${pathSegment(caseId)}/page/${pathSegment(pageId)}`
486
+ : `v1/page/${pathSegment(pageId)}`;
487
+ return api(ctx, "PATCH", endpoint, body);
555
488
  },
556
489
  });
557
490
  rl.registerAction("page.delete", {
@@ -562,12 +495,11 @@ export default function theHiveProject(rl) {
562
495
  caseId: { type: "string", required: false },
563
496
  },
564
497
  async execute(input, ctx) {
565
- const { url, apiKey } = getConn(ctx);
566
498
  const p = input;
567
499
  const endpoint = p.caseId
568
- ? `/v1/case/${p.caseId}/page/${p.pageId}`
569
- : `/v1/page/${p.pageId}`;
570
- await api(url, apiKey, "DELETE", endpoint);
500
+ ? `v1/case/${pathSegment(p.caseId)}/page/${pathSegment(p.pageId)}`
501
+ : `v1/page/${pathSegment(p.pageId)}`;
502
+ await api(ctx, "DELETE", endpoint);
571
503
  return { success: true };
572
504
  },
573
505
  });
@@ -584,8 +516,7 @@ export default function theHiveProject(rl) {
584
516
  },
585
517
  },
586
518
  async execute(input, ctx) {
587
- const { url, apiKey } = getConn(ctx);
588
- return api(url, apiKey, "POST", "/v1/query", {
519
+ return api(ctx, "POST", "v1/query", {
589
520
  query: input.query,
590
521
  });
591
522
  },
@@ -0,0 +1,26 @@
1
+ import { staticCredential } from "../../_shared/credentials.js";
2
+ /**
3
+ * An API token, sent as a bearer to Todoist's REST v2 and Sync v9
4
+ * surfaces on the one API origin.
5
+ */
6
+ export const todoistCredential = staticCredential({
7
+ id: "todoist",
8
+ auth: { kind: "bearer" },
9
+ local: { secret: "apiToken" },
10
+ targets: {
11
+ rest: {
12
+ baseUrl: "https://api.todoist.com/rest/v2/",
13
+ methods: ["GET", "POST", "DELETE"],
14
+ },
15
+ sync: {
16
+ baseUrl: "https://api.todoist.com/sync/v9/",
17
+ methods: ["POST"],
18
+ },
19
+ },
20
+ probe: {
21
+ target: "rest",
22
+ path: "projects",
23
+ method: "GET",
24
+ acceptedStatuses: [200],
25
+ },
26
+ });