@oomol-lab/open-connector 1.9.1 → 1.9.2

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 (461) hide show
  1. package/assets/open-connector/catalog/apps/aisa.json +1946 -56
  2. package/assets/open-connector/catalog/apps/akta.json +1181 -0
  3. package/assets/open-connector/catalog/apps/asana.json +110 -0
  4. package/assets/open-connector/catalog/apps/calendly.json +103 -0
  5. package/assets/open-connector/catalog/apps/clickup.json +104 -0
  6. package/assets/open-connector/catalog/apps/cloro.json +9289 -0
  7. package/assets/open-connector/catalog/apps/contextdev.json +20670 -0
  8. package/assets/open-connector/catalog/apps/deepseek.json +177 -0
  9. package/assets/open-connector/catalog/apps/defillama.json +23747 -0
  10. package/assets/open-connector/catalog/apps/fireflies.json +103 -0
  11. package/assets/open-connector/catalog/apps/fundable.json +7926 -0
  12. package/assets/open-connector/catalog/apps/intercom.json +110 -0
  13. package/assets/open-connector/catalog/apps/jira.json +110 -0
  14. package/assets/open-connector/catalog/apps/keenable.json +235 -0
  15. package/assets/open-connector/catalog/apps/kolsprite_mcp.json +1227 -0
  16. package/assets/open-connector/catalog/apps/litescrape.json +52514 -0
  17. package/assets/open-connector/catalog/apps/magichour.json +5926 -0
  18. package/assets/open-connector/catalog/apps/minimax.json +24 -14
  19. package/assets/open-connector/catalog/apps/notion.json +731 -76
  20. package/assets/open-connector/catalog/apps/octen.json +5248 -0
  21. package/assets/open-connector/catalog/apps/openrouter.json +10 -0
  22. package/assets/open-connector/catalog/apps/orbit.json +3574 -0
  23. package/assets/open-connector/catalog/apps/pandadoc.json +68 -0
  24. package/assets/open-connector/catalog/apps/pipedrive.json +86 -0
  25. package/assets/open-connector/catalog/apps/ploid.json +9802 -0
  26. package/assets/open-connector/catalog/apps/resend.json +100 -0
  27. package/assets/open-connector/catalog/apps/salesforce.json +2487 -119
  28. package/assets/open-connector/catalog/apps/saperly.json +7056 -0
  29. package/assets/open-connector/catalog/apps/search1api.json +2382 -0
  30. package/assets/open-connector/catalog/apps/sentry.json +129 -0
  31. package/assets/open-connector/catalog/apps/slackbot.json +230 -1
  32. package/assets/open-connector/catalog/apps/surf.json +11378 -0
  33. package/assets/open-connector/catalog/apps/tally.json +113 -0
  34. package/assets/open-connector/catalog/apps/tinyfish.json +6154 -0
  35. package/assets/open-connector/catalog/apps/typeform.json +90 -1
  36. package/assets/open-connector/catalog/apps/vaquill.json +5944 -0
  37. package/assets/open-connector/catalog/apps/vercel.json +110 -0
  38. package/assets/open-connector/catalog/apps/weixin_store.json +1256 -7
  39. package/assets/open-connector/catalog/apps/zoom.json +112 -0
  40. package/assets/open-connector/catalog/apps-index.json +1 -1
  41. package/package.json +1 -1
  42. package/src/core/json-schema.d.ts +11 -3
  43. package/src/core/json-schema.js +13 -3
  44. package/src/providers/action-contracts.generated.d.ts +23 -6
  45. package/src/providers/aisa/executors.js +238 -6
  46. package/src/providers/aisa/firecrawl-actions.d.ts +9 -0
  47. package/src/providers/aisa/firecrawl-actions.js +115 -0
  48. package/src/providers/akta/actions.d.ts +9 -0
  49. package/src/providers/akta/actions.js +420 -0
  50. package/src/providers/akta/executors.d.ts +4 -0
  51. package/src/providers/akta/executors.js +103 -0
  52. package/src/providers/asana/executors.d.ts +2 -0
  53. package/src/providers/asana/executors.js +2 -0
  54. package/src/providers/asana/trigger-on-task-event.d.ts +2 -0
  55. package/src/providers/asana/trigger-on-task-event.definition.d.ts +4 -0
  56. package/src/providers/asana/trigger-on-task-event.definition.js +42 -0
  57. package/src/providers/asana/trigger-on-task-event.js +160 -0
  58. package/src/providers/calendly/executors.d.ts +2 -0
  59. package/src/providers/calendly/executors.js +2 -0
  60. package/src/providers/calendly/trigger-on-booking-event.d.ts +2 -0
  61. package/src/providers/calendly/trigger-on-booking-event.definition.d.ts +5 -0
  62. package/src/providers/calendly/trigger-on-booking-event.definition.js +42 -0
  63. package/src/providers/calendly/trigger-on-booking-event.js +144 -0
  64. package/src/providers/clickup/executors.d.ts +2 -0
  65. package/src/providers/clickup/executors.js +2 -0
  66. package/src/providers/clickup/trigger-on-task-event.d.ts +2 -0
  67. package/src/providers/clickup/trigger-on-task-event.definition.d.ts +4 -0
  68. package/src/providers/clickup/trigger-on-task-event.definition.js +41 -0
  69. package/src/providers/clickup/trigger-on-task-event.js +94 -0
  70. package/src/providers/cloro/actions.d.ts +12 -0
  71. package/src/providers/cloro/actions.js +155 -0
  72. package/src/providers/cloro/executors.d.ts +4 -0
  73. package/src/providers/cloro/executors.js +67 -0
  74. package/src/providers/cloro/inputs.d.ts +10 -0
  75. package/src/providers/cloro/inputs.js +680 -0
  76. package/src/providers/contextdev/actions.d.ts +14 -0
  77. package/src/providers/contextdev/actions.js +647 -0
  78. package/src/providers/contextdev/executors.d.ts +4 -0
  79. package/src/providers/contextdev/executors.js +109 -0
  80. package/src/providers/contextdev/files.d.ts +3 -0
  81. package/src/providers/contextdev/files.js +49 -0
  82. package/src/providers/contextdev/input-schemas.d.ts +49 -0
  83. package/src/providers/contextdev/input-schemas.js +3082 -0
  84. package/src/providers/contextdev/output-schemas.d.ts +49 -0
  85. package/src/providers/contextdev/output-schemas.js +1599 -0
  86. package/src/providers/deepseek/executors.d.ts +0 -5
  87. package/src/providers/deepseek/executors.js +38 -25
  88. package/src/providers/defillama/actions.d.ts +24 -0
  89. package/src/providers/defillama/actions.js +24 -0
  90. package/src/providers/defillama/dimensions-definitions.d.ts +2 -0
  91. package/src/providers/defillama/dimensions-definitions.js +1387 -0
  92. package/src/providers/defillama/ecosystem-definitions.d.ts +2 -0
  93. package/src/providers/defillama/ecosystem-definitions.js +758 -0
  94. package/src/providers/defillama/equities-definitions.d.ts +2 -0
  95. package/src/providers/defillama/equities-definitions.js +733 -0
  96. package/src/providers/defillama/executors.d.ts +4 -0
  97. package/src/providers/defillama/executors.js +196 -0
  98. package/src/providers/defillama/markets-definitions.d.ts +2 -0
  99. package/src/providers/defillama/markets-definitions.js +624 -0
  100. package/src/providers/defillama/shared-schemas.d.ts +71 -0
  101. package/src/providers/defillama/shared-schemas.js +157 -0
  102. package/src/providers/defillama/tvl-definitions.d.ts +2 -0
  103. package/src/providers/defillama/tvl-definitions.js +546 -0
  104. package/src/providers/defillama/yields-definitions.d.ts +2 -0
  105. package/src/providers/defillama/yields-definitions.js +766 -0
  106. package/src/providers/feishu_app_bot/trigger-on-event.js +2 -0
  107. package/src/providers/fireflies/executors.d.ts +2 -0
  108. package/src/providers/fireflies/executors.js +2 -0
  109. package/src/providers/fireflies/trigger-on-meeting-ready.d.ts +2 -0
  110. package/src/providers/fireflies/trigger-on-meeting-ready.definition.d.ts +4 -0
  111. package/src/providers/fireflies/trigger-on-meeting-ready.definition.js +44 -0
  112. package/src/providers/fireflies/trigger-on-meeting-ready.js +60 -0
  113. package/src/providers/fundable/actions.d.ts +8 -0
  114. package/src/providers/fundable/actions.js +1515 -0
  115. package/src/providers/fundable/executors.d.ts +4 -0
  116. package/src/providers/fundable/executors.js +74 -0
  117. package/src/providers/gmail/message.d.ts +1 -6
  118. package/src/providers/gmail/message.js +1 -1
  119. package/src/providers/intercom/executors.d.ts +2 -0
  120. package/src/providers/intercom/executors.js +2 -0
  121. package/src/providers/intercom/trigger-on-conversation-event.d.ts +2 -0
  122. package/src/providers/intercom/trigger-on-conversation-event.definition.d.ts +4 -0
  123. package/src/providers/intercom/trigger-on-conversation-event.definition.js +42 -0
  124. package/src/providers/intercom/trigger-on-conversation-event.js +23 -0
  125. package/src/providers/jira/executors.d.ts +2 -0
  126. package/src/providers/jira/executors.js +2 -0
  127. package/src/providers/jira/trigger-on-issue-event.d.ts +2 -0
  128. package/src/providers/jira/trigger-on-issue-event.definition.d.ts +4 -0
  129. package/src/providers/jira/trigger-on-issue-event.definition.js +44 -0
  130. package/src/providers/jira/trigger-on-issue-event.js +116 -0
  131. package/src/providers/jira/trigger-resource.d.ts +4 -0
  132. package/src/providers/jira/trigger-resource.js +141 -0
  133. package/src/providers/keenable/executors.d.ts +4 -0
  134. package/src/providers/keenable/executors.js +20 -0
  135. package/src/providers/keenable/runtime.d.ts +26 -0
  136. package/src/providers/keenable/runtime.js +89 -0
  137. package/src/providers/kolsprite_mcp/actions.d.ts +2 -0
  138. package/src/providers/kolsprite_mcp/actions.js +519 -0
  139. package/src/providers/kolsprite_mcp/executors.d.ts +4 -0
  140. package/src/providers/kolsprite_mcp/executors.js +89 -0
  141. package/src/providers/litescrape/actions.d.ts +12 -0
  142. package/src/providers/litescrape/actions.js +124 -0
  143. package/src/providers/litescrape/airbnb-schemas.d.ts +2 -0
  144. package/src/providers/litescrape/airbnb-schemas.js +72 -0
  145. package/src/providers/litescrape/aliexpress-schemas.d.ts +2 -0
  146. package/src/providers/litescrape/aliexpress-schemas.js +52 -0
  147. package/src/providers/litescrape/amazon-schemas.d.ts +2 -0
  148. package/src/providers/litescrape/amazon-schemas.js +358 -0
  149. package/src/providers/litescrape/apartments-schemas.d.ts +2 -0
  150. package/src/providers/litescrape/apartments-schemas.js +45 -0
  151. package/src/providers/litescrape/apple-schemas.d.ts +2 -0
  152. package/src/providers/litescrape/apple-schemas.js +215 -0
  153. package/src/providers/litescrape/ashby-schemas.d.ts +2 -0
  154. package/src/providers/litescrape/ashby-schemas.js +82 -0
  155. package/src/providers/litescrape/baidu-schemas.d.ts +2 -0
  156. package/src/providers/litescrape/baidu-schemas.js +31 -0
  157. package/src/providers/litescrape/bestbuy-schemas.d.ts +2 -0
  158. package/src/providers/litescrape/bestbuy-schemas.js +56 -0
  159. package/src/providers/litescrape/bing-schemas.d.ts +2 -0
  160. package/src/providers/litescrape/bing-schemas.js +315 -0
  161. package/src/providers/litescrape/brave-schemas.d.ts +2 -0
  162. package/src/providers/litescrape/brave-schemas.js +101 -0
  163. package/src/providers/litescrape/copilot-schemas.d.ts +2 -0
  164. package/src/providers/litescrape/copilot-schemas.js +590 -0
  165. package/src/providers/litescrape/duckduckgo-schemas.d.ts +2 -0
  166. package/src/providers/litescrape/duckduckgo-schemas.js +64 -0
  167. package/src/providers/litescrape/ebay-schemas.d.ts +2 -0
  168. package/src/providers/litescrape/ebay-schemas.js +300 -0
  169. package/src/providers/litescrape/etsy-schemas.d.ts +2 -0
  170. package/src/providers/litescrape/etsy-schemas.js +52 -0
  171. package/src/providers/litescrape/eventbrite-schemas.d.ts +2 -0
  172. package/src/providers/litescrape/eventbrite-schemas.js +43 -0
  173. package/src/providers/litescrape/executors.d.ts +4 -0
  174. package/src/providers/litescrape/executors.js +138 -0
  175. package/src/providers/litescrape/facebook-schemas.d.ts +2 -0
  176. package/src/providers/litescrape/facebook-schemas.js +283 -0
  177. package/src/providers/litescrape/glassdoor-schemas.d.ts +2 -0
  178. package/src/providers/litescrape/glassdoor-schemas.js +147 -0
  179. package/src/providers/litescrape/google-schemas.d.ts +2 -0
  180. package/src/providers/litescrape/google-schemas.js +1686 -0
  181. package/src/providers/litescrape/homedepot-schemas.d.ts +2 -0
  182. package/src/providers/litescrape/homedepot-schemas.js +58 -0
  183. package/src/providers/litescrape/homes-schemas.d.ts +2 -0
  184. package/src/providers/litescrape/homes-schemas.js +45 -0
  185. package/src/providers/litescrape/ikea-schemas.d.ts +2 -0
  186. package/src/providers/litescrape/ikea-schemas.js +56 -0
  187. package/src/providers/litescrape/indeed-schemas.d.ts +2 -0
  188. package/src/providers/litescrape/indeed-schemas.js +141 -0
  189. package/src/providers/litescrape/instagram-schemas.d.ts +2 -0
  190. package/src/providers/litescrape/instagram-schemas.js +234 -0
  191. package/src/providers/litescrape/kroger-schemas.d.ts +2 -0
  192. package/src/providers/litescrape/kroger-schemas.js +62 -0
  193. package/src/providers/litescrape/levels-schemas.d.ts +2 -0
  194. package/src/providers/litescrape/levels-schemas.js +153 -0
  195. package/src/providers/litescrape/naver-schemas.d.ts +2 -0
  196. package/src/providers/litescrape/naver-schemas.js +107 -0
  197. package/src/providers/litescrape/realtor-schemas.d.ts +2 -0
  198. package/src/providers/litescrape/realtor-schemas.js +47 -0
  199. package/src/providers/litescrape/redfin-schemas.d.ts +2 -0
  200. package/src/providers/litescrape/redfin-schemas.js +112 -0
  201. package/src/providers/litescrape/shared.d.ts +9 -0
  202. package/src/providers/litescrape/shared.js +1 -0
  203. package/src/providers/litescrape/sprouts-schemas.d.ts +2 -0
  204. package/src/providers/litescrape/sprouts-schemas.js +72 -0
  205. package/src/providers/litescrape/target-schemas.d.ts +2 -0
  206. package/src/providers/litescrape/target-schemas.js +56 -0
  207. package/src/providers/litescrape/tiktok-schemas.d.ts +2 -0
  208. package/src/providers/litescrape/tiktok-schemas.js +625 -0
  209. package/src/providers/litescrape/tools.d.ts +2 -0
  210. package/src/providers/litescrape/tools.js +88 -0
  211. package/src/providers/litescrape/tripadvisor-schemas.d.ts +2 -0
  212. package/src/providers/litescrape/tripadvisor-schemas.js +119 -0
  213. package/src/providers/litescrape/walmart-schemas.d.ts +2 -0
  214. package/src/providers/litescrape/walmart-schemas.js +52 -0
  215. package/src/providers/litescrape/wayfair-schemas.d.ts +2 -0
  216. package/src/providers/litescrape/wayfair-schemas.js +52 -0
  217. package/src/providers/litescrape/web-schemas.d.ts +2 -0
  218. package/src/providers/litescrape/web-schemas.js +463 -0
  219. package/src/providers/litescrape/wholefoods-schemas.d.ts +2 -0
  220. package/src/providers/litescrape/wholefoods-schemas.js +56 -0
  221. package/src/providers/litescrape/x-schemas.d.ts +2 -0
  222. package/src/providers/litescrape/x-schemas.js +128 -0
  223. package/src/providers/litescrape/yahoo-schemas.d.ts +2 -0
  224. package/src/providers/litescrape/yahoo-schemas.js +234 -0
  225. package/src/providers/litescrape/yandex-schemas.d.ts +2 -0
  226. package/src/providers/litescrape/yandex-schemas.js +179 -0
  227. package/src/providers/litescrape/yelp-schemas.d.ts +2 -0
  228. package/src/providers/litescrape/yelp-schemas.js +130 -0
  229. package/src/providers/litescrape/youtube-schemas.d.ts +2 -0
  230. package/src/providers/litescrape/youtube-schemas.js +128 -0
  231. package/src/providers/litescrape/zillow-schemas.d.ts +2 -0
  232. package/src/providers/litescrape/zillow-schemas.js +128 -0
  233. package/src/providers/litescrape/ziprecruiter-schemas.d.ts +2 -0
  234. package/src/providers/litescrape/ziprecruiter-schemas.js +96 -0
  235. package/src/providers/magichour/actions.d.ts +22 -0
  236. package/src/providers/magichour/actions.js +308 -0
  237. package/src/providers/magichour/audio-schemas.d.ts +2 -0
  238. package/src/providers/magichour/audio-schemas.js +54 -0
  239. package/src/providers/magichour/executors.d.ts +4 -0
  240. package/src/providers/magichour/executors.js +115 -0
  241. package/src/providers/magichour/image-schemas.d.ts +2 -0
  242. package/src/providers/magichour/image-schemas.js +443 -0
  243. package/src/providers/magichour/project-schemas.d.ts +8 -0
  244. package/src/providers/magichour/project-schemas.js +65 -0
  245. package/src/providers/magichour/shared-schemas.d.ts +8 -0
  246. package/src/providers/magichour/shared-schemas.js +18 -0
  247. package/src/providers/magichour/utility-schemas.d.ts +11 -0
  248. package/src/providers/magichour/utility-schemas.js +150 -0
  249. package/src/providers/magichour/video-schemas.d.ts +2 -0
  250. package/src/providers/magichour/video-schemas.js +629 -0
  251. package/src/providers/magichour/voices.d.ts +1 -0
  252. package/src/providers/magichour/voices.js +1268 -0
  253. package/src/providers/minimax/executors.js +19 -4
  254. package/src/providers/minimax/text-models.d.ts +2 -0
  255. package/src/providers/minimax/text-models.js +34 -0
  256. package/src/providers/moneyforward_mcp/manifest.d.ts +0 -2
  257. package/src/providers/moneyforward_mcp/manifest.js +1 -1
  258. package/src/providers/notion/executors.js +36 -3
  259. package/src/providers/octen/actions.d.ts +6 -0
  260. package/src/providers/octen/actions.js +919 -0
  261. package/src/providers/octen/executors.d.ts +4 -0
  262. package/src/providers/octen/executors.js +125 -0
  263. package/src/providers/octen/inputs.d.ts +2 -0
  264. package/src/providers/octen/inputs.js +2434 -0
  265. package/src/providers/octen/research.d.ts +1 -0
  266. package/src/providers/octen/research.js +86 -0
  267. package/src/providers/openrouter/executors.js +7 -4
  268. package/src/providers/orbit/actions.d.ts +2 -0
  269. package/src/providers/orbit/actions.js +3030 -0
  270. package/src/providers/orbit/executors.d.ts +4 -0
  271. package/src/providers/orbit/executors.js +106 -0
  272. package/src/providers/orbit/routes.d.ts +9 -0
  273. package/src/providers/orbit/routes.js +170 -0
  274. package/src/providers/pandadoc/executors.d.ts +2 -0
  275. package/src/providers/pandadoc/executors.js +2 -0
  276. package/src/providers/pandadoc/trigger-on-document-event.d.ts +2 -0
  277. package/src/providers/pandadoc/trigger-on-document-event.definition.d.ts +4 -0
  278. package/src/providers/pandadoc/trigger-on-document-event.definition.js +33 -0
  279. package/src/providers/pandadoc/trigger-on-document-event.js +96 -0
  280. package/src/providers/pipedrive/executors.d.ts +2 -0
  281. package/src/providers/pipedrive/executors.js +2 -0
  282. package/src/providers/pipedrive/trigger-on-crm-event.d.ts +2 -0
  283. package/src/providers/pipedrive/trigger-on-crm-event.definition.d.ts +4 -0
  284. package/src/providers/pipedrive/trigger-on-crm-event.definition.js +30 -0
  285. package/src/providers/pipedrive/trigger-on-crm-event.js +101 -0
  286. package/src/providers/ploid/actions.d.ts +16 -0
  287. package/src/providers/ploid/actions.js +23 -0
  288. package/src/providers/ploid/endpoints.json +8440 -0
  289. package/src/providers/ploid/executors.d.ts +4 -0
  290. package/src/providers/ploid/executors.js +119 -0
  291. package/src/providers/provider-runtime.d.ts +13 -0
  292. package/src/providers/provider-runtime.js +37 -4
  293. package/src/providers/registry.generated.js +17 -0
  294. package/src/providers/resend/executors.d.ts +2 -0
  295. package/src/providers/resend/executors.js +2 -0
  296. package/src/providers/resend/trigger-on-email-event.d.ts +2 -0
  297. package/src/providers/resend/trigger-on-email-event.definition.d.ts +4 -0
  298. package/src/providers/resend/trigger-on-email-event.definition.js +37 -0
  299. package/src/providers/resend/trigger-on-email-event.js +125 -0
  300. package/src/providers/salesforce/chatter-routes.d.ts +107 -0
  301. package/src/providers/salesforce/chatter-routes.js +140 -0
  302. package/src/providers/salesforce/context.d.ts +2 -2
  303. package/src/providers/salesforce/context.js +7 -4
  304. package/src/providers/salesforce/executors.js +10 -0
  305. package/src/providers/salesforce/runtime-approvals.d.ts +2 -0
  306. package/src/providers/salesforce/runtime-approvals.js +52 -0
  307. package/src/providers/salesforce/runtime-base.js +14 -3
  308. package/src/providers/salesforce/runtime-chatter.d.ts +2 -0
  309. package/src/providers/salesforce/runtime-chatter.js +78 -0
  310. package/src/providers/salesforce/runtime-knowledge.d.ts +2 -0
  311. package/src/providers/salesforce/runtime-knowledge.js +34 -0
  312. package/src/providers/salesforce/runtime-leads.d.ts +2 -0
  313. package/src/providers/salesforce/runtime-leads.js +117 -0
  314. package/src/providers/salesforce/runtime-platform.d.ts +2 -0
  315. package/src/providers/salesforce/runtime-platform.js +67 -0
  316. package/src/providers/saperly/actions.d.ts +17 -0
  317. package/src/providers/saperly/actions.js +869 -0
  318. package/src/providers/saperly/executors.d.ts +4 -0
  319. package/src/providers/saperly/executors.js +113 -0
  320. package/src/providers/saperly/schemas.d.ts +33 -0
  321. package/src/providers/saperly/schemas.js +601 -0
  322. package/src/providers/search1api/actions.d.ts +2 -0
  323. package/src/providers/search1api/actions.js +39 -0
  324. package/src/providers/search1api/executors.d.ts +4 -0
  325. package/src/providers/search1api/executors.js +72 -0
  326. package/src/providers/search1api/runtime.d.ts +3 -0
  327. package/src/providers/search1api/runtime.js +44 -0
  328. package/src/providers/search1api/schemas.d.ts +3 -0
  329. package/src/providers/search1api/schemas.js +1834 -0
  330. package/src/providers/sentry/executors.d.ts +2 -0
  331. package/src/providers/sentry/executors.js +2 -0
  332. package/src/providers/sentry/trigger-on-issue-alert.d.ts +2 -0
  333. package/src/providers/sentry/trigger-on-issue-alert.definition.d.ts +4 -0
  334. package/src/providers/sentry/trigger-on-issue-alert.definition.js +64 -0
  335. package/src/providers/sentry/trigger-on-issue-alert.js +80 -0
  336. package/src/providers/sf_express/runtime.d.ts +0 -16
  337. package/src/providers/sf_express/runtime.js +2 -2
  338. package/src/providers/slack/runtime.d.ts +6 -1
  339. package/src/providers/slack/runtime.js +21 -0
  340. package/src/providers/slackbot/actions.js +17 -1
  341. package/src/providers/slackbot/executors.d.ts +2 -0
  342. package/src/providers/slackbot/executors.js +5 -1
  343. package/src/providers/slackbot/trigger-on-event.d.ts +2 -0
  344. package/src/providers/slackbot/trigger-on-event.definition.d.ts +4 -0
  345. package/src/providers/slackbot/trigger-on-event.definition.js +57 -0
  346. package/src/providers/slackbot/trigger-on-event.js +23 -0
  347. package/src/providers/surf/actions.d.ts +21 -0
  348. package/src/providers/surf/actions.js +26 -0
  349. package/src/providers/surf/discovery-definitions.d.ts +2 -0
  350. package/src/providers/surf/discovery-definitions.js +871 -0
  351. package/src/providers/surf/equity-definitions.d.ts +2 -0
  352. package/src/providers/surf/equity-definitions.js +322 -0
  353. package/src/providers/surf/executors.d.ts +4 -0
  354. package/src/providers/surf/executors.js +131 -0
  355. package/src/providers/surf/market-definitions.d.ts +2 -0
  356. package/src/providers/surf/market-definitions.js +885 -0
  357. package/src/providers/surf/onchain-definitions.d.ts +2 -0
  358. package/src/providers/surf/onchain-definitions.js +901 -0
  359. package/src/providers/surf/prediction-definitions.d.ts +2 -0
  360. package/src/providers/surf/prediction-definitions.js +683 -0
  361. package/src/providers/surf/shared-schemas.d.ts +18 -0
  362. package/src/providers/surf/shared-schemas.js +37 -0
  363. package/src/providers/tally/executors.d.ts +2 -0
  364. package/src/providers/tally/executors.js +2 -0
  365. package/src/providers/tally/trigger-on-form-response.d.ts +2 -0
  366. package/src/providers/tally/trigger-on-form-response.definition.d.ts +4 -0
  367. package/src/providers/tally/trigger-on-form-response.definition.js +54 -0
  368. package/src/providers/tally/trigger-on-form-response.js +166 -0
  369. package/src/providers/tinyfish/actions.d.ts +6 -0
  370. package/src/providers/tinyfish/actions.js +19 -0
  371. package/src/providers/tinyfish/agent-actions.d.ts +2 -0
  372. package/src/providers/tinyfish/agent-actions.js +268 -0
  373. package/src/providers/tinyfish/data-actions.d.ts +2 -0
  374. package/src/providers/tinyfish/data-actions.js +186 -0
  375. package/src/providers/tinyfish/data-schemas.d.ts +7 -0
  376. package/src/providers/tinyfish/data-schemas.js +103 -0
  377. package/src/providers/tinyfish/endpoints.d.ts +14 -0
  378. package/src/providers/tinyfish/endpoints.js +1 -0
  379. package/src/providers/tinyfish/executors.d.ts +4 -0
  380. package/src/providers/tinyfish/executors.js +133 -0
  381. package/src/providers/tinyfish/management-actions.d.ts +2 -0
  382. package/src/providers/tinyfish/management-actions.js +524 -0
  383. package/src/providers/tinyfish/monitor-schemas.d.ts +5 -0
  384. package/src/providers/tinyfish/monitor-schemas.js +65 -0
  385. package/src/providers/tinyfish/research-schemas.d.ts +6 -0
  386. package/src/providers/tinyfish/research-schemas.js +71 -0
  387. package/src/providers/trello/executors.js +5 -2
  388. package/src/providers/typeform/executors.d.ts +2 -0
  389. package/src/providers/typeform/executors.js +2 -0
  390. package/src/providers/typeform/trigger-on-form-response.d.ts +2 -0
  391. package/src/providers/typeform/trigger-on-form-response.definition.d.ts +4 -0
  392. package/src/providers/typeform/trigger-on-form-response.definition.js +40 -0
  393. package/src/providers/typeform/trigger-on-form-response.js +68 -0
  394. package/src/providers/vaquill/actions.d.ts +13 -0
  395. package/src/providers/vaquill/actions.js +529 -0
  396. package/src/providers/vaquill/executors.d.ts +4 -0
  397. package/src/providers/vaquill/executors.js +141 -0
  398. package/src/providers/vaquill/schemas.d.ts +67 -0
  399. package/src/providers/vaquill/schemas.js +4953 -0
  400. package/src/providers/vercel/executors.d.ts +2 -0
  401. package/src/providers/vercel/executors.js +2 -0
  402. package/src/providers/vercel/trigger-on-deployment-event.d.ts +2 -0
  403. package/src/providers/vercel/trigger-on-deployment-event.definition.d.ts +5 -0
  404. package/src/providers/vercel/trigger-on-deployment-event.definition.js +41 -0
  405. package/src/providers/vercel/trigger-on-deployment-event.js +102 -0
  406. package/src/providers/weixin_bot/runtime.d.ts +0 -1
  407. package/src/providers/weixin_bot/runtime.js +1 -1
  408. package/src/providers/weixin_store/access-token.d.ts +3 -3
  409. package/src/providers/weixin_store/access-token.js +15 -7
  410. package/src/providers/weixin_store/executors.js +214 -1
  411. package/src/providers/zoom/executors.d.ts +2 -0
  412. package/src/providers/zoom/executors.js +2 -0
  413. package/src/providers/zoom/trigger-on-recording-ready.d.ts +2 -0
  414. package/src/providers/zoom/trigger-on-recording-ready.definition.d.ts +4 -0
  415. package/src/providers/zoom/trigger-on-recording-ready.definition.js +44 -0
  416. package/src/providers/zoom/trigger-on-recording-ready.js +39 -0
  417. package/src/server/api/action-example.js +12 -1
  418. package/src/server/api/pattern-example.js +35 -1
  419. package/src/server/api/trigger-routes.js +1 -1
  420. package/src/server/connect-app.js +1 -0
  421. package/src/triggers/common/integration.d.ts +15 -3
  422. package/src/triggers/common/integration.js +5 -0
  423. package/src/triggers/common/proxy.d.ts +7 -0
  424. package/src/triggers/managed-webhook.d.ts +13 -0
  425. package/src/triggers/managed-webhook.js +48 -0
  426. package/src/triggers/request.d.ts +5 -1
  427. package/src/triggers/request.js +2 -0
  428. package/src/triggers/resources.d.ts +8 -2
  429. package/src/triggers/resources.js +31 -0
  430. package/src/triggers/signature.d.ts +3 -3
  431. package/src/triggers/signature.js +4 -6
  432. package/src/triggers/sources/configuration-schema.d.ts +5 -0
  433. package/src/triggers/sources/configuration-schema.js +118 -0
  434. package/src/triggers/sources/configuration.d.ts +115 -0
  435. package/src/triggers/sources/configuration.js +1 -0
  436. package/src/triggers/sources/definition.d.ts +61 -0
  437. package/src/triggers/sources/definition.js +3 -0
  438. package/src/triggers/sources/feishu-demands.d.ts +6 -0
  439. package/src/triggers/sources/feishu-demands.js +24 -0
  440. package/src/triggers/sources/feishu-events.d.ts +19 -0
  441. package/src/triggers/sources/feishu-events.js +108 -0
  442. package/src/triggers/sources/feishu.d.ts +3 -0
  443. package/src/triggers/sources/feishu.js +85 -0
  444. package/src/triggers/sources/fireflies.d.ts +3 -0
  445. package/src/triggers/sources/fireflies.js +100 -0
  446. package/src/triggers/sources/intercom.d.ts +3 -0
  447. package/src/triggers/sources/intercom.js +86 -0
  448. package/src/triggers/sources/jira.d.ts +3 -0
  449. package/src/triggers/sources/jira.js +120 -0
  450. package/src/triggers/sources/operation.d.ts +42 -0
  451. package/src/triggers/sources/operation.js +146 -0
  452. package/src/triggers/sources/sentry.d.ts +3 -0
  453. package/src/triggers/sources/sentry.js +125 -0
  454. package/src/triggers/sources/signature.d.ts +1 -0
  455. package/src/triggers/sources/signature.js +10 -0
  456. package/src/triggers/sources/slack.d.ts +3 -0
  457. package/src/triggers/sources/slack.js +127 -0
  458. package/src/triggers/sources/zoom.d.ts +3 -0
  459. package/src/triggers/sources/zoom.js +113 -0
  460. package/src/triggers/trigger-runner.d.ts +2 -0
  461. package/src/triggers/trigger-runner.js +52 -16
