@oomol-lab/open-connector 1.6.5 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (495) hide show
  1. package/README.md +4 -0
  2. package/assets/open-connector/catalog/apps/airtable.json +134 -0
  3. package/assets/open-connector/catalog/apps/aisa.json +6985 -319
  4. package/assets/open-connector/catalog/apps/baizhi_mcp.json +135 -0
  5. package/assets/open-connector/catalog/apps/cal.json +24 -6
  6. package/assets/open-connector/catalog/apps/discordbot.json +2888 -248
  7. package/assets/open-connector/catalog/apps/drawio_mcp.json +192 -0
  8. package/assets/open-connector/catalog/apps/enormail.json +411 -0
  9. package/assets/open-connector/catalog/apps/feishu_app_bot.json +158 -0
  10. package/assets/open-connector/catalog/apps/firecrawl.json +176 -32
  11. package/assets/open-connector/catalog/apps/framejet.json +273 -0
  12. package/assets/open-connector/catalog/apps/futunn.json +2967 -0
  13. package/assets/open-connector/catalog/apps/github.json +275 -0
  14. package/assets/open-connector/catalog/apps/gitlab.json +125 -0
  15. package/assets/open-connector/catalog/apps/gmail.json +376 -0
  16. package/assets/open-connector/catalog/apps/google_analytics.json +4 -1
  17. package/assets/open-connector/catalog/apps/google_bigquery.json +4 -1
  18. package/assets/open-connector/catalog/apps/google_search_console.json +4 -1
  19. package/assets/open-connector/catalog/apps/googlecalendar.json +210 -1
  20. package/assets/open-connector/catalog/apps/googlechat.json +694 -7
  21. package/assets/open-connector/catalog/apps/googledocs.json +4 -1
  22. package/assets/open-connector/catalog/apps/googledrive.json +479 -0
  23. package/assets/open-connector/catalog/apps/googlesheets.json +148 -1
  24. package/assets/open-connector/catalog/apps/granola.json +23 -0
  25. package/assets/open-connector/catalog/apps/hithink_finance.json +6 -3
  26. package/assets/open-connector/catalog/apps/indexed.json +1115 -0
  27. package/assets/open-connector/catalog/apps/keepa.json +3534 -987
  28. package/assets/open-connector/catalog/apps/linear.json +133 -0
  29. package/assets/open-connector/catalog/apps/linear_mcp.json +510 -0
  30. package/assets/open-connector/catalog/apps/moneyforward_mcp.json +1432 -0
  31. package/assets/open-connector/catalog/apps/notion.json +588 -1
  32. package/assets/open-connector/catalog/apps/notion_mcp.json +490 -0
  33. package/assets/open-connector/catalog/apps/odoo.json +619 -0
  34. package/assets/open-connector/catalog/apps/one_drive.json +185 -0
  35. package/assets/open-connector/catalog/apps/outlook.json +212 -8
  36. package/assets/open-connector/catalog/apps/outlook_calendar.json +23 -2
  37. package/assets/open-connector/catalog/apps/postiz.json +334 -0
  38. package/assets/open-connector/catalog/apps/proworkflow.json +529 -0
  39. package/assets/open-connector/catalog/apps/sellersprite_mcp.json +2 -1
  40. package/assets/open-connector/catalog/apps/shopify.json +282 -0
  41. package/assets/open-connector/catalog/apps/slack.json +405 -0
  42. package/assets/open-connector/catalog/apps/slackbot.json +214 -0
  43. package/assets/open-connector/catalog/apps/spotify.json +46 -43
  44. package/assets/open-connector/catalog/apps/stripe.json +96 -0
  45. package/assets/open-connector/catalog/apps/telegram.json +138 -0
  46. package/assets/open-connector/catalog/apps/tencent_docs.json +3 -0
  47. package/assets/open-connector/catalog/apps/weixin_store.json +543 -2
  48. package/assets/open-connector/catalog/apps/wisburg.json +1528 -0
  49. package/assets/open-connector/catalog/apps/woocommerce.json +127 -0
  50. package/assets/open-connector/catalog/apps/youtube.json +4 -1
  51. package/assets/open-connector/catalog/apps/zendesk.json +152 -0
  52. package/assets/open-connector/catalog/apps/zerotier.json +3319 -0
  53. package/assets/open-connector/catalog/apps-index.json +1 -1
  54. package/assets/open-connector/migrations/0014_saas_project.sql +55 -0
  55. package/assets/open-connector/migrations/0015_saas_cleanup_runtime.sql +8 -0
  56. package/assets/open-connector/migrations/0016_trigger_policy.sql +1 -0
  57. package/assets/open-connector/migrations/0017_trigger_subscriptions.sql +17 -0
  58. package/assets/open-connector/migrations/postgresql/0014_saas_project.sql +55 -0
  59. package/assets/open-connector/migrations/postgresql/0015_saas_cleanup_runtime.sql +8 -0
  60. package/assets/open-connector/migrations/postgresql/0016_trigger_policy.sql +1 -0
  61. package/assets/open-connector/migrations/postgresql/0017_trigger_subscriptions.sql +17 -0
  62. package/package.json +2 -2
  63. package/src/connection-service.d.ts +40 -7
  64. package/src/connection-service.js +60 -18
  65. package/src/core/action-policy.d.ts +8 -1
  66. package/src/core/action-policy.js +51 -0
  67. package/src/core/cast.d.ts +13 -0
  68. package/src/core/cast.js +18 -1
  69. package/src/core/guarded-fetch.d.ts +11 -3
  70. package/src/core/guarded-fetch.js +19 -7
  71. package/src/core/provider-scenarios.js +67 -13
  72. package/src/core/remote-http.d.ts +33 -0
  73. package/src/core/remote-http.js +104 -0
  74. package/src/core/request.d.ts +1 -0
  75. package/src/core/request.js +11 -1
  76. package/src/core/types.d.ts +5 -1
  77. package/src/marketplace/marketplace-service.d.ts +0 -1
  78. package/src/marketplace/marketplace-service.js +80 -92
  79. package/src/mcp.js +26 -9
  80. package/src/oauth/oauth-client-config-service.d.ts +16 -1
  81. package/src/oauth/oauth-client-config-service.js +59 -3
  82. package/src/oauth/oauth-flow-service.d.ts +14 -1
  83. package/src/oauth/oauth-flow-service.js +14 -6
  84. package/src/providers/17track/runtime.js +1 -1
  85. package/src/providers/action-contracts.generated.d.ts +20 -6
  86. package/src/providers/aifinmarket/runtime.js +1 -1
  87. package/src/providers/airtable/executors.d.ts +3 -0
  88. package/src/providers/airtable/executors.js +2 -0
  89. package/src/providers/airtable/trigger-on-record-changed.d.ts +2 -0
  90. package/src/providers/airtable/trigger-on-record-changed.definition.d.ts +4 -0
  91. package/src/providers/airtable/trigger-on-record-changed.definition.js +54 -0
  92. package/src/providers/airtable/trigger-on-record-changed.js +235 -0
  93. package/src/providers/aisa/executors.js +912 -50
  94. package/src/providers/aliyun_ack/runtime.js +1 -1
  95. package/src/providers/aliyun_sls/runtime.js +1 -1
  96. package/src/providers/app_store_server/runtime-helpers.js +1 -1
  97. package/src/providers/baizhi_mcp/actions.d.ts +2 -0
  98. package/src/providers/baizhi_mcp/actions.js +40 -0
  99. package/src/providers/baizhi_mcp/executors.d.ts +3 -0
  100. package/src/providers/baizhi_mcp/executors.js +102 -0
  101. package/src/providers/bazhuayu/runtime.js +2 -2
  102. package/src/providers/bilibili/runtime.js +2 -4
  103. package/src/providers/bilibili/upload.js +9 -7
  104. package/src/providers/cal/actions.js +5 -1
  105. package/src/providers/cloudflare_browser_rendering/executors.js +1 -1
  106. package/src/providers/cloudflare_dns/executors.js +1 -1
  107. package/src/providers/{cloudflare-current-user.js → cloudflare_dns/runtime-user.js} +2 -2
  108. package/src/providers/cloudflare_dns/runtime.d.ts +1 -1
  109. package/src/providers/cloudflare_dns/runtime.js +1 -1
  110. package/src/providers/cloudflare_r2/executors.js +1 -1
  111. package/src/providers/cloudflare_r2/runtime.d.ts +1 -1
  112. package/src/providers/cloudflare_r2/runtime.js +1 -1
  113. package/src/providers/cloudflare_worker/executors.js +1 -1
  114. package/src/providers/cloudflare_worker/runtime.d.ts +1 -1
  115. package/src/providers/cloudflare_worker/runtime.js +1 -1
  116. package/src/providers/dingtalk_mcp/runtime.js +1 -1
  117. package/src/providers/discordbot/executors.d.ts +0 -9
  118. package/src/providers/discordbot/executors.js +9 -101
  119. package/src/providers/discordbot/runtime-guilds.d.ts +3 -0
  120. package/src/providers/discordbot/runtime-guilds.js +464 -0
  121. package/src/providers/discordbot/runtime.d.ts +42 -0
  122. package/src/providers/discordbot/runtime.js +124 -0
  123. package/src/providers/drawio_mcp/executors.d.ts +3 -0
  124. package/src/providers/drawio_mcp/executors.js +19 -0
  125. package/src/providers/drawio_mcp/runtime.d.ts +8 -0
  126. package/src/providers/drawio_mcp/runtime.js +175 -0
  127. package/src/providers/enormail/executors.d.ts +4 -0
  128. package/src/providers/enormail/executors.js +97 -0
  129. package/src/providers/fastmoss_mcp/executors.js +2 -2
  130. package/src/providers/feishu_app_bot/executors.d.ts +3 -0
  131. package/src/providers/feishu_app_bot/executors.js +2 -0
  132. package/src/providers/feishu_app_bot/trigger-config.d.ts +1 -0
  133. package/src/providers/feishu_app_bot/trigger-config.js +10 -0
  134. package/src/providers/feishu_app_bot/trigger-on-event.d.ts +2 -0
  135. package/src/providers/feishu_app_bot/trigger-on-event.definition.d.ts +4 -0
  136. package/src/providers/feishu_app_bot/trigger-on-event.definition.js +63 -0
  137. package/src/providers/feishu_app_bot/trigger-on-event.js +29 -0
  138. package/src/providers/feishu_app_bot/trigger-subscriptions.d.ts +5 -0
  139. package/src/providers/feishu_app_bot/trigger-subscriptions.js +70 -0
  140. package/src/providers/finchina/executors.js +1 -1
  141. package/src/providers/framejet/executors.d.ts +4 -0
  142. package/src/providers/framejet/executors.js +19 -0
  143. package/src/providers/framejet/runtime.d.ts +16 -0
  144. package/src/providers/framejet/runtime.js +148 -0
  145. package/src/providers/futunn/actions.d.ts +2 -0
  146. package/src/providers/futunn/actions.js +152 -0
  147. package/src/providers/futunn/actions.research.d.ts +2 -0
  148. package/src/providers/futunn/actions.research.js +423 -0
  149. package/src/providers/futunn/actions.trading.d.ts +2 -0
  150. package/src/providers/futunn/actions.trading.js +204 -0
  151. package/src/providers/futunn/executors.d.ts +3 -0
  152. package/src/providers/futunn/executors.js +24 -0
  153. package/src/providers/futunn/runtime-research.d.ts +3 -0
  154. package/src/providers/futunn/runtime-research.js +133 -0
  155. package/src/providers/futunn/runtime-trading.d.ts +3 -0
  156. package/src/providers/futunn/runtime-trading.js +39 -0
  157. package/src/providers/futunn/runtime.d.ts +2 -0
  158. package/src/providers/futunn/runtime.js +50 -0
  159. package/src/providers/futunn/transport.d.ts +11 -0
  160. package/src/providers/futunn/transport.js +76 -0
  161. package/src/providers/gildata/executors.js +1 -1
  162. package/src/providers/github/executors.d.ts +3 -0
  163. package/src/providers/github/executors.js +6 -0
  164. package/src/providers/github/trigger-on-repo-event.d.ts +2 -0
  165. package/src/providers/github/trigger-on-repo-event.definition.d.ts +4 -0
  166. package/src/providers/github/trigger-on-repo-event.definition.js +94 -0
  167. package/src/providers/github/trigger-on-repo-event.js +168 -0
  168. package/src/providers/github/trigger-watch-pull-request.d.ts +2 -0
  169. package/src/providers/github/trigger-watch-pull-request.definition.d.ts +4 -0
  170. package/src/providers/github/trigger-watch-pull-request.definition.js +49 -0
  171. package/src/providers/github/trigger-watch-pull-request.js +106 -0
  172. package/src/providers/gitlab/executors.d.ts +3 -0
  173. package/src/providers/gitlab/executors.js +2 -0
  174. package/src/providers/gitlab/trigger-on-project-event.d.ts +2 -0
  175. package/src/providers/gitlab/trigger-on-project-event.definition.d.ts +5 -0
  176. package/src/providers/gitlab/trigger-on-project-event.definition.js +63 -0
  177. package/src/providers/gitlab/trigger-on-project-event.js +186 -0
  178. package/src/providers/gmail/executors.d.ts +3 -0
  179. package/src/providers/gmail/executors.js +5 -3
  180. package/src/providers/gmail/message.d.ts +6 -8
  181. package/src/providers/gmail/message.js +4 -0
  182. package/src/providers/gmail/scopes.d.ts +32 -0
  183. package/src/providers/gmail/scopes.js +37 -0
  184. package/src/providers/gmail/trigger-on-message-received.d.ts +2 -0
  185. package/src/providers/gmail/trigger-on-message-received.definition.d.ts +4 -0
  186. package/src/providers/gmail/trigger-on-message-received.definition.js +74 -0
  187. package/src/providers/gmail/trigger-on-message-received.js +232 -0
  188. package/src/providers/google_analytics/executors.js +2 -2
  189. package/src/providers/google_analytics/scopes.js +6 -1
  190. package/src/providers/google_bigquery/executors.js +2 -2
  191. package/src/providers/google_bigquery/scopes.js +2 -0
  192. package/src/providers/google_search_console/executors.js +2 -2
  193. package/src/providers/google_search_console/scopes.js +2 -0
  194. package/src/providers/googleads/executors.js +1 -1
  195. package/src/providers/googleads/scopes.d.ts +1 -3
  196. package/src/providers/googleads/scopes.js +2 -4
  197. package/src/providers/googlecalendar/executors.d.ts +3 -0
  198. package/src/providers/googlecalendar/executors.js +3 -1
  199. package/src/providers/googlecalendar/runtime-shared.js +2 -2
  200. package/src/providers/googlecalendar/scopes.js +2 -0
  201. package/src/providers/googlecalendar/trigger-on-event-changed.d.ts +2 -0
  202. package/src/providers/googlecalendar/trigger-on-event-changed.definition.d.ts +4 -0
  203. package/src/providers/googlecalendar/trigger-on-event-changed.definition.js +74 -0
  204. package/src/providers/googlecalendar/trigger-on-event-changed.js +233 -0
  205. package/src/providers/googlechat/executors.d.ts +1 -3
  206. package/src/providers/googlechat/executors.js +219 -28
  207. package/src/providers/googlechat/members.d.ts +55 -0
  208. package/src/providers/googlechat/members.js +293 -0
  209. package/src/providers/googlechat/runtime.d.ts +16 -0
  210. package/src/providers/googlechat/runtime.js +25 -0
  211. package/src/providers/googlechat/scopes.d.ts +22 -3
  212. package/src/providers/googlechat/scopes.js +30 -7
  213. package/src/providers/googledocs/executors.js +1 -1
  214. package/src/providers/googledrive/executors.d.ts +3 -0
  215. package/src/providers/googledrive/executors.js +9 -2
  216. package/src/providers/{google-auth.d.ts → googledrive/runtime-auth.d.ts} +2 -2
  217. package/src/providers/{google-auth.js → googledrive/runtime-auth.js} +3 -3
  218. package/src/providers/googledrive/runtime-collaboration.js +1 -1
  219. package/src/providers/{google-runtime.d.ts → googledrive/runtime-request.d.ts} +1 -1
  220. package/src/providers/{google-runtime.js → googledrive/runtime-request.js} +2 -2
  221. package/src/providers/googledrive/trigger-changes.d.ts +12 -0
  222. package/src/providers/googledrive/trigger-changes.definition.d.ts +7 -0
  223. package/src/providers/googledrive/trigger-changes.definition.js +101 -0
  224. package/src/providers/googledrive/trigger-changes.js +452 -0
  225. package/src/providers/googledrive/trigger-on-file-change.d.ts +2 -0
  226. package/src/providers/googledrive/trigger-on-file-change.definition.d.ts +4 -0
  227. package/src/providers/googledrive/trigger-on-file-change.definition.js +77 -0
  228. package/src/providers/googledrive/trigger-on-file-change.js +258 -0
  229. package/src/providers/googleforms/executors.js +2 -2
  230. package/src/providers/googleforms/scopes.d.ts +0 -3
  231. package/src/providers/googleforms/scopes.js +2 -6
  232. package/src/providers/googlemeet/executors.js +2 -2
  233. package/src/providers/googlemeet/scopes.d.ts +0 -3
  234. package/src/providers/googlemeet/scopes.js +2 -6
  235. package/src/providers/googlesheets/executors.d.ts +3 -0
  236. package/src/providers/googlesheets/executors.js +3 -1
  237. package/src/providers/googlesheets/scopes.js +2 -0
  238. package/src/providers/googlesheets/trigger-on-row-added.d.ts +2 -0
  239. package/src/providers/googlesheets/trigger-on-row-added.definition.d.ts +4 -0
  240. package/src/providers/googlesheets/trigger-on-row-added.definition.js +54 -0
  241. package/src/providers/googlesheets/trigger-on-row-added.js +234 -0
  242. package/src/providers/googleslides/executors.js +2 -2
  243. package/src/providers/googleslides/scopes.d.ts +0 -3
  244. package/src/providers/googleslides/scopes.js +2 -6
  245. package/src/providers/googletasks/executors.js +2 -2
  246. package/src/providers/googletasks/scopes.d.ts +0 -3
  247. package/src/providers/googletasks/scopes.js +2 -6
  248. package/src/providers/granola/actions.js +2 -0
  249. package/src/providers/granola/runtime-mcp.js +2 -0
  250. package/src/providers/granola/runtime.js +2 -2
  251. package/src/providers/hithink_finance/runtime.js +1 -1
  252. package/src/providers/indexed/executors.d.ts +4 -0
  253. package/src/providers/indexed/executors.js +16 -0
  254. package/src/providers/indexed/runtime.d.ts +26 -0
  255. package/src/providers/indexed/runtime.js +129 -0
  256. package/src/providers/indiegogo/executors.js +1 -1
  257. package/src/providers/investoday_mcp/executors.js +2 -2
  258. package/src/providers/iyunbiao/runtime.js +2 -2
  259. package/src/providers/keepa/actions.d.ts +1 -1
  260. package/src/providers/keepa/actions.js +371 -149
  261. package/src/providers/keepa/deal-attributes.d.ts +1 -0
  262. package/src/providers/keepa/deal-attributes.js +26 -0
  263. package/src/providers/keepa/runtime.js +212 -18
  264. package/src/providers/kingdee/executors.js +1 -1
  265. package/src/providers/kingdee/runtime.js +2 -2
  266. package/src/providers/kuaidi100/runtime.js +1 -1
  267. package/src/providers/linear/executors.d.ts +3 -0
  268. package/src/providers/linear/executors.js +14 -9
  269. package/src/providers/linear/trigger-on-issue-changed.d.ts +2 -0
  270. package/src/providers/linear/trigger-on-issue-changed.definition.d.ts +5 -0
  271. package/src/providers/linear/trigger-on-issue-changed.definition.js +43 -0
  272. package/src/providers/linear/trigger-on-issue-changed.js +215 -0
  273. package/src/providers/linear_mcp/actions.d.ts +47 -0
  274. package/src/providers/linear_mcp/actions.js +102 -0
  275. package/src/providers/linear_mcp/endpoints.d.ts +3 -0
  276. package/src/providers/linear_mcp/endpoints.js +3 -0
  277. package/src/providers/linear_mcp/executors.d.ts +3 -0
  278. package/src/providers/linear_mcp/executors.js +9 -0
  279. package/src/providers/linear_mcp/runtime-mcp.d.ts +15 -0
  280. package/src/providers/linear_mcp/runtime-mcp.js +238 -0
  281. package/src/providers/lingxing_mcp/runtime.js +1 -1
  282. package/src/providers/mcdonalds_cn_mcp/runtime.js +1 -1
  283. package/src/providers/metabase/mcp-runtime.js +1 -1
  284. package/src/providers/moneyforward_mcp/executors.d.ts +3 -0
  285. package/src/providers/moneyforward_mcp/executors.js +11 -0
  286. package/src/providers/moneyforward_mcp/manifest.d.ts +31 -0
  287. package/src/providers/moneyforward_mcp/manifest.js +204 -0
  288. package/src/providers/moneyforward_mcp/runtime.d.ts +18 -0
  289. package/src/providers/moneyforward_mcp/runtime.js +296 -0
  290. package/src/providers/notion/executors.d.ts +3 -0
  291. package/src/providers/notion/executors.js +41 -3
  292. package/src/providers/notion/trigger-on-database-page-event.d.ts +2 -0
  293. package/src/providers/notion/trigger-on-database-page-event.definition.d.ts +4 -0
  294. package/src/providers/notion/trigger-on-database-page-event.definition.js +63 -0
  295. package/src/providers/notion/trigger-on-database-page-event.js +293 -0
  296. package/src/providers/notion_mcp/endpoints.d.ts +3 -0
  297. package/src/providers/notion_mcp/endpoints.js +3 -0
  298. package/src/providers/notion_mcp/executors.d.ts +3 -0
  299. package/src/providers/notion_mcp/executors.js +176 -0
  300. package/src/providers/notion_mcp/mcp-response.d.ts +86 -0
  301. package/src/providers/notion_mcp/mcp-response.js +314 -0
  302. package/src/providers/odoo/executors.d.ts +3 -0
  303. package/src/providers/odoo/executors.js +32 -0
  304. package/src/providers/odoo/runtime.d.ts +16 -0
  305. package/src/providers/odoo/runtime.js +140 -0
  306. package/src/providers/one_drive/executors.d.ts +3 -0
  307. package/src/providers/one_drive/executors.js +2 -0
  308. package/src/providers/one_drive/trigger-on-item-changed.d.ts +2 -0
  309. package/src/providers/one_drive/trigger-on-item-changed.definition.d.ts +4 -0
  310. package/src/providers/one_drive/trigger-on-item-changed.definition.js +63 -0
  311. package/src/providers/one_drive/trigger-on-item-changed.js +214 -0
  312. package/src/providers/outlook/executors.d.ts +3 -0
  313. package/src/providers/outlook/executors.js +29 -6
  314. package/src/providers/outlook/microsoft-graph.js +17 -6
  315. package/src/providers/outlook/trigger-on-message-received.d.ts +2 -0
  316. package/src/providers/outlook/trigger-on-message-received.definition.d.ts +4 -0
  317. package/src/providers/outlook/trigger-on-message-received.definition.js +93 -0
  318. package/src/providers/outlook/trigger-on-message-received.js +226 -0
  319. package/src/providers/outlook_calendar/executors.js +30 -7
  320. package/src/providers/patsnap_mcp/executors.js +2 -2
  321. package/src/providers/postiz/executors.d.ts +4 -0
  322. package/src/providers/postiz/executors.js +83 -0
  323. package/src/providers/provider-loader.d.ts +5 -0
  324. package/src/providers/provider-loader.js +4 -0
  325. package/src/providers/provider-runtime.d.ts +15 -0
  326. package/src/providers/provider-runtime.js +57 -4
  327. package/src/providers/proworkflow/executors.d.ts +4 -0
  328. package/src/providers/proworkflow/executors.js +135 -0
  329. package/src/providers/registry.generated.js +14 -0
  330. package/src/providers/scrape_creators/catalog.js +1 -1
  331. package/src/providers/scrape_creators/runtime.js +1 -1
  332. package/src/providers/sellersprite_mcp/executors.js +2 -2
  333. package/src/providers/sellersprite_mcp/official-actions.js +3 -2
  334. package/src/providers/sentry/runtime.js +6 -7
  335. package/src/providers/shopify/executors.d.ts +3 -0
  336. package/src/providers/shopify/executors.js +2 -0
  337. package/src/providers/shopify/trigger-on-shop-event.d.ts +2 -0
  338. package/src/providers/shopify/trigger-on-shop-event.definition.d.ts +4 -0
  339. package/src/providers/shopify/trigger-on-shop-event.definition.js +214 -0
  340. package/src/providers/shopify/trigger-on-shop-event.js +165 -0
  341. package/src/providers/slack/actions.js +52 -3
  342. package/src/providers/slack/executors.d.ts +3 -0
  343. package/src/providers/slack/executors.js +2 -0
  344. package/src/providers/slack/runtime.js +58 -21
  345. package/src/providers/slack/trigger-on-message-posted.d.ts +2 -0
  346. package/src/providers/slack/trigger-on-message-posted.definition.d.ts +4 -0
  347. package/src/providers/slack/trigger-on-message-posted.definition.js +80 -0
  348. package/src/providers/slack/trigger-on-message-posted.js +176 -0
  349. package/src/providers/slickdeals/runtime.js +1 -1
  350. package/src/providers/sorftime_mcp/executors.js +2 -2
  351. package/src/providers/spotify/runtime.js +15 -4
  352. package/src/providers/stripe/executors.d.ts +3 -0
  353. package/src/providers/stripe/executors.js +2 -0
  354. package/src/providers/stripe/trigger-on-event.d.ts +2 -0
  355. package/src/providers/stripe/trigger-on-event.definition.d.ts +4 -0
  356. package/src/providers/stripe/trigger-on-event.definition.js +43 -0
  357. package/src/providers/stripe/trigger-on-event.js +212 -0
  358. package/src/providers/telegram/executors.d.ts +3 -0
  359. package/src/providers/telegram/executors.js +2 -0
  360. package/src/providers/telegram/trigger-on-update.d.ts +2 -0
  361. package/src/providers/telegram/trigger-on-update.definition.d.ts +5 -0
  362. package/src/providers/telegram/trigger-on-update.definition.js +78 -0
  363. package/src/providers/telegram/trigger-on-update.js +141 -0
  364. package/src/providers/tikhub/bounded-response.d.ts +1 -1
  365. package/src/providers/tikhub/bounded-response.js +8 -34
  366. package/src/providers/tikhub/endpoint-catalog.js +1 -1
  367. package/src/providers/tikhub/runtime.js +2 -2
  368. package/src/providers/tongdaxin/executors.js +79 -15
  369. package/src/providers/uspto/executors.js +1 -1
  370. package/src/providers/waffo/executors.js +1 -1
  371. package/src/providers/waffo/runtime.js +1 -1
  372. package/src/providers/wecom_mcp/runtime.js +1 -1
  373. package/src/providers/weixin_store/access-token.d.ts +2 -1
  374. package/src/providers/weixin_store/access-token.js +15 -4
  375. package/src/providers/weixin_store/executors.js +97 -12
  376. package/src/providers/wisburg/executors.d.ts +4 -0
  377. package/src/providers/wisburg/executors.js +13 -0
  378. package/src/providers/wisburg/runtime.d.ts +12 -0
  379. package/src/providers/wisburg/runtime.js +133 -0
  380. package/src/providers/woocommerce/executors.d.ts +3 -0
  381. package/src/providers/woocommerce/executors.js +2 -0
  382. package/src/providers/woocommerce/trigger-on-store-event.d.ts +2 -0
  383. package/src/providers/woocommerce/trigger-on-store-event.definition.d.ts +4 -0
  384. package/src/providers/woocommerce/trigger-on-store-event.definition.js +55 -0
  385. package/src/providers/woocommerce/trigger-on-store-event.js +179 -0
  386. package/src/providers/xydc_mcp/executors.js +2 -2
  387. package/src/providers/youtube/executors.js +1 -1
  388. package/src/providers/youtube/runtime.js +1 -1
  389. package/src/providers/zendesk/executors.d.ts +3 -0
  390. package/src/providers/zendesk/executors.js +2 -0
  391. package/src/providers/zendesk/trigger-on-event.d.ts +2 -0
  392. package/src/providers/zendesk/trigger-on-event.definition.d.ts +5 -0
  393. package/src/providers/zendesk/trigger-on-event.definition.js +101 -0
  394. package/src/providers/zendesk/trigger-on-event.js +188 -0
  395. package/src/providers/zerotier/executors.d.ts +9 -0
  396. package/src/providers/zerotier/executors.js +629 -0
  397. package/src/providers/zerotier/runtime.d.ts +54 -0
  398. package/src/providers/zerotier/runtime.js +207 -0
  399. package/src/saas/saas-cleanup-service.d.ts +26 -0
  400. package/src/saas/saas-cleanup-service.js +124 -0
  401. package/src/saas/saas-client.d.ts +86 -0
  402. package/src/saas/saas-client.js +369 -0
  403. package/src/saas/saas-execution-service.d.ts +15 -0
  404. package/src/saas/saas-execution-service.js +21 -0
  405. package/src/saas/saas-oauth-service.d.ts +25 -0
  406. package/src/saas/saas-oauth-service.js +197 -0
  407. package/src/saas/saas-project-service.d.ts +61 -0
  408. package/src/saas/saas-project-service.js +211 -0
  409. package/src/server/actions/action-idempotency.d.ts +1 -0
  410. package/src/server/actions/action-idempotency.js +1 -0
  411. package/src/server/actions/action-runner.d.ts +7 -0
  412. package/src/server/actions/action-runner.js +43 -7
  413. package/src/server/actions/run-log-summary.js +9 -0
  414. package/src/server/api/auth.d.ts +1 -0
  415. package/src/server/api/auth.js +13 -2
  416. package/src/server/api/cache-policy.js +4 -1
  417. package/src/server/api/connection-input.d.ts +7 -1
  418. package/src/server/api/connection-input.js +7 -1
  419. package/src/server/api/connection-routes.d.ts +3 -1
  420. package/src/server/api/connection-routes.js +21 -3
  421. package/src/server/api/http-utils.d.ts +4 -3
  422. package/src/server/api/oauth-completion-page.d.ts +124 -0
  423. package/src/server/api/oauth-completion-page.js +113 -18
  424. package/src/server/api/openapi.js +123 -15
  425. package/src/server/api/policy-input.js +6 -0
  426. package/src/server/api/runtime-api.d.ts +18 -3
  427. package/src/server/api/runtime-api.js +36 -5
  428. package/src/server/api/saas-completion-page.d.ts +2 -0
  429. package/src/server/api/saas-completion-page.js +103 -0
  430. package/src/server/connect-app.d.ts +5 -0
  431. package/src/server/connect-app.js +50 -0
  432. package/src/server/connect-server.d.ts +12 -0
  433. package/src/server/connect-server.js +157 -15
  434. package/src/server/connector-runtime.d.ts +3 -1
  435. package/src/server/connector-runtime.js +5 -2
  436. package/src/server/files/transit-files.js +16 -7
  437. package/src/server/proxy/proxy-runner.d.ts +5 -1
  438. package/src/server/proxy/proxy-runner.js +72 -26
  439. package/src/server/storage/connection-request-store.d.ts +41 -1
  440. package/src/server/storage/connection-request-store.js +245 -20
  441. package/src/server/storage/connection-store.d.ts +16 -0
  442. package/src/server/storage/connection-store.js +119 -0
  443. package/src/server/storage/node-runtime-database.js +3 -3
  444. package/src/server/storage/{postgres-migrations.d.ts → postgres/migrations.d.ts} +2 -2
  445. package/src/server/storage/{postgres-migrations.js → postgres/migrations.js} +1 -1
  446. package/src/server/storage/postgres/runtime-store.d.ts +43 -0
  447. package/src/server/storage/{postgres-runtime-store.js → postgres/runtime-store.js} +59 -94
  448. package/src/server/storage/runtime-database.d.ts +4 -0
  449. package/src/server/storage/runtime-sql.d.ts +1 -1
  450. package/src/server/storage/runtime-sql.js +2 -1
  451. package/src/server/storage/runtime-store.d.ts +1 -0
  452. package/src/server/storage/runtime-token-service.d.ts +2 -0
  453. package/src/server/storage/runtime-token-service.js +3 -0
  454. package/src/server/storage/saas-project-store.d.ts +77 -0
  455. package/src/server/storage/saas-project-store.js +273 -0
  456. package/src/server/storage/{sqlite-runtime-store.d.ts → sqlite/runtime-store.d.ts} +21 -25
  457. package/src/server/storage/{sqlite-runtime-store.js → sqlite/runtime-store.js} +100 -115
  458. package/src/server/storage/trigger-store.d.ts +16 -0
  459. package/src/server/storage/trigger-store.js +96 -0
  460. package/src/triggers/common/config.d.ts +2 -0
  461. package/src/triggers/common/config.js +17 -0
  462. package/src/triggers/common/configOptions.d.ts +13 -0
  463. package/src/triggers/common/configOptions.js +1 -0
  464. package/src/triggers/common/encoding.d.ts +3 -0
  465. package/src/triggers/common/encoding.js +19 -0
  466. package/src/triggers/common/integration.d.ts +115 -0
  467. package/src/triggers/common/integration.js +31 -0
  468. package/src/triggers/common/json.d.ts +6 -0
  469. package/src/triggers/common/json.js +91 -0
  470. package/src/triggers/common/poll.d.ts +41 -0
  471. package/src/triggers/common/poll.js +15 -0
  472. package/src/triggers/common/proxy.d.ts +14 -0
  473. package/src/triggers/common/proxy.js +1 -0
  474. package/src/triggers/common/types.d.ts +42 -0
  475. package/src/triggers/common/types.js +1 -0
  476. package/src/triggers/maintenance.d.ts +40 -0
  477. package/src/triggers/maintenance.js +120 -0
  478. package/src/triggers/metadata.d.ts +8 -0
  479. package/src/triggers/metadata.js +1 -0
  480. package/src/triggers/request.d.ts +33 -0
  481. package/src/triggers/request.js +52 -0
  482. package/src/triggers/resources.d.ts +12 -0
  483. package/src/triggers/resources.js +121 -0
  484. package/src/triggers/signature.d.ts +4 -0
  485. package/src/triggers/signature.js +48 -0
  486. package/src/triggers/store.d.ts +29 -0
  487. package/src/triggers/store.js +1 -0
  488. package/src/triggers/subscriptions.d.ts +22 -0
  489. package/src/triggers/subscriptions.js +220 -0
  490. package/src/triggers/trigger-runner.d.ts +34 -0
  491. package/src/triggers/trigger-runner.js +169 -0
  492. package/src/providers/sentry/scopes.d.ts +0 -1
  493. package/src/providers/sentry/scopes.js +0 -7
  494. package/src/server/storage/postgres-runtime-store.d.ts +0 -39
  495. /package/src/providers/{cloudflare-current-user.d.ts → cloudflare_dns/runtime-user.d.ts} +0 -0
