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,31 +1,21 @@
1
- async function api(token, method, endpoint, body, qs) {
2
- const url = new URL(`https://slack.com/api${endpoint}`);
3
- if (qs) {
4
- for (const [k, v] of Object.entries(qs)) {
5
- if (v !== undefined && v !== null)
6
- url.searchParams.set(k, String(v));
7
- }
8
- }
9
- const init = {
1
+ import { answerFailed, credentialJson } from "../../_shared/credentials.js";
2
+ import { slackCredential } from "./credentials.js";
3
+ async function api(ctx, method, path, body, query) {
4
+ const data = (await credentialJson(ctx, slackCredential, "slack", {
5
+ target: "api",
6
+ path,
10
7
  method,
11
- headers: {
12
- Authorization: `Bearer ${token}`,
13
- "Content-Type": "application/json; charset=utf-8",
14
- },
15
- };
16
- if (body && Object.keys(body).length > 0)
17
- init.body = JSON.stringify(body);
18
- const res = await fetch(url.toString(), init);
19
- if (!res.ok)
20
- throw new Error(`Slack HTTP error ${res.status}: ${await res.text()}`);
21
- const data = (await res.json());
8
+ query,
9
+ ...(body && Object.keys(body).length > 0 ? { json: body } : {}),
10
+ }));
22
11
  if (data.ok === false)
23
- throw new Error(`Slack API error: ${data.error}`);
12
+ throw answerFailed("slack", { code: data.error });
24
13
  return data;
25
14
  }
26
15
  export default function slack(rl) {
27
16
  rl.setName("slack");
28
17
  rl.setVersion("0.1.0");
18
+ rl.setCredential(slackCredential);
29
19
  rl.setConnectionSchema({
30
20
  accessToken: {
31
21
  type: "string",
@@ -34,7 +24,6 @@ export default function slack(rl) {
34
24
  env: "SLACK_ACCESS_TOKEN",
35
25
  },
36
26
  });
37
- const t = (ctx) => ctx.connection.config.accessToken;
38
27
  // ── Message ─────────────────────────────────────────
39
28
  rl.registerAction("message.post", {
40
29
  access: "write",
@@ -60,7 +49,7 @@ export default function slack(rl) {
60
49
  body.reply_broadcast = true;
61
50
  if (p.unfurlLinks !== undefined)
62
51
  body.unfurl_links = p.unfurlLinks;
63
- return api(t(ctx), "POST", "/chat.postMessage", body);
52
+ return api(ctx, "POST", "chat.postMessage", body);
64
53
  },
65
54
  });
66
55
  rl.registerAction("message.update", {
@@ -73,7 +62,7 @@ export default function slack(rl) {
73
62
  blocks: { type: "object", required: false },
74
63
  },
75
64
  async execute(input, ctx) {
76
- return api(t(ctx), "POST", "/chat.update", input);
65
+ return api(ctx, "POST", "chat.update", input);
77
66
  },
78
67
  });
79
68
  rl.registerAction("message.delete", {
@@ -84,7 +73,7 @@ export default function slack(rl) {
84
73
  ts: { type: "string", required: true },
85
74
  },
86
75
  async execute(input, ctx) {
87
- return api(t(ctx), "POST", "/chat.delete", input);
76
+ return api(ctx, "POST", "chat.delete", input);
88
77
  },
89
78
  });
90
79
  rl.registerAction("message.getPermalink", {
@@ -96,7 +85,7 @@ export default function slack(rl) {
96
85
  },
97
86
  async execute(input, ctx) {
98
87
  const p = input;
99
- return api(t(ctx), "GET", "/chat.getPermalink", undefined, {
88
+ return api(ctx, "GET", "chat.getPermalink", undefined, {
100
89
  channel: p.channel,
101
90
  message_ts: p.messageTs,
102
91
  });
@@ -121,7 +110,7 @@ export default function slack(rl) {
121
110
  qs.sort = p.sort === "relevance" ? "score" : "timestamp";
122
111
  if (p.limit)
123
112
  qs.count = p.limit;
124
- const data = (await api(t(ctx), "POST", "/search.messages", undefined, qs));
113
+ const data = (await api(ctx, "POST", "search.messages", undefined, qs));
125
114
  return data.messages?.matches;
126
115
  },
127
116
  });
@@ -135,7 +124,7 @@ export default function slack(rl) {
135
124
  },
136
125
  async execute(input, ctx) {
137
126
  const p = input;
138
- const data = (await api(t(ctx), "POST", "/conversations.create", {
127
+ const data = (await api(ctx, "POST", "conversations.create", {
139
128
  name: p.name,
140
129
  is_private: p.isPrivate ?? false,
141
130
  }));
@@ -147,7 +136,9 @@ export default function slack(rl) {
147
136
  description: "Get channel info",
148
137
  inputSchema: { channel: { type: "string", required: true } },
149
138
  async execute(input, ctx) {
150
- const data = (await api(t(ctx), "POST", "/conversations.info", undefined, { channel: input.channel }));
139
+ const data = (await api(ctx, "POST", "conversations.info", undefined, {
140
+ channel: input.channel,
141
+ }));
151
142
  return data.channel;
152
143
  },
153
144
  });
@@ -172,7 +163,7 @@ export default function slack(rl) {
172
163
  qs.limit = p.limit;
173
164
  if (p.excludeArchived)
174
165
  qs.exclude_archived = true;
175
- const data = (await api(t(ctx), "GET", "/conversations.list", undefined, qs));
166
+ const data = (await api(ctx, "GET", "conversations.list", undefined, qs));
176
167
  return data.channels;
177
168
  },
178
169
  });
@@ -194,7 +185,7 @@ export default function slack(rl) {
194
185
  qs.oldest = new Date(p.oldest).getTime() / 1000;
195
186
  if (p.latest)
196
187
  qs.latest = new Date(p.latest).getTime() / 1000;
197
- const data = (await api(t(ctx), "GET", "/conversations.history", undefined, qs));
188
+ const data = (await api(ctx, "GET", "conversations.history", undefined, qs));
198
189
  return data.messages;
199
190
  },
200
191
  });
@@ -211,7 +202,7 @@ export default function slack(rl) {
211
202
  const qs = { channel: p.channel, ts: p.ts };
212
203
  if (p.limit)
213
204
  qs.limit = p.limit;
214
- const data = (await api(t(ctx), "GET", "/conversations.replies", undefined, qs));
205
+ const data = (await api(ctx, "GET", "conversations.replies", undefined, qs));
215
206
  return data.messages;
216
207
  },
217
208
  });
@@ -228,7 +219,7 @@ export default function slack(rl) {
228
219
  },
229
220
  async execute(input, ctx) {
230
221
  const p = input;
231
- const data = (await api(t(ctx), "POST", "/conversations.invite", {
222
+ const data = (await api(ctx, "POST", "conversations.invite", {
232
223
  channel: p.channel,
233
224
  users: p.users,
234
225
  }));
@@ -243,7 +234,7 @@ export default function slack(rl) {
243
234
  user: { type: "string", required: true },
244
235
  },
245
236
  async execute(input, ctx) {
246
- return api(t(ctx), "POST", "/conversations.kick", input);
237
+ return api(ctx, "POST", "conversations.kick", input);
247
238
  },
248
239
  });
249
240
  rl.registerAction("channel.join", {
@@ -251,7 +242,7 @@ export default function slack(rl) {
251
242
  description: "Join a channel",
252
243
  inputSchema: { channel: { type: "string", required: true } },
253
244
  async execute(input, ctx) {
254
- const data = (await api(t(ctx), "POST", "/conversations.join", {
245
+ const data = (await api(ctx, "POST", "conversations.join", {
255
246
  channel: input.channel,
256
247
  }));
257
248
  return data.channel;
@@ -262,7 +253,7 @@ export default function slack(rl) {
262
253
  description: "Leave a channel",
263
254
  inputSchema: { channel: { type: "string", required: true } },
264
255
  async execute(input, ctx) {
265
- return api(t(ctx), "POST", "/conversations.leave", {
256
+ return api(ctx, "POST", "conversations.leave", {
266
257
  channel: input.channel,
267
258
  });
268
259
  },
@@ -272,7 +263,7 @@ export default function slack(rl) {
272
263
  description: "Archive a channel",
273
264
  inputSchema: { channel: { type: "string", required: true } },
274
265
  async execute(input, ctx) {
275
- return api(t(ctx), "POST", "/conversations.archive", {
266
+ return api(ctx, "POST", "conversations.archive", {
276
267
  channel: input.channel,
277
268
  });
278
269
  },
@@ -282,7 +273,7 @@ export default function slack(rl) {
282
273
  description: "Unarchive a channel",
283
274
  inputSchema: { channel: { type: "string", required: true } },
284
275
  async execute(input, ctx) {
285
- return api(t(ctx), "POST", "/conversations.unarchive", {
276
+ return api(ctx, "POST", "conversations.unarchive", {
286
277
  channel: input.channel,
287
278
  });
288
279
  },
@@ -295,7 +286,7 @@ export default function slack(rl) {
295
286
  name: { type: "string", required: true },
296
287
  },
297
288
  async execute(input, ctx) {
298
- const data = (await api(t(ctx), "POST", "/conversations.rename", input));
289
+ const data = (await api(ctx, "POST", "conversations.rename", input));
299
290
  return data.channel;
300
291
  },
301
292
  });
@@ -307,7 +298,7 @@ export default function slack(rl) {
307
298
  topic: { type: "string", required: true },
308
299
  },
309
300
  async execute(input, ctx) {
310
- const data = (await api(t(ctx), "POST", "/conversations.setTopic", input));
301
+ const data = (await api(ctx, "POST", "conversations.setTopic", input));
311
302
  return data.channel;
312
303
  },
313
304
  });
@@ -319,7 +310,7 @@ export default function slack(rl) {
319
310
  purpose: { type: "string", required: true },
320
311
  },
321
312
  async execute(input, ctx) {
322
- const data = (await api(t(ctx), "POST", "/conversations.setPurpose", input));
313
+ const data = (await api(ctx, "POST", "conversations.setPurpose", input));
323
314
  return data.channel;
324
315
  },
325
316
  });
@@ -335,7 +326,7 @@ export default function slack(rl) {
335
326
  const qs = { channel: p.channel };
336
327
  if (p.limit)
337
328
  qs.limit = p.limit;
338
- const data = (await api(t(ctx), "GET", "/conversations.members", undefined, qs));
329
+ const data = (await api(ctx, "GET", "conversations.members", undefined, qs));
339
330
  return data.members.map((m) => ({ member: m }));
340
331
  },
341
332
  });
@@ -353,7 +344,7 @@ export default function slack(rl) {
353
344
  },
354
345
  },
355
346
  async execute(input, ctx) {
356
- return api(t(ctx), "POST", "/reactions.add", input);
347
+ return api(ctx, "POST", "reactions.add", input);
357
348
  },
358
349
  });
359
350
  rl.registerAction("reaction.remove", {
@@ -365,7 +356,7 @@ export default function slack(rl) {
365
356
  name: { type: "string", required: true },
366
357
  },
367
358
  async execute(input, ctx) {
368
- return api(t(ctx), "POST", "/reactions.remove", input);
359
+ return api(ctx, "POST", "reactions.remove", input);
369
360
  },
370
361
  });
371
362
  rl.registerAction("reaction.get", {
@@ -376,7 +367,7 @@ export default function slack(rl) {
376
367
  timestamp: { type: "string", required: true },
377
368
  },
378
369
  async execute(input, ctx) {
379
- return api(t(ctx), "GET", "/reactions.get", undefined, input);
370
+ return api(ctx, "GET", "reactions.get", undefined, input);
380
371
  },
381
372
  });
382
373
  // ── User ────────────────────────────────────────────
@@ -385,7 +376,7 @@ export default function slack(rl) {
385
376
  description: "Get user info",
386
377
  inputSchema: { user: { type: "string", required: true } },
387
378
  async execute(input, ctx) {
388
- const data = (await api(t(ctx), "GET", "/users.info", undefined, {
379
+ const data = (await api(ctx, "GET", "users.info", undefined, {
389
380
  user: input.user,
390
381
  }));
391
382
  return data.user;
@@ -399,7 +390,7 @@ export default function slack(rl) {
399
390
  const qs = {};
400
391
  if (input?.limit)
401
392
  qs.limit = input.limit;
402
- const data = (await api(t(ctx), "GET", "/users.list", undefined, qs));
393
+ const data = (await api(ctx, "GET", "users.list", undefined, qs));
403
394
  return data.members;
404
395
  },
405
396
  });
@@ -408,7 +399,7 @@ export default function slack(rl) {
408
399
  description: "Get a user's presence",
409
400
  inputSchema: { user: { type: "string", required: true } },
410
401
  async execute(input, ctx) {
411
- return api(t(ctx), "GET", "/users.getPresence", undefined, {
402
+ return api(ctx, "GET", "users.getPresence", undefined, {
412
403
  user: input.user,
413
404
  });
414
405
  },
@@ -418,7 +409,7 @@ export default function slack(rl) {
418
409
  description: "Get a user's profile",
419
410
  inputSchema: { user: { type: "string", required: true } },
420
411
  async execute(input, ctx) {
421
- const data = (await api(t(ctx), "GET", "/users.profile.get", undefined, {
412
+ const data = (await api(ctx, "GET", "users.profile.get", undefined, {
422
413
  user: input.user,
423
414
  }));
424
415
  return data.profile;
@@ -435,7 +426,7 @@ export default function slack(rl) {
435
426
  },
436
427
  },
437
428
  async execute(input, ctx) {
438
- const data = (await api(t(ctx), "POST", "/users.profile.set", {
429
+ const data = (await api(ctx, "POST", "users.profile.set", {
439
430
  profile: input.profile,
440
431
  }));
441
432
  return data.profile;
@@ -451,7 +442,7 @@ export default function slack(rl) {
451
442
  description: { type: "string", required: false },
452
443
  },
453
444
  async execute(input, ctx) {
454
- const data = (await api(t(ctx), "POST", "/usergroups.create", input));
445
+ const data = (await api(ctx, "POST", "usergroups.create", input));
455
446
  return data.usergroup;
456
447
  },
457
448
  });
@@ -463,7 +454,7 @@ export default function slack(rl) {
463
454
  const qs = {};
464
455
  if (input?.includeUsers)
465
456
  qs.include_users = true;
466
- const data = (await api(t(ctx), "GET", "/usergroups.list", undefined, qs));
457
+ const data = (await api(ctx, "GET", "usergroups.list", undefined, qs));
467
458
  return data.usergroups;
468
459
  },
469
460
  });
@@ -477,7 +468,7 @@ export default function slack(rl) {
477
468
  description: { type: "string", required: false },
478
469
  },
479
470
  async execute(input, ctx) {
480
- const data = (await api(t(ctx), "POST", "/usergroups.update", input));
471
+ const data = (await api(ctx, "POST", "usergroups.update", input));
481
472
  return data.usergroup;
482
473
  },
483
474
  });
@@ -486,7 +477,7 @@ export default function slack(rl) {
486
477
  description: "Enable a user group",
487
478
  inputSchema: { usergroup: { type: "string", required: true } },
488
479
  async execute(input, ctx) {
489
- const data = (await api(t(ctx), "POST", "/usergroups.enable", {
480
+ const data = (await api(ctx, "POST", "usergroups.enable", {
490
481
  usergroup: input.usergroup,
491
482
  }));
492
483
  return data.usergroup;
@@ -497,7 +488,7 @@ export default function slack(rl) {
497
488
  description: "Disable a user group",
498
489
  inputSchema: { usergroup: { type: "string", required: true } },
499
490
  async execute(input, ctx) {
500
- const data = (await api(t(ctx), "POST", "/usergroups.disable", {
491
+ const data = (await api(ctx, "POST", "usergroups.disable", {
501
492
  usergroup: input.usergroup,
502
493
  }));
503
494
  return data.usergroup;
@@ -509,7 +500,7 @@ export default function slack(rl) {
509
500
  description: "Get file info",
510
501
  inputSchema: { file: { type: "string", required: true } },
511
502
  async execute(input, ctx) {
512
- const data = (await api(t(ctx), "GET", "/files.info", undefined, {
503
+ const data = (await api(ctx, "GET", "files.info", undefined, {
513
504
  file: input.file,
514
505
  }));
515
506
  return data.file;
@@ -532,7 +523,7 @@ export default function slack(rl) {
532
523
  qs.count = p.limit;
533
524
  if (p.types)
534
525
  qs.types = p.types;
535
- const data = (await api(t(ctx), "GET", "/files.list", undefined, qs));
526
+ const data = (await api(ctx, "GET", "files.list", undefined, qs));
536
527
  return data.files;
537
528
  },
538
529
  });
@@ -546,7 +537,7 @@ export default function slack(rl) {
546
537
  file: { type: "string", required: false },
547
538
  },
548
539
  async execute(input, ctx) {
549
- return api(t(ctx), "POST", "/stars.add", input);
540
+ return api(ctx, "POST", "stars.add", input);
550
541
  },
551
542
  });
552
543
  rl.registerAction("star.remove", {
@@ -558,7 +549,7 @@ export default function slack(rl) {
558
549
  file: { type: "string", required: false },
559
550
  },
560
551
  async execute(input, ctx) {
561
- return api(t(ctx), "POST", "/stars.remove", input);
552
+ return api(ctx, "POST", "stars.remove", input);
562
553
  },
563
554
  });
564
555
  rl.registerAction("star.list", {
@@ -569,7 +560,7 @@ export default function slack(rl) {
569
560
  const qs = {};
570
561
  if (input?.limit)
571
562
  qs.limit = input.limit;
572
- const data = (await api(t(ctx), "GET", "/stars.list", undefined, qs));
563
+ const data = (await api(ctx, "GET", "stars.list", undefined, qs));
573
564
  return data.items;
574
565
  },
575
566
  });
@@ -0,0 +1,17 @@
1
+ import { staticCredential } from "../../_shared/credentials.js";
2
+ /**
3
+ * An API key, sent as the X-Api-Key header to seven's gateway. SentWith
4
+ * is the public client-name companion header seven asks integrators for.
5
+ */
6
+ export const sms77Credential = staticCredential({
7
+ id: "sms77",
8
+ auth: { kind: "apiKey", header: "X-Api-Key" },
9
+ local: { secret: "apiKey" },
10
+ targets: {
11
+ api: {
12
+ baseUrl: "https://gateway.seven.io/api/",
13
+ methods: ["POST"],
14
+ allowedHeaders: ["SentWith"],
15
+ },
16
+ },
17
+ });
@@ -1,22 +1,18 @@
1
- const BASE = "https://gateway.seven.io/api";
2
- async function apiRequest(apiKey, endpoint, body) {
3
- const form = new URLSearchParams();
4
- for (const [k, v] of Object.entries(body)) {
5
- if (v !== undefined && v !== null)
6
- form.set(k, String(v));
7
- }
8
- const res = await fetch(`${BASE}${endpoint}`, {
1
+ import { credentialJson } from "../../_shared/credentials.js";
2
+ import { sms77Credential } from "./credentials.js";
3
+ function apiRequest(ctx, endpoint, body) {
4
+ return credentialJson(ctx, sms77Credential, "sms77", {
5
+ target: "api",
6
+ path: endpoint,
9
7
  method: "POST",
10
- headers: { "X-Api-Key": apiKey, SentWith: "runline" },
11
- body: form,
8
+ form: body,
9
+ headers: { SentWith: "runline" },
12
10
  });
13
- if (!res.ok)
14
- throw new Error(`seven API error ${res.status}: ${await res.text()}`);
15
- return res.json();
16
11
  }
17
12
  export default function sms77(rl) {
18
13
  rl.setName("sms77");
19
14
  rl.setVersion("0.1.0");
15
+ rl.setCredential(sms77Credential);
20
16
  rl.setConnectionSchema({
21
17
  apiKey: {
22
18
  type: "string",
@@ -25,7 +21,6 @@ export default function sms77(rl) {
25
21
  env: "SMS77_API_KEY",
26
22
  },
27
23
  });
28
- const key = (ctx) => ctx.connection.config.apiKey;
29
24
  rl.registerAction("sms.send", {
30
25
  access: "write",
31
26
  description: "Send an SMS via seven",
@@ -64,7 +59,7 @@ export default function sms77(rl) {
64
59
  body.delay = p.delay;
65
60
  if (p.ttl)
66
61
  body.ttl = p.ttl;
67
- return apiRequest(key(ctx), "/sms", body);
62
+ return apiRequest(ctx, "sms", body);
68
63
  },
69
64
  });
70
65
  rl.registerAction("voice.send", {
@@ -80,7 +75,7 @@ export default function sms77(rl) {
80
75
  const body = { to: p.to, text: p.message };
81
76
  if (p.from)
82
77
  body.from = p.from;
83
- return apiRequest(key(ctx), "/voice", body);
78
+ return apiRequest(ctx, "voice", body);
84
79
  },
85
80
  });
86
81
  }
@@ -0,0 +1,19 @@
1
+ import { httpsBase, staticCredential } from "../../_shared/credentials.js";
2
+ /** An auth token, sent as a bearer to the configured management origin. */
3
+ export const splunkCredential = staticCredential({
4
+ id: "splunk",
5
+ auth: { kind: "bearer" },
6
+ local: { secret: "authToken" },
7
+ targets: (config) => ({
8
+ api: {
9
+ baseUrl: httpsBase(config.baseUrl, "services/"),
10
+ methods: ["GET", "POST", "DELETE"],
11
+ },
12
+ }),
13
+ probe: {
14
+ target: "api",
15
+ path: "authentication/current-context?output_mode=json",
16
+ method: "GET",
17
+ acceptedStatuses: [200],
18
+ },
19
+ });