@@ -0,0 +1,308 @@
1
+ import { defineProviderAction } from "../../core/provider-definition.js";
2
+ import { audioInputSchemas } from "./audio-schemas.js";
3
+ import { imageInputSchemas } from "./image-schemas.js";
4
+ import { projectSubmissionSchema, projectInputSchema, videoProjectSchema, imageProjectSchema, audioProjectSchema, deletedProjectSchema, } from "./project-schemas.js";
5
+ import { accountInputSchema, accountOutputSchema, savedItemsInputSchema, savedItemsOutputSchema, faceDetectionInputSchema, faceDetectionOutputSchema, faceDetectionResultInputSchema, faceDetectionResultOutputSchema, uploadAssetInputSchema, uploadAssetOutputSchema, } from "./utility-schemas.js";
6
+ import { videoInputSchemas } from "./video-schemas.js";
7
+ const actionLifecycles = {
8
+ create_face_detection: {
9
+ startActionId: "magichour.create_face_detection",
10
+ statusActionId: "magichour.get_face_detection",
11
+ },
12
+ create_ai_talking_photo: {
13
+ startActionId: "magichour.create_ai_talking_photo",
14
+ statusActionId: "magichour.get_video_projects",
15
+ },
16
+ create_ai_ugc_ad: { startActionId: "magichour.create_ai_ugc_ad", statusActionId: "magichour.get_video_projects" },
17
+ create_ai_video_editor: {
18
+ startActionId: "magichour.create_ai_video_editor",
19
+ statusActionId: "magichour.get_video_projects",
20
+ },
21
+ create_ai_video_translator: {
22
+ startActionId: "magichour.create_ai_video_translator",
23
+ statusActionId: "magichour.get_video_projects",
24
+ },
25
+ create_ai_video_upscaler: {
26
+ startActionId: "magichour.create_ai_video_upscaler",
27
+ statusActionId: "magichour.get_video_projects",
28
+ },
29
+ create_animation: { startActionId: "magichour.create_animation", statusActionId: "magichour.get_video_projects" },
30
+ create_audio_to_video: {
31
+ startActionId: "magichour.create_audio_to_video",
32
+ statusActionId: "magichour.get_video_projects",
33
+ },
34
+ create_auto_subtitle_generator: {
35
+ startActionId: "magichour.create_auto_subtitle_generator",
36
+ statusActionId: "magichour.get_video_projects",
37
+ },
38
+ create_character_replace: {
39
+ startActionId: "magichour.create_character_replace",
40
+ statusActionId: "magichour.get_video_projects",
41
+ },
42
+ create_face_swap: { startActionId: "magichour.create_face_swap", statusActionId: "magichour.get_video_projects" },
43
+ create_image_to_video: {
44
+ startActionId: "magichour.create_image_to_video",
45
+ statusActionId: "magichour.get_video_projects",
46
+ },
47
+ create_lip_sync: { startActionId: "magichour.create_lip_sync", statusActionId: "magichour.get_video_projects" },
48
+ create_text_to_video: {
49
+ startActionId: "magichour.create_text_to_video",
50
+ statusActionId: "magichour.get_video_projects",
51
+ },
52
+ create_video_to_video: {
53
+ startActionId: "magichour.create_video_to_video",
54
+ statusActionId: "magichour.get_video_projects",
55
+ },
56
+ create_ai_clothes_changer: {
57
+ startActionId: "magichour.create_ai_clothes_changer",
58
+ statusActionId: "magichour.get_image_projects",
59
+ },
60
+ create_ai_face_editor: {
61
+ startActionId: "magichour.create_ai_face_editor",
62
+ statusActionId: "magichour.get_image_projects",
63
+ },
64
+ create_ai_gif_generator: {
65
+ startActionId: "magichour.create_ai_gif_generator",
66
+ statusActionId: "magichour.get_image_projects",
67
+ },
68
+ create_ai_image_editor: {
69
+ startActionId: "magichour.create_ai_image_editor",
70
+ statusActionId: "magichour.get_image_projects",
71
+ },
72
+ create_ai_headshot_generator: {
73
+ startActionId: "magichour.create_ai_headshot_generator",
74
+ statusActionId: "magichour.get_image_projects",
75
+ },
76
+ create_ai_image_generator: {
77
+ startActionId: "magichour.create_ai_image_generator",
78
+ statusActionId: "magichour.get_image_projects",
79
+ },
80
+ create_ai_image_upscaler: {
81
+ startActionId: "magichour.create_ai_image_upscaler",
82
+ statusActionId: "magichour.get_image_projects",
83
+ },
84
+ create_ai_meme_generator: {
85
+ startActionId: "magichour.create_ai_meme_generator",
86
+ statusActionId: "magichour.get_image_projects",
87
+ },
88
+ create_ai_qr_code_generator: {
89
+ startActionId: "magichour.create_ai_qr_code_generator",
90
+ statusActionId: "magichour.get_image_projects",
91
+ },
92
+ create_body_swap: { startActionId: "magichour.create_body_swap", statusActionId: "magichour.get_image_projects" },
93
+ create_face_swap_photo: {
94
+ startActionId: "magichour.create_face_swap_photo",
95
+ statusActionId: "magichour.get_image_projects",
96
+ },
97
+ create_head_swap: { startActionId: "magichour.create_head_swap", statusActionId: "magichour.get_image_projects" },
98
+ create_image_background_remover: {
99
+ startActionId: "magichour.create_image_background_remover",
100
+ statusActionId: "magichour.get_image_projects",
101
+ },
102
+ create_photo_colorizer: {
103
+ startActionId: "magichour.create_photo_colorizer",
104
+ statusActionId: "magichour.get_image_projects",
105
+ },
106
+ create_ai_music_generator: {
107
+ startActionId: "magichour.create_ai_music_generator",
108
+ statusActionId: "magichour.get_audio_projects",
109
+ },
110
+ create_ai_voice_cloner: {
111
+ startActionId: "magichour.create_ai_voice_cloner",
112
+ statusActionId: "magichour.get_audio_projects",
113
+ },
114
+ create_ai_voice_generator: {
115
+ startActionId: "magichour.create_ai_voice_generator",
116
+ statusActionId: "magichour.get_audio_projects",
117
+ },
118
+ };
119
+ function mediaAction(name, title, kind, inputSchema) {
120
+ return {
121
+ name,
122
+ description: `${title} Submit the asynchronous task and use the linked result action to retrieve completion and downloads.`,
123
+ operationType: "write",
124
+ route: {
125
+ path: `/v1/${name.slice("create_".length).replaceAll("_", "-")}`,
126
+ method: "POST",
127
+ parameters: [],
128
+ body: true,
129
+ },
130
+ inputSchema,
131
+ outputSchema: projectSubmissionSchema(kind),
132
+ };
133
+ }
134
+ const definitions = [
135
+ {
136
+ name: "get_account",
137
+ description: "Get account details.",
138
+ operationType: "read",
139
+ route: { path: "/v1/account", method: "GET", parameters: [], body: false },
140
+ inputSchema: accountInputSchema,
141
+ outputSchema: accountOutputSchema,
142
+ },
143
+ {
144
+ name: "list_saved_items",
145
+ description: "List saved items.",
146
+ operationType: "read",
147
+ route: {
148
+ path: "/v1/saved-items",
149
+ method: "GET",
150
+ parameters: [
151
+ { name: "type", in: "query" },
152
+ { name: "limit", in: "query" },
153
+ { name: "cursor", in: "query" },
154
+ ],
155
+ body: false,
156
+ },
157
+ inputSchema: savedItemsInputSchema,
158
+ outputSchema: savedItemsOutputSchema,
159
+ },
160
+ {
161
+ name: "get_face_detection",
162
+ description: "Get face detection details.",
163
+ operationType: "read",
164
+ route: {
165
+ path: "/v1/face-detection/{id}",
166
+ method: "GET",
167
+ parameters: [{ name: "id", in: "path" }],
168
+ body: false,
169
+ },
170
+ inputSchema: faceDetectionResultInputSchema,
171
+ outputSchema: faceDetectionResultOutputSchema,
172
+ },
173
+ {
174
+ name: "create_face_detection",
175
+ description: "Face Detection. Submit the asynchronous task and use the linked result action to retrieve completion and downloads.",
176
+ operationType: "write",
177
+ route: { path: "/v1/face-detection", method: "POST", parameters: [], body: true },
178
+ inputSchema: faceDetectionInputSchema,
179
+ outputSchema: faceDetectionOutputSchema,
180
+ },
181
+ {
182
+ name: "get_video_projects",
183
+ description: "Get video details.",
184
+ operationType: "read",
185
+ route: {
186
+ path: "/v1/video-projects/{id}",
187
+ method: "GET",
188
+ parameters: [{ name: "id", in: "path" }],
189
+ body: false,
190
+ },
191
+ inputSchema: projectInputSchema("video", "Get video details parameters."),
192
+ outputSchema: videoProjectSchema,
193
+ },
194
+ {
195
+ name: "delete_video_projects",
196
+ description: "Delete video.",
197
+ operationType: "destructive",
198
+ route: {
199
+ path: "/v1/video-projects/{id}",
200
+ method: "DELETE",
201
+ parameters: [{ name: "id", in: "path" }],
202
+ body: false,
203
+ },
204
+ inputSchema: projectInputSchema("video", "Delete video parameters."),
205
+ outputSchema: deletedProjectSchema,
206
+ },
207
+ mediaAction("create_ai_talking_photo", "AI Talking Photo.", "video", videoInputSchemas.create_ai_talking_photo),
208
+ mediaAction("create_ai_ugc_ad", "AI UGC Ad Generator.", "video", videoInputSchemas.create_ai_ugc_ad),
209
+ mediaAction("create_ai_video_editor", "AI Video Editor.", "video", videoInputSchemas.create_ai_video_editor),
210
+ mediaAction("create_ai_video_translator", "AI Video Translator.", "video", videoInputSchemas.create_ai_video_translator),
211
+ mediaAction("create_ai_video_upscaler", "AI Video Upscaler.", "video", videoInputSchemas.create_ai_video_upscaler),
212
+ mediaAction("create_animation", "Animation.", "video", videoInputSchemas.create_animation),
213
+ mediaAction("create_audio_to_video", "Audio-to-Video.", "video", videoInputSchemas.create_audio_to_video),
214
+ mediaAction("create_auto_subtitle_generator", "Auto Subtitle Generator.", "video", videoInputSchemas.create_auto_subtitle_generator),
215
+ mediaAction("create_character_replace", "Character Replace.", "video", videoInputSchemas.create_character_replace),
216
+ mediaAction("create_face_swap", "Face Swap Video.", "video", videoInputSchemas.create_face_swap),
217
+ mediaAction("create_image_to_video", "Image-to-Video.", "video", videoInputSchemas.create_image_to_video),
218
+ mediaAction("create_lip_sync", "Lip Sync.", "video", videoInputSchemas.create_lip_sync),
219
+ mediaAction("create_text_to_video", "Text-to-Video.", "video", videoInputSchemas.create_text_to_video),
220
+ mediaAction("create_video_to_video", "Video-to-Video.", "video", videoInputSchemas.create_video_to_video),
221
+ {
222
+ name: "get_image_projects",
223
+ description: "Get image details.",
224
+ operationType: "read",
225
+ route: {
226
+ path: "/v1/image-projects/{id}",
227
+ method: "GET",
228
+ parameters: [{ name: "id", in: "path" }],
229
+ body: false,
230
+ },
231
+ inputSchema: projectInputSchema("image", "Get image details parameters."),
232
+ outputSchema: imageProjectSchema,
233
+ },
234
+ {
235
+ name: "delete_image_projects",
236
+ description: "Delete image.",
237
+ operationType: "destructive",
238
+ route: {
239
+ path: "/v1/image-projects/{id}",
240
+ method: "DELETE",
241
+ parameters: [{ name: "id", in: "path" }],
242
+ body: false,
243
+ },
244
+ inputSchema: projectInputSchema("image", "Delete image parameters."),
245
+ outputSchema: deletedProjectSchema,
246
+ },
247
+ mediaAction("create_ai_clothes_changer", "AI Clothes Changer.", "image", imageInputSchemas.create_ai_clothes_changer),
248
+ mediaAction("create_ai_face_editor", "AI Face Editor.", "image", imageInputSchemas.create_ai_face_editor),
249
+ mediaAction("create_ai_gif_generator", "AI GIF Generator.", "image", imageInputSchemas.create_ai_gif_generator),
250
+ mediaAction("create_ai_image_editor", "AI Image Editor.", "image", imageInputSchemas.create_ai_image_editor),
251
+ mediaAction("create_ai_headshot_generator", "AI Headshot Generator.", "image", imageInputSchemas.create_ai_headshot_generator),
252
+ mediaAction("create_ai_image_generator", "AI Image Generator.", "image", imageInputSchemas.create_ai_image_generator),
253
+ mediaAction("create_ai_image_upscaler", "AI Image Upscaler.", "image", imageInputSchemas.create_ai_image_upscaler),
254
+ mediaAction("create_ai_meme_generator", "AI Meme Generator.", "image", imageInputSchemas.create_ai_meme_generator),
255
+ mediaAction("create_ai_qr_code_generator", "AI QR Code Generator.", "image", imageInputSchemas.create_ai_qr_code_generator),
256
+ mediaAction("create_body_swap", "Body Swap.", "image", imageInputSchemas.create_body_swap),
257
+ mediaAction("create_face_swap_photo", "Face Swap Photo.", "image", imageInputSchemas.create_face_swap_photo),
258
+ mediaAction("create_head_swap", "Head Swap.", "image", imageInputSchemas.create_head_swap),
259
+ mediaAction("create_image_background_remover", "Image Background Remover.", "image", imageInputSchemas.create_image_background_remover),
260
+ mediaAction("create_photo_colorizer", "Photo Colorizer.", "image", imageInputSchemas.create_photo_colorizer),
261
+ {
262
+ name: "get_audio_projects",
263
+ description: "Get audio details.",
264
+ operationType: "read",
265
+ route: {
266
+ path: "/v1/audio-projects/{id}",
267
+ method: "GET",
268
+ parameters: [{ name: "id", in: "path" }],
269
+ body: false,
270
+ },
271
+ inputSchema: projectInputSchema("audio", "Get audio details parameters."),
272
+ outputSchema: audioProjectSchema,
273
+ },
274
+ {
275
+ name: "delete_audio_projects",
276
+ description: "Delete audio.",
277
+ operationType: "destructive",
278
+ route: {
279
+ path: "/v1/audio-projects/{id}",
280
+ method: "DELETE",
281
+ parameters: [{ name: "id", in: "path" }],
282
+ body: false,
283
+ },
284
+ inputSchema: projectInputSchema("audio", "Delete audio parameters."),
285
+ outputSchema: deletedProjectSchema,
286
+ },
287
+ mediaAction("create_ai_music_generator", "AI Music Generator.", "audio", audioInputSchemas.create_ai_music_generator),
288
+ mediaAction("create_ai_voice_cloner", "AI Voice Cloner.", "audio", audioInputSchemas.create_ai_voice_cloner),
289
+ mediaAction("create_ai_voice_generator", "AI Voice Generator.", "audio", audioInputSchemas.create_ai_voice_generator),
290
+ {
291
+ name: "upload_asset",
292
+ description: "Upload an asset from a public URL to Magic Hour storage and return its reusable file_path. Maximum 20 MiB; larger hosted files can be passed directly to generation actions.",
293
+ operationType: "write",
294
+ route: { path: "/v1/files/upload-urls", method: "POST", parameters: [], body: true },
295
+ inputSchema: uploadAssetInputSchema,
296
+ outputSchema: uploadAssetOutputSchema,
297
+ },
298
+ ];
299
+ export const magicHourRoutes = new Map(definitions.map((definition) => [definition.name, definition.route]));
300
+ export const magicHourActions = definitions.map((definition) => defineProviderAction("magichour", {
301
+ name: definition.name,
302
+ description: definition.description,
303
+ operationType: definition.operationType,
304
+ requiredScopes: [],
305
+ inputSchema: definition.inputSchema,
306
+ outputSchema: definition.outputSchema,
307
+ asyncLifecycle: actionLifecycles[definition.name],
308
+ }));
@@ -0,0 +1,2 @@
1
+ import type { JsonSchema } from "../../core/types.ts";
2
+ export declare const audioInputSchemas: Record<string, JsonSchema>;
@@ -0,0 +1,54 @@
1
+ import { s } from "../../core/json-schema.js";
2
+ import { audioNameSchema, assetPathSchema } from "./shared-schemas.js";
3
+ import { magicHourVoiceNames } from "./voices.js";
4
+ const voiceSchema = s.stringEnum("The voice used to generate speech. Select a value from the supported voice names.", magicHourVoiceNames);
5
+ const aiMusicGeneratorInputSchema = s.object("AI Music Generator parameters.", {
6
+ name: audioNameSchema,
7
+ duration: s.integer("Requested track duration in seconds, from 15 to 300. Determines credits charged.", {
8
+ minimum: 15,
9
+ maximum: 300,
10
+ }),
11
+ style: s.object("Style.", {
12
+ prompt: s.string("Describe the song, including genre, mood, and instruments.", {
13
+ minLength: 1,
14
+ }),
15
+ instrumental: s.boolean("Generate music without vocals. When true, lyrics is ignored."),
16
+ lyrics: s.string("Custom lyrics. Omit or leave blank for AI-generated lyrics when instrumental is false."),
17
+ }, { required: ["prompt"] }),
18
+ }, { required: ["duration", "style"] });
19
+ const aiVoiceClonerInputSchema = s.object("AI Voice Cloner parameters.", {
20
+ name: audioNameSchema,
21
+ assets: s.object("Provide the assets for voice cloning.", { audio_file_path: assetPathSchema("The audio used to clone the voice.", true) }, {
22
+ required: ["audio_file_path"],
23
+ additionalProperties: true,
24
+ }),
25
+ style: s.object("Style.", {
26
+ prompt: s.string("Text used to generate speech from the cloned voice. The character limit is 1000 characters.", { minLength: 1, maxLength: 1000 }),
27
+ }, {
28
+ required: ["prompt"],
29
+ additionalProperties: true,
30
+ }),
31
+ }, {
32
+ required: ["assets", "style"],
33
+ additionalProperties: true,
34
+ });
35
+ const aiVoiceGeneratorInputSchema = s.object("AI Voice Generator parameters.", {
36
+ name: audioNameSchema,
37
+ style: s.object("The content used to generate speech.", {
38
+ prompt: s.string("Text used to generate speech. The character limit is 1000 characters.", {
39
+ minLength: 1,
40
+ }),
41
+ voice_name: voiceSchema,
42
+ }, {
43
+ required: ["prompt", "voice_name"],
44
+ additionalProperties: true,
45
+ }),
46
+ }, {
47
+ required: ["style"],
48
+ additionalProperties: true,
49
+ });
50
+ export const audioInputSchemas = {
51
+ create_ai_music_generator: aiMusicGeneratorInputSchema,
52
+ create_ai_voice_cloner: aiVoiceClonerInputSchema,
53
+ create_ai_voice_generator: aiVoiceGeneratorInputSchema,
54
+ };
@@ -0,0 +1,4 @@
1
+ import type { CredentialValidators, ProviderExecutors, ProviderProxyExecutor } from "../../core/types.ts";
2
+ export declare const credentialValidators: CredentialValidators;
3
+ export declare const executors: ProviderExecutors;
4
+ export declare const proxy: ProviderProxyExecutor;
@@ -0,0 +1,115 @@
1
+ import { optionalRecord, optionalString, looseArray } from "../../core/cast.js";
2
+ import { createProviderFetch } from "../provider-runtime.js";
3
+ import { downloadUploadSource, requiredResponseRecord, requiredInputString, runProviderRequest, isAbortLikeError, providerUserAgent, ProviderRequestError, providerInputError, providerResponseError, defineApiKeyProviderExecutors, defineProviderProxy, } from "../provider-runtime.js";
4
+ import { magicHourActions } from "./actions.js";
5
+ import { magicHourRoutes } from "./actions.js";
6
+ const baseUrl = "https://api.magichour.ai";
7
+ async function requestMagicHour(url, method, apiKey, body, fetcher, validation = false, parentSignal) {
8
+ return runProviderRequest({ label: "Magic Hour", signal: parentSignal }, async (signal) => {
9
+ const response = await fetcher(url, {
10
+ method,
11
+ headers: {
12
+ authorization: `Bearer ${apiKey}`,
13
+ accept: "application/json",
14
+ "content-type": "application/json",
15
+ "user-agent": providerUserAgent,
16
+ },
17
+ body: body === undefined ? undefined : JSON.stringify(body),
18
+ signal,
19
+ });
20
+ if (response.status === 204 && response.ok)
21
+ return { deleted: true };
22
+ let payload;
23
+ try {
24
+ payload = await response.json();
25
+ }
26
+ catch (error) {
27
+ if (isAbortLikeError(error))
28
+ throw error;
29
+ throw new ProviderRequestError(response.ok ? 502 : response.status, response.ok ? "Magic Hour returned invalid JSON" : `Magic Hour request failed (HTTP ${response.status})`, undefined, "provider_error");
30
+ }
31
+ if (!response.ok) {
32
+ const error = optionalRecord(payload);
33
+ const code = optionalString(error?.code);
34
+ const message = optionalString(error?.message) ?? `Magic Hour request failed (HTTP ${response.status})`;
35
+ throw new ProviderRequestError(code === "unauthorized" && validation ? 400 : response.status, code ? `${code}: ${message}` : message, undefined, code === "unauthorized" ? (validation ? "invalid_input" : "authorization_failed") : "provider_error");
36
+ }
37
+ return requiredResponseRecord(payload, "Magic Hour response");
38
+ });
39
+ }
40
+ async function uploadAsset(values, apiKey, fetcher, parentSignal) {
41
+ return runProviderRequest({ label: "Magic Hour asset upload", timeoutMs: 120000, signal: parentSignal }, async (signal) => {
42
+ const source = await downloadUploadSource({
43
+ url: requiredInputString(values.fileUrl, "fileUrl"),
44
+ fieldName: "fileUrl",
45
+ fetcher,
46
+ signal,
47
+ });
48
+ const result = await requestMagicHour(new URL("/v1/files/upload-urls", baseUrl), "POST", apiKey, { items: [{ type: values.type, extension: values.extension }] }, fetcher, undefined, signal);
49
+ const item = optionalRecord(looseArray(result.items)[0]);
50
+ const uploadUrl = optionalString(item?.upload_url);
51
+ const filePath = optionalString(item?.file_path);
52
+ if (!uploadUrl || !filePath)
53
+ throw providerResponseError("Magic Hour upload response is missing upload_url or file_path");
54
+ const uploadFetch = createProviderFetch({ fetch: fetcher });
55
+ const response = await uploadFetch(uploadUrl, {
56
+ method: "PUT",
57
+ headers: { "content-type": source.contentType ?? "application/octet-stream" },
58
+ body: new Uint8Array(source.bytes),
59
+ signal,
60
+ });
61
+ await response.body?.cancel();
62
+ if (!response.ok)
63
+ throw new ProviderRequestError(response.status, `Magic Hour asset upload failed (HTTP ${response.status})`, undefined, "provider_error");
64
+ return { file_path: filePath };
65
+ });
66
+ }
67
+ async function execute(actionName, values, context) {
68
+ const { apiKey, fetcher } = context;
69
+ const route = magicHourRoutes.get(actionName);
70
+ if (actionName === "upload_asset")
71
+ return uploadAsset(values, apiKey, fetcher, context.signal);
72
+ if (!route)
73
+ throw providerInputError("Unknown action route");
74
+ let pathname = route.path;
75
+ const query = new URLSearchParams();
76
+ for (const parameter of route.parameters) {
77
+ const value = values[parameter.name];
78
+ if (value === undefined || value === null)
79
+ continue;
80
+ if (parameter.in === "path") {
81
+ const segment = String(value);
82
+ if (segment === "." || segment === "..")
83
+ throw providerInputError(`${parameter.name} must not be a dot path segment`);
84
+ pathname = pathname.replace(`{${parameter.name}}`, encodeURIComponent(segment));
85
+ }
86
+ else
87
+ query.set(parameter.name, String(value));
88
+ }
89
+ const url = new URL(pathname, baseUrl);
90
+ url.search = query.toString();
91
+ return requestMagicHour(url, route.method, apiKey, route.body ? values : undefined, fetcher, undefined, context.signal);
92
+ }
93
+ export const credentialValidators = {
94
+ async apiKey(input, { fetcher, signal }) {
95
+ const result = await requestMagicHour(new URL("/v1/account", baseUrl), "GET", input.apiKey, undefined, fetcher, true, signal);
96
+ return {
97
+ profile: { displayName: optionalString(result.email) ?? "Magic Hour Account" },
98
+ grantedScopes: [],
99
+ metadata: {
100
+ accountId: optionalString(result.id),
101
+ validationEndpoint: "/v1/account",
102
+ },
103
+ };
104
+ },
105
+ };
106
+ export const executors = defineApiKeyProviderExecutors("magichour", Object.fromEntries(magicHourActions.map((action) => [action.name, (values, context) => execute(action.name, values, context)])));
107
+ export const proxy = defineProviderProxy({
108
+ service: "magichour",
109
+ baseUrl: baseUrl,
110
+ auth: { type: "api_key_authorization", prefix: "Bearer " },
111
+ customizeRequest({ headers }) {
112
+ headers.set("accept", "application/json");
113
+ headers.set("user-agent", providerUserAgent);
114
+ },
115
+ });
@@ -0,0 +1,2 @@
1
+ import type { JsonSchema } from "../../core/types.ts";
2
+ export declare const imageInputSchemas: Record<string, JsonSchema>;