@@ -294,6 +294,203 @@
294
294
  "weixin_store.listing_product"
295
295
  ]
296
296
  },
297
+ {
298
+ "id": "weixin_store.apply_category",
299
+ "service": "weixin_store",
300
+ "name": "apply_category",
301
+ "description": "Apply for permission to sell in a leaf category using the new category tree and certificate groups. Returns an audit id; check the audit and effective permission before publishing products.",
302
+ "operationType": "write",
303
+ "requiredScopes": [],
304
+ "providerPermissions": [
305
+ "Apply for categories in the connected WeChat Store"
306
+ ],
307
+ "inputSchema": {
308
+ "type": "object",
309
+ "properties": {
310
+ "categoryInfo": {
311
+ "type": "object",
312
+ "properties": {
313
+ "cats_v2": {
314
+ "type": "array",
315
+ "items": {
316
+ "type": "object",
317
+ "properties": {
318
+ "cat_id": {
319
+ "anyOf": [
320
+ {
321
+ "type": "integer",
322
+ "minimum": 1,
323
+ "description": "The id as a number."
324
+ },
325
+ {
326
+ "type": "string",
327
+ "pattern": "^[1-9][0-9]*$",
328
+ "description": "The id as a numeric string."
329
+ }
330
+ ],
331
+ "description": "One category id in the path."
332
+ }
333
+ },
334
+ "additionalProperties": false,
335
+ "required": [
336
+ "cat_id"
337
+ ],
338
+ "description": "One category in the path."
339
+ },
340
+ "description": "The category path from root to leaf, using cat_id values from list_categories.",
341
+ "minItems": 1
342
+ },
343
+ "license_group_list": {
344
+ "type": "array",
345
+ "items": {
346
+ "type": "object",
347
+ "properties": {
348
+ "license_group_id": {
349
+ "anyOf": [
350
+ {
351
+ "type": "integer",
352
+ "minimum": 1,
353
+ "description": "The id as a number."
354
+ },
355
+ {
356
+ "type": "string",
357
+ "pattern": "^[1-9][0-9]*$",
358
+ "description": "The id as a numeric string."
359
+ }
360
+ ],
361
+ "description": "The required certificate group id."
362
+ },
363
+ "license": {
364
+ "type": "object",
365
+ "properties": {
366
+ "license_id": {
367
+ "anyOf": [
368
+ {
369
+ "type": "integer",
370
+ "minimum": 1,
371
+ "description": "The id as a number."
372
+ },
373
+ {
374
+ "type": "string",
375
+ "pattern": "^[1-9][0-9]*$",
376
+ "description": "The id as a numeric string."
377
+ }
378
+ ],
379
+ "description": "One permitted license id in the group."
380
+ },
381
+ "file_id_list": {
382
+ "type": "array",
383
+ "items": {
384
+ "type": "string",
385
+ "minLength": 1
386
+ },
387
+ "description": "Qualification image file ids from upload_qualification_image."
388
+ },
389
+ "license_field_list": {
390
+ "type": "array",
391
+ "items": {
392
+ "type": "object",
393
+ "properties": {
394
+ "key": {
395
+ "type": "string",
396
+ "minLength": 1,
397
+ "description": "The license field key."
398
+ },
399
+ "value": {
400
+ "type": "string",
401
+ "minLength": 1,
402
+ "description": "The license field value."
403
+ }
404
+ },
405
+ "additionalProperties": false,
406
+ "required": [
407
+ "key",
408
+ "value"
409
+ ],
410
+ "description": "One license field."
411
+ },
412
+ "description": "The required license fields for this certificate."
413
+ }
414
+ },
415
+ "additionalProperties": false,
416
+ "required": [
417
+ "license_id",
418
+ "file_id_list",
419
+ "license_field_list"
420
+ ],
421
+ "description": "The selected license."
422
+ }
423
+ },
424
+ "additionalProperties": false,
425
+ "required": [
426
+ "license_group_id",
427
+ "license"
428
+ ],
429
+ "description": "One certificate group selection."
430
+ },
431
+ "description": "One selected license for each required certificate group from list_categories; empty when no licenses are required."
432
+ },
433
+ "brand_list": {
434
+ "type": "array",
435
+ "items": {
436
+ "type": "object",
437
+ "properties": {
438
+ "brand_id": {
439
+ "anyOf": [
440
+ {
441
+ "type": "integer",
442
+ "minimum": 1,
443
+ "description": "The id as a number."
444
+ },
445
+ {
446
+ "type": "string",
447
+ "pattern": "^[1-9][0-9]*$",
448
+ "description": "The id as a numeric string."
449
+ }
450
+ ],
451
+ "description": "An approved brand id from list_valid_brands."
452
+ }
453
+ },
454
+ "additionalProperties": false,
455
+ "required": [
456
+ "brand_id"
457
+ ],
458
+ "description": "An approved brand."
459
+ },
460
+ "description": "Approved brand ids, required when get_category reports attr.is_limit_brand=true.",
461
+ "minItems": 1
462
+ }
463
+ },
464
+ "additionalProperties": true,
465
+ "required": [
466
+ "cats_v2",
467
+ "license_group_list"
468
+ ],
469
+ "description": "The new category application, using WeChat field names."
470
+ }
471
+ },
472
+ "additionalProperties": false,
473
+ "required": [
474
+ "categoryInfo"
475
+ ],
476
+ "description": "The category application. The new certificate-group protocol is used automatically."
477
+ },
478
+ "outputSchema": {
479
+ "type": "object",
480
+ "properties": {
481
+ "audit_id": {
482
+ "type": "integer",
483
+ "minimum": 1,
484
+ "description": "The audit id to pass to get_category_application."
485
+ }
486
+ },
487
+ "additionalProperties": true,
488
+ "description": "The created category audit application."
489
+ },
490
+ "followUpActions": [
491
+ "weixin_store.get_category_application"
492
+ ]
493
+ },
297
494
  {
298
495
  "id": "weixin_store.delete_product",
299
496
  "service": "weixin_store",
@@ -464,8 +661,18 @@
464
661
  "type": "object",
465
662
  "properties": {
466
663
  "catId": {
467
- "type": "integer",
468
- "minimum": 1,
664
+ "anyOf": [
665
+ {
666
+ "type": "integer",
667
+ "minimum": 1,
668
+ "description": "The id as a number."
669
+ },
670
+ {
671
+ "type": "string",
672
+ "pattern": "^[1-9][0-9]*$",
673
+ "description": "The id as a numeric string."
674
+ }
675
+ ],
469
676
  "description": "The id of a leaf category from list_categories."
470
677
  }
471
678
  },
@@ -505,6 +712,166 @@
505
712
  "description": "The upstream WeChat category detail."
506
713
  }
