@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,463 @@
1
+ import { s } from "../../core/json-schema.js";
2
+ export const webTools = [
3
+ {
4
+ name: "web_fetch",
5
+ path: "/api/web/fetch",
6
+ description: "Get a web page as Markdown, HTML or plain text. This upstream API is Alpha.",
7
+ input: s.object("Fetch parameters.", {
8
+ url: s.string("Public HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials.", { minLength: 1, maxLength: 8192 }),
9
+ remove_overlay: s.nullable(s.boolean("Remove modal and cookie-banner overlays from the page.")),
10
+ detach_invisibles: s.nullable(s.boolean("Drop display:none elements from the page.")),
11
+ wait_for_selector: s.anyOf("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", [
12
+ s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
13
+ s.array("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
14
+ s.literal(null, {
15
+ description: "CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.",
16
+ }),
17
+ ]),
18
+ set_cookies: s.nullable(s.array("POST only. 1-100 cookies in Set-Cookie syntax (name=value; Path=/; Domain=...), one line each, up to 4,096 characters.", s.string("set cookies value. item.", { minLength: 3, maxLength: 4096 }), { minItems: 1, maxItems: 100 })),
19
+ user_agent: s.nullable(s.string("User-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own.", { minLength: 1, maxLength: 1024 })),
20
+ inject_page_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in the main frame.", s.string("inject page script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
21
+ inject_frame_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in every frame.", s.string("inject frame script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
22
+ page_timeout: s.nullable(s.integer("Seconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout.", { minimum: 1, maximum: 180 })),
23
+ locale: s.nullable(s.string("Browser locale as a language tag, 2-64 characters. Defaults to the browser's own.", {
24
+ minLength: 2,
25
+ maxLength: 64,
26
+ pattern: "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
27
+ })),
28
+ referer: s.nullable(s.string("HTTP(S) URL sent as the Referer.", { minLength: 1, maxLength: 8192 })),
29
+ assert_status_code: s.nullable(s.integer("Expected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture.", { minimum: 100, maximum: 599 })),
30
+ viewport: s.nullable(s.object("POST only. Browser viewport; width and height are required. Default: 1280 x 1280.", {
31
+ width: s.integer("Viewport width in CSS pixels, 1-4,096. Required.", {
32
+ minimum: 1,
33
+ maximum: 4096,
34
+ }),
35
+ height: s.integer("Viewport height in CSS pixels, 1-4,096. Required.", {
36
+ minimum: 1,
37
+ maximum: 4096,
38
+ }),
39
+ device_scale_factor: s.nullable(s.number("Device pixel ratio, greater than 0 and at most 4.", {
40
+ maximum: 4,
41
+ exclusiveMinimum: 0,
42
+ })),
43
+ is_mobile: s.nullable(s.boolean("Emulate a mobile device.")),
44
+ is_landscape: s.nullable(s.boolean("Use landscape orientation.")),
45
+ has_touch: s.nullable(s.boolean("Emulate touch support.")),
46
+ }, { required: ["width", "height"] })),
47
+ robots_txt: s.nullable(s.string("User agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected.", { minLength: 1, maxLength: 256 })),
48
+ respond_timing: s.nullable(s.withEnum(s.unknown("Page readiness condition to reach before responding."), [
49
+ "html",
50
+ "visible-content",
51
+ "mutation-idle",
52
+ "resource-idle",
53
+ "media-idle",
54
+ "network-idle",
55
+ ])),
56
+ respond_with: s.nullable(s.string("Output format: content (default; main content as Markdown, or the whole page when extraction keeps too little), markdown (whole page as Markdown), html, text, frontmatter (content plus front matter), or a '+' combination such as markdown+frontmatter. For screenshots use /api/web/screenshot.", { minLength: 3, maxLength: 64 })),
57
+ with_links_summary: s.anyOf("true, false or all: add a links list to the response.", [
58
+ s.boolean("true, false or all: add a links list to the response."),
59
+ s.literal("all", {
60
+ description: "true, false or all: add a links list to the response.",
61
+ }),
62
+ s.literal(null, {
63
+ description: "true, false or all: add a links list to the response.",
64
+ }),
65
+ ]),
66
+ with_images_summary: s.nullable(s.boolean("Add an images list to the response.")),
67
+ retain_images: s.nullable(s.withEnum(s.unknown("Images to keep: all (default), alt (alt text only) or none."), ["none", "all", "alt"])),
68
+ retain_links: s.nullable(s.withEnum(s.unknown("Links to keep: all (default), text (link text only), none, or gpt-oss (citation format with a links summary)."), ["none", "all", "text", "gpt-oss"])),
69
+ retain_media: s.nullable(s.withEnum(s.unknown("How video, audio and embedded video appear: none, text, link (default), image or html."), ["none", "text", "link", "image", "html"])),
70
+ preset: s.nullable(s.withEnum(s.unknown("Option preset. Fills only the options the request leaves unset."), [
71
+ "reader",
72
+ "index",
73
+ "research",
74
+ "agent",
75
+ "spider",
76
+ ])),
77
+ no_gfm: s.anyOf("true, false or table: disable GitHub-flavored Markdown, or only its tables.", [
78
+ s.boolean("true, false or table: disable GitHub-flavored Markdown, or only its tables."),
79
+ s.literal("table", {
80
+ description: "true, false or table: disable GitHub-flavored Markdown, or only its tables.",
81
+ }),
82
+ s.literal(null, {
83
+ description: "true, false or table: disable GitHub-flavored Markdown, or only its tables.",
84
+ }),
85
+ ]),
86
+ target_selector: s.anyOf("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", [
87
+ s.string("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", { minLength: 1, maxLength: 2048 }),
88
+ s.array("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", s.string("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
89
+ s.literal(null, {
90
+ description: "CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.",
91
+ }),
92
+ ]),
93
+ remove_selector: s.anyOf("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", [
94
+ s.string("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
95
+ s.array("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", s.string("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
96
+ s.literal(null, {
97
+ description: "CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.",
98
+ }),
99
+ ]),
100
+ keep_img_data_url: s.nullable(s.boolean("Keep inline data: images in Markdown.")),
101
+ with_iframe: s.anyOf("true, false or quoted: include iframe content before extraction.", [
102
+ s.boolean("true, false or quoted: include iframe content before extraction."),
103
+ s.literal("quoted", {
104
+ description: "true, false or quoted: include iframe content before extraction.",
105
+ }),
106
+ s.literal(null, {
107
+ description: "true, false or quoted: include iframe content before extraction.",
108
+ }),
109
+ ]),
110
+ with_shadow_dom: s.nullable(s.boolean("Include open shadow DOM content before extraction.")),
111
+ engine: s.nullable(s.withEnum(s.unknown("auto (default; lightweight HTTP first, a browser when needed), browser, or curl (no JavaScript)."), ["auto", "browser", "curl"])),
112
+ token_budget: s.nullable(s.integer("Integer 1-10,000,000. Reject the page when its token count exceeds the budget.", {
113
+ minimum: 1,
114
+ maximum: 10000000,
115
+ })),
116
+ markdown: s.nullable(s.object("POST only. Markdown formatting options.", {
117
+ heading_style: s.nullable(s.withEnum(s.unknown("Markdown heading style: setext (underlined) or atx (# prefixed)."), [
118
+ "setext",
119
+ "atx",
120
+ ])),
121
+ hr: s.nullable(s.string("Markdown used for horizontal rules, 1-128 characters.", {
122
+ minLength: 1,
123
+ maxLength: 128,
124
+ })),
125
+ bullet_list_marker: s.nullable(s.withEnum(s.unknown("Marker for bulleted list items."), ["-", "+", "*"])),
126
+ em_delimiter: s.nullable(s.withEnum(s.unknown("Delimiter for emphasis."), ["_", "*"])),
127
+ strong_delimiter: s.nullable(s.withEnum(s.unknown("Delimiter for strong emphasis."), ["__", "**"])),
128
+ link_style: s.nullable(s.withEnum(s.unknown("How links are written: inlined, referenced (reference-style) or discarded."), [
129
+ "inlined",
130
+ "referenced",
131
+ "discarded",
132
+ ])),
133
+ link_reference_style: s.nullable(s.withEnum(s.unknown("Reference format when link_style is referenced."), [
134
+ "full",
135
+ "collapsed",
136
+ "shortcut",
137
+ "discarded",
138
+ ])),
139
+ }, { required: [] })),
140
+ markdown_chunking: s.nullable(s.withEnum(s.unknown("true, h1-h5, structured or s1-s5: split the Markdown and return chunks."), [
141
+ "true",
142
+ "h1",
143
+ "h2",
144
+ "h3",
145
+ "h4",
146
+ "h5",
147
+ "structured",
148
+ "s1",
149
+ "s2",
150
+ "s3",
151
+ "s4",
152
+ "s5",
153
+ ])),
154
+ max_tokens: s.nullable(s.integer("Integer 500-10,000,000. Trim content to this many tokens.", {
155
+ minimum: 500,
156
+ maximum: 10000000,
157
+ })),
158
+ base: s.nullable(s.withEnum(s.unknown("Resolve relative links against the requested URL (initial, default) or the final URL after redirects (final)."), ["initial", "final"])),
159
+ }, { required: ["url"] }),
160
+ asyncInput: s.object("Fetch asynchronous parameters.", {
161
+ url: s.string("Public HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials.", { minLength: 1, maxLength: 8192 }),
162
+ remove_overlay: s.nullable(s.boolean("Remove modal and cookie-banner overlays from the page.")),
163
+ detach_invisibles: s.nullable(s.boolean("Drop display:none elements from the page.")),
164
+ wait_for_selector: s.anyOf("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", [
165
+ s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
166
+ s.array("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
167
+ s.literal(null, {
168
+ description: "CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.",
169
+ }),
170
+ ]),
171
+ set_cookies: s.nullable(s.array("POST only. 1-100 cookies in Set-Cookie syntax (name=value; Path=/; Domain=...), one line each, up to 4,096 characters.", s.string("set cookies value. item.", { minLength: 3, maxLength: 4096 }), { minItems: 1, maxItems: 100 })),
172
+ user_agent: s.nullable(s.string("User-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own.", { minLength: 1, maxLength: 1024 })),
173
+ inject_page_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in the main frame.", s.string("inject page script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
174
+ inject_frame_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in every frame.", s.string("inject frame script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
175
+ page_timeout: s.nullable(s.integer("Seconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout.", { minimum: 1, maximum: 180 })),
176
+ locale: s.nullable(s.string("Browser locale as a language tag, 2-64 characters. Defaults to the browser's own.", {
177
+ minLength: 2,
178
+ maxLength: 64,
179
+ pattern: "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
180
+ })),
181
+ referer: s.nullable(s.string("HTTP(S) URL sent as the Referer.", { minLength: 1, maxLength: 8192 })),
182
+ assert_status_code: s.nullable(s.integer("Expected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture.", { minimum: 100, maximum: 599 })),
183
+ viewport: s.nullable(s.object("POST only. Browser viewport; width and height are required. Default: 1280 x 1280.", {
184
+ width: s.integer("Viewport width in CSS pixels, 1-4,096. Required.", {
185
+ minimum: 1,
186
+ maximum: 4096,
187
+ }),
188
+ height: s.integer("Viewport height in CSS pixels, 1-4,096. Required.", {
189
+ minimum: 1,
190
+ maximum: 4096,
191
+ }),
192
+ device_scale_factor: s.nullable(s.number("Device pixel ratio, greater than 0 and at most 4.", {
193
+ maximum: 4,
194
+ exclusiveMinimum: 0,
195
+ })),
196
+ is_mobile: s.nullable(s.boolean("Emulate a mobile device.")),
197
+ is_landscape: s.nullable(s.boolean("Use landscape orientation.")),
198
+ has_touch: s.nullable(s.boolean("Emulate touch support.")),
199
+ }, { required: ["width", "height"] })),
200
+ robots_txt: s.nullable(s.string("User agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected.", { minLength: 1, maxLength: 256 })),
201
+ respond_timing: s.nullable(s.withEnum(s.unknown("Page readiness condition to reach before responding."), [
202
+ "html",
203
+ "visible-content",
204
+ "mutation-idle",
205
+ "resource-idle",
206
+ "media-idle",
207
+ "network-idle",
208
+ ])),
209
+ respond_with: s.nullable(s.string("Output format: content (default; main content as Markdown, or the whole page when extraction keeps too little), markdown (whole page as Markdown), html, text, frontmatter (content plus front matter), or a '+' combination such as markdown+frontmatter. For screenshots use /api/web/screenshot.", { minLength: 3, maxLength: 64 })),
210
+ with_links_summary: s.anyOf("true, false or all: add a links list to the response.", [
211
+ s.boolean("true, false or all: add a links list to the response."),
212
+ s.literal("all", {
213
+ description: "true, false or all: add a links list to the response.",
214
+ }),
215
+ s.literal(null, {
216
+ description: "true, false or all: add a links list to the response.",
217
+ }),
218
+ ]),
219
+ with_images_summary: s.nullable(s.boolean("Add an images list to the response.")),
220
+ retain_images: s.nullable(s.withEnum(s.unknown("Images to keep: all (default), alt (alt text only) or none."), ["none", "all", "alt"])),
221
+ retain_links: s.nullable(s.withEnum(s.unknown("Links to keep: all (default), text (link text only), none, or gpt-oss (citation format with a links summary)."), ["none", "all", "text", "gpt-oss"])),
222
+ retain_media: s.nullable(s.withEnum(s.unknown("How video, audio and embedded video appear: none, text, link (default), image or html."), ["none", "text", "link", "image", "html"])),
223
+ preset: s.nullable(s.withEnum(s.unknown("Option preset. Fills only the options the request leaves unset."), [
224
+ "reader",
225
+ "index",
226
+ "research",
227
+ "agent",
228
+ "spider",
229
+ ])),
230
+ no_gfm: s.anyOf("true, false or table: disable GitHub-flavored Markdown, or only its tables.", [
231
+ s.boolean("true, false or table: disable GitHub-flavored Markdown, or only its tables."),
232
+ s.literal("table", {
233
+ description: "true, false or table: disable GitHub-flavored Markdown, or only its tables.",
234
+ }),
235
+ s.literal(null, {
236
+ description: "true, false or table: disable GitHub-flavored Markdown, or only its tables.",
237
+ }),
238
+ ]),
239
+ target_selector: s.anyOf("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", [
240
+ s.string("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", { minLength: 1, maxLength: 2048 }),
241
+ s.array("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.", s.string("CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
242
+ s.literal(null, {
243
+ description: "CSS selector to extract, 1-2,048 characters; POST also accepts a list of 1-16 selectors. Implies waiting for the selector. Match-all selectors are rejected.",
244
+ }),
245
+ ]),
246
+ remove_selector: s.anyOf("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", [
247
+ s.string("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
248
+ s.array("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.", s.string("CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
249
+ s.literal(null, {
250
+ description: "CSS selector removed before extraction, 1-2,048 characters; POST also accepts a list of 1-16 selectors.",
251
+ }),
252
+ ]),
253
+ keep_img_data_url: s.nullable(s.boolean("Keep inline data: images in Markdown.")),
254
+ with_iframe: s.anyOf("true, false or quoted: include iframe content before extraction.", [
255
+ s.boolean("true, false or quoted: include iframe content before extraction."),
256
+ s.literal("quoted", {
257
+ description: "true, false or quoted: include iframe content before extraction.",
258
+ }),
259
+ s.literal(null, {
260
+ description: "true, false or quoted: include iframe content before extraction.",
261
+ }),
262
+ ]),
263
+ with_shadow_dom: s.nullable(s.boolean("Include open shadow DOM content before extraction.")),
264
+ engine: s.nullable(s.withEnum(s.unknown("auto (default; lightweight HTTP first, a browser when needed), browser, or curl (no JavaScript)."), ["auto", "browser", "curl"])),
265
+ token_budget: s.nullable(s.integer("Integer 1-10,000,000. Reject the page when its token count exceeds the budget.", {
266
+ minimum: 1,
267
+ maximum: 10000000,
268
+ })),
269
+ markdown: s.nullable(s.object("POST only. Markdown formatting options.", {
270
+ heading_style: s.nullable(s.withEnum(s.unknown("Markdown heading style: setext (underlined) or atx (# prefixed)."), [
271
+ "setext",
272
+ "atx",
273
+ ])),
274
+ hr: s.nullable(s.string("Markdown used for horizontal rules, 1-128 characters.", {
275
+ minLength: 1,
276
+ maxLength: 128,
277
+ })),
278
+ bullet_list_marker: s.nullable(s.withEnum(s.unknown("Marker for bulleted list items."), ["-", "+", "*"])),
279
+ em_delimiter: s.nullable(s.withEnum(s.unknown("Delimiter for emphasis."), ["_", "*"])),
280
+ strong_delimiter: s.nullable(s.withEnum(s.unknown("Delimiter for strong emphasis."), ["__", "**"])),
281
+ link_style: s.nullable(s.withEnum(s.unknown("How links are written: inlined, referenced (reference-style) or discarded."), [
282
+ "inlined",
283
+ "referenced",
284
+ "discarded",
285
+ ])),
286
+ link_reference_style: s.nullable(s.withEnum(s.unknown("Reference format when link_style is referenced."), [
287
+ "full",
288
+ "collapsed",
289
+ "shortcut",
290
+ "discarded",
291
+ ])),
292
+ }, { required: [] })),
293
+ markdown_chunking: s.nullable(s.withEnum(s.unknown("true, h1-h5, structured or s1-s5: split the Markdown and return chunks."), [
294
+ "true",
295
+ "h1",
296
+ "h2",
297
+ "h3",
298
+ "h4",
299
+ "h5",
300
+ "structured",
301
+ "s1",
302
+ "s2",
303
+ "s3",
304
+ "s4",
305
+ "s5",
306
+ ])),
307
+ max_tokens: s.nullable(s.integer("Integer 500-10,000,000. Trim content to this many tokens.", {
308
+ minimum: 500,
309
+ maximum: 10000000,
310
+ })),
311
+ base: s.nullable(s.withEnum(s.unknown("Resolve relative links against the requested URL (initial, default) or the final URL after redirects (final)."), ["initial", "final"])),
312
+ timeout: s.number("Execution budget in seconds for each attempt. Queue and retry backoff time do not consume it. Supply once, in the JSON body or query string.", { maximum: 90, exclusiveMinimum: 0 }),
313
+ }, { required: ["url"] }),
314
+ output: s.looseObject("Fetch response.", {
315
+ url: s.string("url value."),
316
+ title: s.nullable(s.string("title value.")),
317
+ description: s.nullable(s.string("description value.")),
318
+ content: s.nullable(s.string("content value.")),
319
+ html: s.nullable(s.string("html value.")),
320
+ text: s.nullable(s.string("text value.")),
321
+ markdown: s.nullable(s.string("markdown value.")),
322
+ published_time: s.nullable(s.string("published time value.")),
323
+ num_pages: s.nullable(s.integer("num pages value.")),
324
+ warning: s.nullable(s.string("warning value.")),
325
+ images: s.anyOf("images value.", [
326
+ s.looseObject("images value.", {}),
327
+ s.array("images value.", s.unknown("images value. item.")),
328
+ s.literal(null, {
329
+ description: "images value.",
330
+ }),
331
+ ]),
332
+ links: s.anyOf("links value.", [
333
+ s.looseObject("links value.", {}),
334
+ s.array("links value.", s.unknown("links value. item.")),
335
+ s.literal(null, {
336
+ description: "links value.",
337
+ }),
338
+ ]),
339
+ usage: s.nullable(s.looseObject("usage value.", {})),
340
+ metadata: s.nullable(s.looseObject("metadata value.", {})),
341
+ submit_feedback_for_this_response_here: s.string("Optional URL for submitting feedback about this result.", {
342
+ format: "uri",
343
+ }),
344
+ }),
345
+ },
346
+ {
347
+ name: "web_screenshot",
348
+ path: "/api/web/screenshot",
349
+ description: "Take a screenshot of a web page. This upstream API is Alpha.",
350
+ input: s.object("Screenshot parameters.", {
351
+ url: s.string("Public HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials.", { minLength: 1, maxLength: 8192 }),
352
+ remove_overlay: s.nullable(s.boolean("Remove modal and cookie-banner overlays from the page.")),
353
+ detach_invisibles: s.nullable(s.boolean("Drop display:none elements from the page.")),
354
+ wait_for_selector: s.anyOf("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", [
355
+ s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
356
+ s.array("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
357
+ s.literal(null, {
358
+ description: "CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.",
359
+ }),
360
+ ]),
361
+ set_cookies: s.nullable(s.array("POST only. 1-100 cookies in Set-Cookie syntax (name=value; Path=/; Domain=...), one line each, up to 4,096 characters.", s.string("set cookies value. item.", { minLength: 3, maxLength: 4096 }), { minItems: 1, maxItems: 100 })),
362
+ user_agent: s.nullable(s.string("User-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own.", { minLength: 1, maxLength: 1024 })),
363
+ inject_page_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in the main frame.", s.string("inject page script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
364
+ inject_frame_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in every frame.", s.string("inject frame script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
365
+ page_timeout: s.nullable(s.integer("Seconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout.", { minimum: 1, maximum: 180 })),
366
+ locale: s.nullable(s.string("Browser locale as a language tag, 2-64 characters. Defaults to the browser's own.", {
367
+ minLength: 2,
368
+ maxLength: 64,
369
+ pattern: "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
370
+ })),
371
+ referer: s.nullable(s.string("HTTP(S) URL sent as the Referer.", { minLength: 1, maxLength: 8192 })),
372
+ assert_status_code: s.nullable(s.integer("Expected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture.", { minimum: 100, maximum: 599 })),
373
+ viewport: s.nullable(s.object("POST only. Browser viewport; width and height are required. Default: 1280 x 1280.", {
374
+ width: s.integer("Viewport width in CSS pixels, 1-4,096. Required.", {
375
+ minimum: 1,
376
+ maximum: 4096,
377
+ }),
378
+ height: s.integer("Viewport height in CSS pixels, 1-4,096. Required.", {
379
+ minimum: 1,
380
+ maximum: 4096,
381
+ }),
382
+ device_scale_factor: s.nullable(s.number("Device pixel ratio, greater than 0 and at most 4.", {
383
+ maximum: 4,
384
+ exclusiveMinimum: 0,
385
+ })),
386
+ is_mobile: s.nullable(s.boolean("Emulate a mobile device.")),
387
+ is_landscape: s.nullable(s.boolean("Use landscape orientation.")),
388
+ has_touch: s.nullable(s.boolean("Emulate touch support.")),
389
+ }, { required: ["width", "height"] })),
390
+ robots_txt: s.nullable(s.string("User agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected.", { minLength: 1, maxLength: 256 })),
391
+ respond_timing: s.nullable(s.withEnum(s.unknown("Page readiness condition to reach before responding."), [
392
+ "html",
393
+ "visible-content",
394
+ "mutation-idle",
395
+ "resource-idle",
396
+ "media-idle",
397
+ "network-idle",
398
+ ])),
399
+ full_page: s.boolean("Capture the full page when true. The default, false, captures the viewport."),
400
+ }, { required: ["url"] }),
401
+ asyncInput: s.object("Screenshot asynchronous parameters.", {
402
+ url: s.string("Public HTTP(S) URL to capture, 1-8,192 characters. Include http:// or https://; bare domains are rejected. The host must be public, on port 80 or 443, without embedded credentials.", { minLength: 1, maxLength: 8192 }),
403
+ remove_overlay: s.nullable(s.boolean("Remove modal and cookie-banner overlays from the page.")),
404
+ detach_invisibles: s.nullable(s.boolean("Drop display:none elements from the page.")),
405
+ wait_for_selector: s.anyOf("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", [
406
+ s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", { minLength: 1, maxLength: 2048 }),
407
+ s.array("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.", s.string("CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors. item.", { minLength: 1, maxLength: 2048 }), { minItems: 1, maxItems: 16 }),
408
+ s.literal(null, {
409
+ description: "CSS selector to wait for after navigation, 1-2,048 characters. POST also accepts a list of 1-16 selectors.",
410
+ }),
411
+ ]),
412
+ set_cookies: s.nullable(s.array("POST only. 1-100 cookies in Set-Cookie syntax (name=value; Path=/; Domain=...), one line each, up to 4,096 characters.", s.string("set cookies value. item.", { minLength: 3, maxLength: 4096 }), { minItems: 1, maxItems: 100 })),
413
+ user_agent: s.nullable(s.string("User-Agent for the page request, 1-1,024 characters without control characters. Defaults to the browser's own.", { minLength: 1, maxLength: 1024 })),
414
+ inject_page_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in the main frame.", s.string("inject page script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
415
+ inject_frame_script: s.nullable(s.array("POST only. 1-8 scripts (source, or a URL to a script), up to 8,192 characters each, run in every frame.", s.string("inject frame script value. item.", { minLength: 1, maxLength: 8192 }), { minItems: 1, maxItems: 8 })),
416
+ page_timeout: s.nullable(s.integer("Seconds from 1 through 180 for page loading and browser operations. Cannot extend the total request budget set by timeout.", { minimum: 1, maximum: 180 })),
417
+ locale: s.nullable(s.string("Browser locale as a language tag, 2-64 characters. Defaults to the browser's own.", {
418
+ minLength: 2,
419
+ maxLength: 64,
420
+ pattern: "^[A-Za-z]{2,8}(?:-[A-Za-z0-9]{1,8})*$",
421
+ })),
422
+ referer: s.nullable(s.string("HTTP(S) URL sent as the Referer.", { minLength: 1, maxLength: 8192 })),
423
+ assert_status_code: s.nullable(s.integer("Expected origin HTTP status, 100-599. A different status is rejected; otherwise a rendered error page is a successful capture.", { minimum: 100, maximum: 599 })),
424
+ viewport: s.nullable(s.object("POST only. Browser viewport; width and height are required. Default: 1280 x 1280.", {
425
+ width: s.integer("Viewport width in CSS pixels, 1-4,096. Required.", {
426
+ minimum: 1,
427
+ maximum: 4096,
428
+ }),
429
+ height: s.integer("Viewport height in CSS pixels, 1-4,096. Required.", {
430
+ minimum: 1,
431
+ maximum: 4096,
432
+ }),
433
+ device_scale_factor: s.nullable(s.number("Device pixel ratio, greater than 0 and at most 4.", {
434
+ maximum: 4,
435
+ exclusiveMinimum: 0,
436
+ })),
437
+ is_mobile: s.nullable(s.boolean("Emulate a mobile device.")),
438
+ is_landscape: s.nullable(s.boolean("Use landscape orientation.")),
439
+ has_touch: s.nullable(s.boolean("Emulate touch support.")),
440
+ }, { required: ["width", "height"] })),
441
+ robots_txt: s.nullable(s.string("User agent, 1-256 characters, to check against the site's robots.txt; disallowed URLs are rejected.", { minLength: 1, maxLength: 256 })),
442
+ respond_timing: s.nullable(s.withEnum(s.unknown("Page readiness condition to reach before responding."), [
443
+ "html",
444
+ "visible-content",
445
+ "mutation-idle",
446
+ "resource-idle",
447
+ "media-idle",
448
+ "network-idle",
449
+ ])),
450
+ full_page: s.boolean("Capture the full page when true. The default, false, captures the viewport."),
451
+ timeout: s.number("Execution budget in seconds for each attempt. Queue and retry backoff time do not consume it. Supply once, in the JSON body or query string.", { maximum: 90, exclusiveMinimum: 0 }),
452
+ }, { required: ["url"] }),
453
+ output: s.looseObject("Screenshot response.", {
454
+ url: s.string("url value."),
455
+ title: s.nullable(s.string("title value.")),
456
+ description: s.nullable(s.string("description value.")),
457
+ full_page: s.boolean("full page value."),
458
+ submit_feedback_for_this_response_here: s.string("Optional URL for submitting feedback about this result.", {
459
+ format: "uri",
460
+ }),
461
+ }),
462
+ },
463
+ ];
@@ -0,0 +1,2 @@
1
+ import type { DataTool } from "./shared.ts";
2
+ export declare const wholefoodsTools: DataTool[];
@@ -0,0 +1,56 @@
1
+ import { s } from "../../core/json-schema.js";
2
+ export const wholefoodsTools = [
3
+ {
4
+ name: "wholefoods_product",
5
+ path: "/api/wholefoods/product",
6
+ description: "Get a Whole Foods product's details, price and availability. This upstream API is Alpha.",
7
+ input: s.object("Whole Foods Product parameters.", {
8
+ url: s.string("Public HTTPS product URL on this retailer's site.", {
9
+ minLength: 1,
10
+ maxLength: 4096,
11
+ }),
12
+ store_id: s.nullable(s.string("Retailer's store ID. Selects the store catalog, pricing or availability where the retailer exposes it.", { minLength: 1, maxLength: 8, pattern: "^[0-9]{1,8}$" })),
13
+ }, { required: ["url"] }),
14
+ asyncInput: s.object("Whole Foods Product asynchronous parameters.", {
15
+ url: s.string("Public HTTPS product URL on this retailer's site.", {
16
+ minLength: 1,
17
+ maxLength: 4096,
18
+ }),
19
+ store_id: s.string("Retailer's store ID. Selects the store catalog, pricing or availability where the retailer exposes it.", { minLength: 1, maxLength: 8, pattern: "^[0-9]{1,8}$" }),
20
+ timeout: s.number("Execution budget in seconds for each attempt. Queue and retry backoff time do not consume it. Supply once, in the JSON body or query string.", { maximum: 90, exclusiveMinimum: 0 }),
21
+ }, { required: ["url"] }),
22
+ output: s.looseObject("Whole Foods Product response.", {
23
+ search_metadata: s.looseObject("search metadata value.", {}),
24
+ search_parameters: s.looseObject("search parameters value.", {}),
25
+ product: s.looseObject("product value.", {}),
26
+ submit_feedback_for_this_response_here: s.string("Optional URL for submitting feedback about this result.", {
27
+ format: "uri",
28
+ }),
29
+ }),
30
+ },
31
+ {
32
+ name: "wholefoods_search",
33
+ path: "/api/wholefoods/search",
34
+ description: "Search Whole Foods products with prices and availability. This upstream API is Alpha.",
35
+ input: s.object("Whole Foods Search parameters.", {
36
+ query: s.string("Product keywords to search for.", { minLength: 1, maxLength: 500 }),
37
+ page: s.integer("One-based result page.", { minimum: 1, maximum: 100 }),
38
+ store_id: s.nullable(s.string("Retailer's store ID. Selects the store catalog, pricing or availability where the retailer exposes it.", { minLength: 1, maxLength: 8, pattern: "^[0-9]{1,8}$" })),
39
+ }, { required: ["query"] }),
40
+ asyncInput: s.object("Whole Foods Search asynchronous parameters.", {
41
+ query: s.string("Product keywords to search for.", { minLength: 1, maxLength: 500 }),
42
+ page: s.integer("One-based result page.", { minimum: 1, maximum: 100 }),
43
+ store_id: s.string("Retailer's store ID. Selects the store catalog, pricing or availability where the retailer exposes it.", { minLength: 1, maxLength: 8, pattern: "^[0-9]{1,8}$" }),
44
+ timeout: s.number("Execution budget in seconds for each attempt. Queue and retry backoff time do not consume it. Supply once, in the JSON body or query string.", { maximum: 90, exclusiveMinimum: 0 }),
45
+ }, { required: ["query"] }),
46
+ output: s.looseObject("Whole Foods Search response.", {
47
+ search_metadata: s.looseObject("search metadata value.", {}),
48
+ search_parameters: s.looseObject("search parameters value.", {}),
49
+ products: s.array("products value.", s.looseObject("products value. item.", {})),
50
+ pagination: s.looseObject("pagination value.", {}),
51
+ submit_feedback_for_this_response_here: s.string("Optional URL for submitting feedback about this result.", {
52
+ format: "uri",
53
+ }),
54
+ }),
55
+ },
56
+ ];
@@ -0,0 +1,2 @@
1
+ import type { DataTool } from "./shared.ts";
2
+ export declare const xTools: DataTool[];