507
714
  },
715
+ {
716
+ "id": "weixin_store.get_category_application",
717
+ "service": "weixin_store",
718
+ "name": "get_category_application",
719
+ "description": "Get the status and any rejection reason of a category application by audit id.",
720
+ "operationType": "read",
721
+ "requiredScopes": [],
722
+ "providerPermissions": [],
723
+ "inputSchema": {
724
+ "type": "object",
725
+ "properties": {
726
+ "auditId": {
727
+ "type": "integer",
728
+ "minimum": 1,
729
+ "description": "The audit_id returned by apply_category."
730
+ }
731
+ },
732
+ "additionalProperties": false,
733
+ "required": [
734
+ "auditId"
735
+ ],
736
+ "description": "The category application to inspect."
737
+ },
738
+ "outputSchema": {
739
+ "type": "object",
740
+ "properties": {
741
+ "info": {
742
+ "type": "object",
743
+ "properties": {
744
+ "audit_id": {
745
+ "type": "integer",
746
+ "minimum": 1,
747
+ "description": "The audit id."
748
+ },
749
+ "cat_id": {
750
+ "type": "integer",
751
+ "minimum": 1,
752
+ "description": "The leaf category id."
753
+ },
754
+ "status": {
755
+ "type": "integer",
756
+ "description": "1 = in review, 2 = rejected, 3 = approved, 4 = canceled."
757
+ },
758
+ "audit_reason": {
759
+ "type": "string",
760
+ "description": "The rejection reason, when rejected."
761
+ }
762
+ },
763
+ "additionalProperties": true,
764
+ "description": "The audit status and submitted materials."
765
+ }
766
+ },
767
+ "additionalProperties": true,
768
+ "description": "The category audit application."
769
+ }
770
+ },
771
+ {
772
+ "id": "weixin_store.get_category_product_rule",
773
+ "service": "weixin_store",
774
+ "name": "get_category_product_rule",
775
+ "description": "Get the category's product attribute, sale attribute, qualification, price, and other publishing rules for the chosen release mode.",
776
+ "operationType": "read",
777
+ "requiredScopes": [],
778
+ "providerPermissions": [],
779
+ "inputSchema": {
780
+ "type": "object",
781
+ "properties": {
782
+ "catId": {
783
+ "anyOf": [
784
+ {
785
+ "type": "integer",
786
+ "minimum": 1,
787
+ "description": "The id as a number."
788
+ },
789
+ {
790
+ "type": "string",
791
+ "pattern": "^[1-9][0-9]*$",
792
+ "description": "The id as a numeric string."
793
+ }
794
+ ],
795
+ "description": "The leaf category id."
796
+ },
797
+ "releaseMode": {
798
+ "anyOf": [
799
+ {
800
+ "const": 0,
801
+ "type": "number"
802
+ },
803
+ {
804
+ "const": 1,
805
+ "type": "number"
806
+ }
807
+ ],
808
+ "description": "0 = normal, 1 = simplified."
809
+ },
810
+ "brandId": {
811
+ "anyOf": [
812
+ {
813
+ "type": "integer",
814
+ "minimum": 1,
815
+ "description": "The id as a number."
816
+ },
817
+ {
818
+ "type": "string",
819
+ "pattern": "^[1-9][0-9]*$",
820
+ "description": "The id as a numeric string."
821
+ }
822
+ ],
823
+ "description": "An approved brand id when publishing a branded product."
824
+ }
825
+ },
826
+ "additionalProperties": false,
827
+ "required": [
828
+ "catId",
829
+ "releaseMode"
830
+ ],
831
+ "description": "The category publishing rules to retrieve."
832
+ },
833
+ "outputSchema": {
834
+ "type": "object",
835
+ "properties": {
836
+ "product_attr_list": {
837
+ "type": "array",
838
+ "items": {
839
+ "type": "object",
840
+ "properties": {},
841
+ "additionalProperties": true,
842
+ "description": "One product attribute rule."
843
+ },
844
+ "description": "Product attribute requirements."
845
+ },
846
+ "sale_attr_list": {
847
+ "type": "array",
848
+ "items": {
849
+ "type": "object",
850
+ "properties": {},
851
+ "additionalProperties": true,
852
+ "description": "One sale attribute rule."
853
+ },
854
+ "description": "SKU attribute requirements."
855
+ },
856
+ "product_qua_list": {
857
+ "type": "array",
858
+ "items": {
859
+ "type": "object",
860
+ "properties": {},
861
+ "additionalProperties": true,
862
+ "description": "One qualification rule."
863
+ },
864
+ "description": "Product qualification requirements."
865
+ },
866
+ "floor_price": {
867
+ "type": "integer",
868
+ "description": "The lowest allowed sale price, in cents."
869
+ }
870
+ },
871
+ "additionalProperties": true,
872
+ "description": "The category's product publishing rules."
873
+ }
874
+ },
508
875
  {
509
876
  "id": "weixin_store.get_freight_template",
510
877
  "service": "weixin_store",
@@ -844,6 +1211,66 @@
844
1211
  "description": "The upstream WeChat category trees."
845
1212
  }
846
1213
  },
1214
+ {
1215
+ "id": "weixin_store.list_category_permissions",
1216
+ "service": "weixin_store",
1217
+ "name": "list_category_permissions",
1218
+ "description": "List the store's category permissions. Filter to status 1 to find categories currently allowed for sale.",
1219
+ "operationType": "read",
1220
+ "requiredScopes": [],
1221
+ "providerPermissions": [],
1222
+ "inputSchema": {
1223
+ "type": "object",
1224
+ "properties": {
1225
+ "status": {
1226
+ "anyOf": [
1227
+ {
1228
+ "const": 1,
1229
+ "type": "number"
1230
+ },
1231
+ {
1232
+ "const": 2,
1233
+ "type": "number"
1234
+ }
1235
+ ],
1236
+ "description": "1 = effective, 2 = expired; omit for both."
1237
+ }
1238
+ },
1239
+ "additionalProperties": false,
1240
+ "description": "The category permissions to list."
1241
+ },
1242
+ "outputSchema": {
1243
+ "type": "object",
1244
+ "properties": {
1245
+ "list": {
1246
+ "type": "array",
1247
+ "items": {
1248
+ "type": "object",
1249
+ "properties": {
1250
+ "id": {
1251
+ "type": "integer",
1252
+ "minimum": 1,
1253
+ "description": "The leaf category id."
1254
+ },
1255
+ "status": {
1256
+ "type": "integer",
1257
+ "description": "1 = effective, 2 = expired."
1258
+ },
1259
+ "uneffective_reason": {
1260
+ "type": "string",
1261
+ "description": "Why an expired permission is no longer effective."
1262
+ }
1263
+ },
1264
+ "additionalProperties": true,
1265
+ "description": "One category permission."
1266
+ },
1267
+ "description": "The category permissions."
1268
+ }
1269
+ },
1270
+ "additionalProperties": true,
1271
+ "description": "The store's current category permissions."
1272
+ }
1273
+ },
847
1274
  {
848
1275
  "id": "weixin_store.list_delivery_companies",
849
1276
  "service": "weixin_store",
@@ -1213,6 +1640,55 @@
1213
1640
  "description": "The upstream WeChat response. It carries no fields on success."
1214
1641
  }
1215
1642
  },
1643
+ {
1644
+ "id": "weixin_store.precheck_product_category",
1645
+ "service": "weixin_store",
1646
+ "name": "precheck_product_category",
1647
+ "description": "Check whether the store may publish in a leaf category, including category permission, deposit, freight insurance, and store restrictions. Omit catId for store-wide checks only.",
1648
+ "operationType": "read",
1649
+ "requiredScopes": [],
1650
+ "providerPermissions": [],
1651
+ "inputSchema": {
1652
+ "type": "object",
1653
+ "properties": {
1654
+ "catId": {
1655
+ "anyOf": [
1656
+ {
1657
+ "type": "integer",
1658
+ "minimum": 1,
1659
+ "description": "The id as a number."
1660
+ },
1661
+ {
1662
+ "type": "string",
1663
+ "pattern": "^[1-9][0-9]*$",
1664
+ "description": "The id as a numeric string."
1665
+ }
1666
+ ],
1667
+ "description": "The leaf category id to check; omit for a store-wide check."
1668
+ }
1669
+ },
1670
+ "additionalProperties": false,
1671
+ "description": "The category to check before publishing."
1672
+ },
1673
+ "outputSchema": {
1674
+ "type": "object",
1675
+ "properties": {
1676
+ "all_pass": {
1677
+ "type": "boolean",
1678
+ "description": "Whether the store may publish in the category."
1679
+ },
1680
+ "fail_reasons": {
1681
+ "type": "array",
1682
+ "items": {
1683
+ "description": "One failure reason."
1684
+ },
1685
+ "description": "Reasons publishing is blocked."
1686
+ }
1687
+ },
1688
+ "additionalProperties": true,
1689
+ "description": "The product publishing readiness check."
1690
+ }
1691
+ },
1216
1692
  {
1217
1693
  "id": "weixin_store.reject_aftersale",
1218
1694
  "service": "weixin_store",
@@ -1784,6 +2260,71 @@
1784
2260
  "additionalProperties": true,
1785
2261
  "description": "The upstream WeChat image upload response."
1786
2262
  }
2263
+ },
2264
+ {
2265
+ "id": "weixin_store.upload_qualification_image",
2266
+ "service": "weixin_store",
2267
+ "name": "upload_qualification_image",
2268
+ "description": "Upload a qualification image (up to 2 MB) and return the file_id required for category and brand applications. Product images from upload_image cannot be used here.",
2269
+ "operationType": "write",
2270
+ "requiredScopes": [],
2271
+ "providerPermissions": [
2272
+ "Upload qualification images to the connected WeChat Store"
2273
+ ],
2274
+ "inputSchema": {
2275
+ "type": "object",
2276
+ "properties": {
2277
+ "file": {
2278
+ "type": "object",
2279
+ "properties": {
2280
+ "fileId": {
2281
+ "type": "string",
2282
+ "minLength": 1,
2283
+ "description": "The transit file identifier returned by POST /api/files."
2284
+ },
2285
+ "name": {
2286
+ "type": "string",
2287
+ "minLength": 1,
2288
+ "description": "Optional filename override to send to the provider."
2289
+ },
2290
+ "mimeType": {
2291
+ "type": "string",
2292
+ "minLength": 1,
2293
+ "description": "Optional MIME type override to send to the provider."
2294
+ }
2295
+ },
2296
+ "additionalProperties": false,
2297
+ "required": [
2298
+ "fileId"
2299
+ ],
2300
+ "description": "The qualification image previously uploaded to the local transit file API."
2301
+ }
2302
+ },
2303
+ "additionalProperties": false,
2304
+ "required": [
2305
+ "file"
2306
+ ],
2307
+ "description": "The qualification image to upload."
2308
+ },
2309
+ "outputSchema": {
2310
+ "type": "object",
2311
+ "properties": {
2312
+ "data": {
2313
+ "type": "object",
2314
+ "properties": {
2315
+ "file_id": {
2316
+ "type": "string",
2317
+ "minLength": 1,
2318
+ "description": "The file id to use in a category or brand qualification application."
2319
+ }
2320
+ },
2321
+ "additionalProperties": true,
2322
+ "description": "The uploaded file reference."
2323
+ }
2324
+ },
2325
+ "additionalProperties": true,
2326
+ "description": "The uploaded qualification image."
2327
+ }
1787
2328
  }
1788
2329
  ]
1789
2330
  }