@oomol-lab/open-connector 1.7.0 → 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 (288) 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 +916 -76
  4. package/assets/open-connector/catalog/apps/cal.json +24 -6
  5. package/assets/open-connector/catalog/apps/discordbot.json +2 -2
  6. package/assets/open-connector/catalog/apps/enormail.json +411 -0
  7. package/assets/open-connector/catalog/apps/feishu_app_bot.json +158 -0
  8. package/assets/open-connector/catalog/apps/github.json +275 -0
  9. package/assets/open-connector/catalog/apps/gitlab.json +125 -0
  10. package/assets/open-connector/catalog/apps/gmail.json +151 -0
  11. package/assets/open-connector/catalog/apps/googlecalendar.json +206 -0
  12. package/assets/open-connector/catalog/apps/googledrive.json +479 -0
  13. package/assets/open-connector/catalog/apps/googlesheets.json +144 -0
  14. package/assets/open-connector/catalog/apps/hithink_finance.json +6 -3
  15. package/assets/open-connector/catalog/apps/indexed.json +1115 -0
  16. package/assets/open-connector/catalog/apps/linear.json +116 -0
  17. package/assets/open-connector/catalog/apps/notion.json +142 -0
  18. package/assets/open-connector/catalog/apps/one_drive.json +185 -0
  19. package/assets/open-connector/catalog/apps/outlook.json +182 -0
  20. package/assets/open-connector/catalog/apps/shopify.json +282 -0
  21. package/assets/open-connector/catalog/apps/slack.json +182 -0
  22. package/assets/open-connector/catalog/apps/spotify.json +46 -43
  23. package/assets/open-connector/catalog/apps/stripe.json +96 -0
  24. package/assets/open-connector/catalog/apps/telegram.json +138 -0
  25. package/assets/open-connector/catalog/apps/weixin_store.json +543 -2
  26. package/assets/open-connector/catalog/apps/woocommerce.json +127 -0
  27. package/assets/open-connector/catalog/apps/zendesk.json +152 -0
  28. package/assets/open-connector/catalog/apps/zerotier.json +9 -9
  29. package/assets/open-connector/catalog/apps-index.json +1 -1
  30. package/assets/open-connector/migrations/0014_saas_project.sql +55 -0
  31. package/assets/open-connector/migrations/0015_saas_cleanup_runtime.sql +8 -0
  32. package/assets/open-connector/migrations/0016_trigger_policy.sql +1 -0
  33. package/assets/open-connector/migrations/0017_trigger_subscriptions.sql +17 -0
  34. package/assets/open-connector/migrations/postgresql/0014_saas_project.sql +55 -0
  35. package/assets/open-connector/migrations/postgresql/0015_saas_cleanup_runtime.sql +8 -0
  36. package/assets/open-connector/migrations/postgresql/0016_trigger_policy.sql +1 -0
  37. package/assets/open-connector/migrations/postgresql/0017_trigger_subscriptions.sql +17 -0
  38. package/package.json +2 -2
  39. package/src/connection-service.d.ts +40 -7
  40. package/src/connection-service.js +60 -18
  41. package/src/core/action-policy.d.ts +8 -1
  42. package/src/core/action-policy.js +51 -0
  43. package/src/core/cast.d.ts +3 -0
  44. package/src/core/cast.js +4 -1
  45. package/src/core/guarded-fetch.d.ts +5 -0
  46. package/src/core/guarded-fetch.js +13 -4
  47. package/src/core/remote-http.d.ts +33 -0
  48. package/src/core/remote-http.js +104 -0
  49. package/src/core/request.d.ts +1 -0
  50. package/src/core/request.js +7 -0
  51. package/src/core/types.d.ts +4 -0
  52. package/src/marketplace/marketplace-service.d.ts +0 -1
  53. package/src/marketplace/marketplace-service.js +80 -92
  54. package/src/mcp.js +19 -5
  55. package/src/oauth/oauth-flow-service.d.ts +8 -1
  56. package/src/oauth/oauth-flow-service.js +10 -4
  57. package/src/providers/action-contracts.generated.d.ts +4 -2
  58. package/src/providers/airtable/executors.d.ts +3 -0
  59. package/src/providers/airtable/executors.js +2 -0
  60. package/src/providers/airtable/trigger-on-record-changed.d.ts +2 -0
  61. package/src/providers/airtable/trigger-on-record-changed.definition.d.ts +4 -0
  62. package/src/providers/airtable/trigger-on-record-changed.definition.js +54 -0
  63. package/src/providers/airtable/trigger-on-record-changed.js +235 -0
  64. package/src/providers/aisa/executors.js +196 -22
  65. package/src/providers/cal/actions.js +5 -1
  66. package/src/providers/enormail/executors.d.ts +4 -0
  67. package/src/providers/enormail/executors.js +97 -0
  68. package/src/providers/feishu_app_bot/executors.d.ts +3 -0
  69. package/src/providers/feishu_app_bot/executors.js +2 -0
  70. package/src/providers/feishu_app_bot/trigger-config.d.ts +1 -0
  71. package/src/providers/feishu_app_bot/trigger-config.js +10 -0
  72. package/src/providers/feishu_app_bot/trigger-on-event.d.ts +2 -0
  73. package/src/providers/feishu_app_bot/trigger-on-event.definition.d.ts +4 -0
  74. package/src/providers/feishu_app_bot/trigger-on-event.definition.js +63 -0
  75. package/src/providers/feishu_app_bot/trigger-on-event.js +29 -0
  76. package/src/providers/feishu_app_bot/trigger-subscriptions.d.ts +5 -0
  77. package/src/providers/feishu_app_bot/trigger-subscriptions.js +70 -0
  78. package/src/providers/github/executors.d.ts +3 -0
  79. package/src/providers/github/executors.js +6 -0
  80. package/src/providers/github/trigger-on-repo-event.d.ts +2 -0
  81. package/src/providers/github/trigger-on-repo-event.definition.d.ts +4 -0
  82. package/src/providers/github/trigger-on-repo-event.definition.js +94 -0
  83. package/src/providers/github/trigger-on-repo-event.js +168 -0
  84. package/src/providers/github/trigger-watch-pull-request.d.ts +2 -0
  85. package/src/providers/github/trigger-watch-pull-request.definition.d.ts +4 -0
  86. package/src/providers/github/trigger-watch-pull-request.definition.js +49 -0
  87. package/src/providers/github/trigger-watch-pull-request.js +106 -0
  88. package/src/providers/gitlab/executors.d.ts +3 -0
  89. package/src/providers/gitlab/executors.js +2 -0
  90. package/src/providers/gitlab/trigger-on-project-event.d.ts +2 -0
  91. package/src/providers/gitlab/trigger-on-project-event.definition.d.ts +5 -0
  92. package/src/providers/gitlab/trigger-on-project-event.definition.js +63 -0
  93. package/src/providers/gitlab/trigger-on-project-event.js +186 -0
  94. package/src/providers/gmail/executors.d.ts +3 -0
  95. package/src/providers/gmail/executors.js +2 -0
  96. package/src/providers/gmail/trigger-on-message-received.d.ts +2 -0
  97. package/src/providers/gmail/trigger-on-message-received.definition.d.ts +4 -0
  98. package/src/providers/gmail/trigger-on-message-received.definition.js +74 -0
  99. package/src/providers/gmail/trigger-on-message-received.js +232 -0
  100. package/src/providers/googlecalendar/executors.d.ts +3 -0
  101. package/src/providers/googlecalendar/executors.js +2 -0
  102. package/src/providers/googlecalendar/trigger-on-event-changed.d.ts +2 -0
  103. package/src/providers/googlecalendar/trigger-on-event-changed.definition.d.ts +4 -0
  104. package/src/providers/googlecalendar/trigger-on-event-changed.definition.js +74 -0
  105. package/src/providers/googlecalendar/trigger-on-event-changed.js +233 -0
  106. package/src/providers/googledrive/executors.d.ts +3 -0
  107. package/src/providers/googledrive/executors.js +7 -0
  108. package/src/providers/googledrive/trigger-changes.d.ts +12 -0
  109. package/src/providers/googledrive/trigger-changes.definition.d.ts +7 -0
  110. package/src/providers/googledrive/trigger-changes.definition.js +101 -0
  111. package/src/providers/googledrive/trigger-changes.js +452 -0
  112. package/src/providers/googledrive/trigger-on-file-change.d.ts +2 -0
  113. package/src/providers/googledrive/trigger-on-file-change.definition.d.ts +4 -0
  114. package/src/providers/googledrive/trigger-on-file-change.definition.js +77 -0
  115. package/src/providers/googledrive/trigger-on-file-change.js +258 -0
  116. package/src/providers/googlesheets/executors.d.ts +3 -0
  117. package/src/providers/googlesheets/executors.js +2 -0
  118. package/src/providers/googlesheets/trigger-on-row-added.d.ts +2 -0
  119. package/src/providers/googlesheets/trigger-on-row-added.definition.d.ts +4 -0
  120. package/src/providers/googlesheets/trigger-on-row-added.definition.js +54 -0
  121. package/src/providers/googlesheets/trigger-on-row-added.js +234 -0
  122. package/src/providers/hithink_finance/runtime.js +1 -1
  123. package/src/providers/indexed/executors.d.ts +4 -0
  124. package/src/providers/indexed/executors.js +16 -0
  125. package/src/providers/indexed/runtime.d.ts +26 -0
  126. package/src/providers/indexed/runtime.js +129 -0
  127. package/src/providers/linear/executors.d.ts +3 -0
  128. package/src/providers/linear/executors.js +2 -0
  129. package/src/providers/linear/trigger-on-issue-changed.d.ts +2 -0
  130. package/src/providers/linear/trigger-on-issue-changed.definition.d.ts +5 -0
  131. package/src/providers/linear/trigger-on-issue-changed.definition.js +43 -0
  132. package/src/providers/linear/trigger-on-issue-changed.js +215 -0
  133. package/src/providers/notion/executors.d.ts +3 -0
  134. package/src/providers/notion/executors.js +2 -0
  135. package/src/providers/notion/trigger-on-database-page-event.d.ts +2 -0
  136. package/src/providers/notion/trigger-on-database-page-event.definition.d.ts +4 -0
  137. package/src/providers/notion/trigger-on-database-page-event.definition.js +63 -0
  138. package/src/providers/notion/trigger-on-database-page-event.js +293 -0
  139. package/src/providers/one_drive/executors.d.ts +3 -0
  140. package/src/providers/one_drive/executors.js +2 -0
  141. package/src/providers/one_drive/trigger-on-item-changed.d.ts +2 -0
  142. package/src/providers/one_drive/trigger-on-item-changed.definition.d.ts +4 -0
  143. package/src/providers/one_drive/trigger-on-item-changed.definition.js +63 -0
  144. package/src/providers/one_drive/trigger-on-item-changed.js +214 -0
  145. package/src/providers/outlook/executors.d.ts +3 -0
  146. package/src/providers/outlook/executors.js +2 -0
  147. package/src/providers/outlook/trigger-on-message-received.d.ts +2 -0
  148. package/src/providers/outlook/trigger-on-message-received.definition.d.ts +4 -0
  149. package/src/providers/outlook/trigger-on-message-received.definition.js +93 -0
  150. package/src/providers/outlook/trigger-on-message-received.js +226 -0
  151. package/src/providers/outlook_calendar/executors.js +6 -0
  152. package/src/providers/provider-loader.d.ts +5 -0
  153. package/src/providers/provider-loader.js +4 -0
  154. package/src/providers/registry.generated.js +2 -0
  155. package/src/providers/shopify/executors.d.ts +3 -0
  156. package/src/providers/shopify/executors.js +2 -0
  157. package/src/providers/shopify/trigger-on-shop-event.d.ts +2 -0
  158. package/src/providers/shopify/trigger-on-shop-event.definition.d.ts +4 -0
  159. package/src/providers/shopify/trigger-on-shop-event.definition.js +214 -0
  160. package/src/providers/shopify/trigger-on-shop-event.js +165 -0
  161. package/src/providers/slack/executors.d.ts +3 -0
  162. package/src/providers/slack/executors.js +2 -0
  163. package/src/providers/slack/trigger-on-message-posted.d.ts +2 -0
  164. package/src/providers/slack/trigger-on-message-posted.definition.d.ts +4 -0
  165. package/src/providers/slack/trigger-on-message-posted.definition.js +80 -0
  166. package/src/providers/slack/trigger-on-message-posted.js +176 -0
  167. package/src/providers/spotify/runtime.js +15 -4
  168. package/src/providers/stripe/executors.d.ts +3 -0
  169. package/src/providers/stripe/executors.js +2 -0
  170. package/src/providers/stripe/trigger-on-event.d.ts +2 -0
  171. package/src/providers/stripe/trigger-on-event.definition.d.ts +4 -0
  172. package/src/providers/stripe/trigger-on-event.definition.js +43 -0
  173. package/src/providers/stripe/trigger-on-event.js +212 -0
  174. package/src/providers/telegram/executors.d.ts +3 -0
  175. package/src/providers/telegram/executors.js +2 -0
  176. package/src/providers/telegram/trigger-on-update.d.ts +2 -0
  177. package/src/providers/telegram/trigger-on-update.definition.d.ts +5 -0
  178. package/src/providers/telegram/trigger-on-update.definition.js +78 -0
  179. package/src/providers/telegram/trigger-on-update.js +141 -0
  180. package/src/providers/weixin_store/access-token.d.ts +2 -1
  181. package/src/providers/weixin_store/access-token.js +15 -4
  182. package/src/providers/weixin_store/executors.js +97 -12
  183. package/src/providers/woocommerce/executors.d.ts +3 -0
  184. package/src/providers/woocommerce/executors.js +2 -0
  185. package/src/providers/woocommerce/trigger-on-store-event.d.ts +2 -0
  186. package/src/providers/woocommerce/trigger-on-store-event.definition.d.ts +4 -0
  187. package/src/providers/woocommerce/trigger-on-store-event.definition.js +55 -0
  188. package/src/providers/woocommerce/trigger-on-store-event.js +179 -0
  189. package/src/providers/zendesk/executors.d.ts +3 -0
  190. package/src/providers/zendesk/executors.js +2 -0
  191. package/src/providers/zendesk/trigger-on-event.d.ts +2 -0
  192. package/src/providers/zendesk/trigger-on-event.definition.d.ts +5 -0
  193. package/src/providers/zendesk/trigger-on-event.definition.js +101 -0
  194. package/src/providers/zendesk/trigger-on-event.js +188 -0
  195. package/src/saas/saas-cleanup-service.d.ts +26 -0
  196. package/src/saas/saas-cleanup-service.js +124 -0
  197. package/src/saas/saas-client.d.ts +86 -0
  198. package/src/saas/saas-client.js +369 -0
  199. package/src/saas/saas-execution-service.d.ts +15 -0
  200. package/src/saas/saas-execution-service.js +21 -0
  201. package/src/saas/saas-oauth-service.d.ts +25 -0
  202. package/src/saas/saas-oauth-service.js +197 -0
  203. package/src/saas/saas-project-service.d.ts +61 -0
  204. package/src/saas/saas-project-service.js +211 -0
  205. package/src/server/actions/action-idempotency.d.ts +1 -0
  206. package/src/server/actions/action-idempotency.js +1 -0
  207. package/src/server/actions/action-runner.d.ts +7 -0
  208. package/src/server/actions/action-runner.js +43 -7
  209. package/src/server/actions/run-log-summary.js +9 -0
  210. package/src/server/api/auth.d.ts +1 -0
  211. package/src/server/api/auth.js +13 -2
  212. package/src/server/api/cache-policy.js +4 -1
  213. package/src/server/api/connection-input.d.ts +7 -1
  214. package/src/server/api/connection-input.js +7 -1
  215. package/src/server/api/connection-routes.d.ts +3 -1
  216. package/src/server/api/connection-routes.js +21 -3
  217. package/src/server/api/http-utils.d.ts +4 -3
  218. package/src/server/api/oauth-completion-page.d.ts +124 -0
  219. package/src/server/api/oauth-completion-page.js +113 -18
  220. package/src/server/api/openapi.js +112 -14
  221. package/src/server/api/policy-input.js +6 -0
  222. package/src/server/api/runtime-api.d.ts +10 -2
  223. package/src/server/api/runtime-api.js +17 -4
  224. package/src/server/api/saas-completion-page.d.ts +2 -0
  225. package/src/server/api/saas-completion-page.js +103 -0
  226. package/src/server/connect-app.d.ts +5 -0
  227. package/src/server/connect-app.js +50 -0
  228. package/src/server/connect-server.d.ts +12 -0
  229. package/src/server/connect-server.js +147 -13
  230. package/src/server/connector-runtime.d.ts +3 -1
  231. package/src/server/connector-runtime.js +5 -2
  232. package/src/server/files/transit-files.js +16 -7
  233. package/src/server/proxy/proxy-runner.d.ts +5 -1
  234. package/src/server/proxy/proxy-runner.js +72 -26
  235. package/src/server/storage/connection-request-store.d.ts +41 -1
  236. package/src/server/storage/connection-request-store.js +245 -20
  237. package/src/server/storage/connection-store.d.ts +16 -0
  238. package/src/server/storage/connection-store.js +119 -0
  239. package/src/server/storage/node-runtime-database.js +3 -3
  240. package/src/server/storage/{postgres-migrations.d.ts → postgres/migrations.d.ts} +2 -2
  241. package/src/server/storage/{postgres-migrations.js → postgres/migrations.js} +1 -1
  242. package/src/server/storage/postgres/runtime-store.d.ts +43 -0
  243. package/src/server/storage/{postgres-runtime-store.js → postgres/runtime-store.js} +59 -94
  244. package/src/server/storage/runtime-database.d.ts +4 -0
  245. package/src/server/storage/runtime-sql.d.ts +1 -1
  246. package/src/server/storage/runtime-sql.js +2 -1
  247. package/src/server/storage/runtime-store.d.ts +1 -0
  248. package/src/server/storage/runtime-token-service.d.ts +2 -0
  249. package/src/server/storage/runtime-token-service.js +3 -0
  250. package/src/server/storage/saas-project-store.d.ts +77 -0
  251. package/src/server/storage/saas-project-store.js +273 -0
  252. package/src/server/storage/{sqlite-runtime-store.d.ts → sqlite/runtime-store.d.ts} +21 -25
  253. package/src/server/storage/{sqlite-runtime-store.js → sqlite/runtime-store.js} +100 -115
  254. package/src/server/storage/trigger-store.d.ts +16 -0
  255. package/src/server/storage/trigger-store.js +96 -0
  256. package/src/triggers/common/config.d.ts +2 -0
  257. package/src/triggers/common/config.js +17 -0
  258. package/src/triggers/common/configOptions.d.ts +13 -0
  259. package/src/triggers/common/configOptions.js +1 -0
  260. package/src/triggers/common/encoding.d.ts +3 -0
  261. package/src/triggers/common/encoding.js +19 -0
  262. package/src/triggers/common/integration.d.ts +115 -0
  263. package/src/triggers/common/integration.js +31 -0
  264. package/src/triggers/common/json.d.ts +6 -0
  265. package/src/triggers/common/json.js +91 -0
  266. package/src/triggers/common/poll.d.ts +41 -0
  267. package/src/triggers/common/poll.js +15 -0
  268. package/src/triggers/common/proxy.d.ts +14 -0
  269. package/src/triggers/common/proxy.js +1 -0
  270. package/src/triggers/common/types.d.ts +42 -0
  271. package/src/triggers/common/types.js +1 -0
  272. package/src/triggers/maintenance.d.ts +40 -0
  273. package/src/triggers/maintenance.js +120 -0
  274. package/src/triggers/metadata.d.ts +8 -0
  275. package/src/triggers/metadata.js +1 -0
  276. package/src/triggers/request.d.ts +33 -0
  277. package/src/triggers/request.js +52 -0
  278. package/src/triggers/resources.d.ts +12 -0
  279. package/src/triggers/resources.js +121 -0
  280. package/src/triggers/signature.d.ts +4 -0
  281. package/src/triggers/signature.js +48 -0
  282. package/src/triggers/store.d.ts +29 -0
  283. package/src/triggers/store.js +1 -0
  284. package/src/triggers/subscriptions.d.ts +22 -0
  285. package/src/triggers/subscriptions.js +220 -0
  286. package/src/triggers/trigger-runner.d.ts +34 -0
  287. package/src/triggers/trigger-runner.js +169 -0
  288. package/src/server/storage/postgres-runtime-store.d.ts +0 -39
@@ -7371,5 +7371,211 @@
7371
7371
  "description": "Google Calendar event."
7372
7372
  }
7373
7373
  }
7374
+ ],
7375
+ "triggers": [
7376
+ {
7377
+ "configInputs": [
7378
+ {
7379
+ "handle": "calendarId",
7380
+ "jsonSchema": {
7381
+ "type": "string",
7382
+ "minLength": 1,
7383
+ "maxLength": 1024
7384
+ },
7385
+ "nullable": false
7386
+ },
7387
+ {
7388
+ "handle": "changes",
7389
+ "jsonSchema": {
7390
+ "type": "array",
7391
+ "items": {
7392
+ "type": "string",
7393
+ "enum": [
7394
+ "created",
7395
+ "updated",
7396
+ "cancelled"
7397
+ ]
7398
+ },
7399
+ "minItems": 1,
7400
+ "uniqueItems": true
7401
+ },
7402
+ "nullable": false,
7403
+ "value": [
7404
+ "created",
7405
+ "updated",
7406
+ "cancelled"
7407
+ ]
7408
+ },
7409
+ {
7410
+ "handle": "matchTerm",
7411
+ "jsonSchema": {
7412
+ "type": "string"
7413
+ },
7414
+ "nullable": false,
7415
+ "value": ""
7416
+ },
7417
+ {
7418
+ "handle": "maxEventsPerPoll",
7419
+ "jsonSchema": {
7420
+ "type": "integer",
7421
+ "minimum": 1,
7422
+ "maximum": 500
7423
+ },
7424
+ "nullable": false,
7425
+ "value": 100
7426
+ }
7427
+ ],
7428
+ "definitionVersion": 2,
7429
+ "description": "Polls a Google Calendar and triggers when an event is created, updated or cancelled.",
7430
+ "displayName": "Event Changed",
7431
+ "key": "googlecalendar.on_event_changed",
7432
+ "name": "on_event_changed",
7433
+ "outputs": [
7434
+ {
7435
+ "handle": "events",
7436
+ "jsonSchema": {
7437
+ "type": "array",
7438
+ "items": {
7439
+ "type": "object",
7440
+ "properties": {
7441
+ "attendeeEmails": {
7442
+ "type": "array",
7443
+ "items": {
7444
+ "type": "string"
7445
+ }
7446
+ },
7447
+ "calendarId": {
7448
+ "type": "string"
7449
+ },
7450
+ "changeType": {
7451
+ "type": "string",
7452
+ "enum": [
7453
+ "created",
7454
+ "updated",
7455
+ "cancelled"
7456
+ ]
7457
+ },
7458
+ "created": {
7459
+ "type": [
7460
+ "string",
7461
+ "null"
7462
+ ]
7463
+ },
7464
+ "creatorEmail": {
7465
+ "type": [
7466
+ "string",
7467
+ "null"
7468
+ ]
7469
+ },
7470
+ "description": {
7471
+ "type": [
7472
+ "string",
7473
+ "null"
7474
+ ]
7475
+ },
7476
+ "end": {
7477
+ "type": [
7478
+ "object",
7479
+ "null"
7480
+ ]
7481
+ },
7482
+ "eventId": {
7483
+ "type": "string"
7484
+ },
7485
+ "eventType": {
7486
+ "type": [
7487
+ "string",
7488
+ "null"
7489
+ ]
7490
+ },
7491
+ "htmlLink": {
7492
+ "type": [
7493
+ "string",
7494
+ "null"
7495
+ ]
7496
+ },
7497
+ "isAllDay": {
7498
+ "type": "boolean"
7499
+ },
7500
+ "location": {
7501
+ "type": [
7502
+ "string",
7503
+ "null"
7504
+ ]
7505
+ },
7506
+ "organizerEmail": {
7507
+ "type": [
7508
+ "string",
7509
+ "null"
7510
+ ]
7511
+ },
7512
+ "recurringEventId": {
7513
+ "type": [
7514
+ "string",
7515
+ "null"
7516
+ ]
7517
+ },
7518
+ "start": {
7519
+ "type": [
7520
+ "object",
7521
+ "null"
7522
+ ]
7523
+ },
7524
+ "status": {
7525
+ "type": "string"
7526
+ },
7527
+ "summary": {
7528
+ "type": [
7529
+ "string",
7530
+ "null"
7531
+ ]
7532
+ },
7533
+ "updated": {
7534
+ "type": [
7535
+ "string",
7536
+ "null"
7537
+ ]
7538
+ }
7539
+ },
7540
+ "additionalProperties": false,
7541
+ "required": [
7542
+ "changeType",
7543
+ "calendarId",
7544
+ "eventId",
7545
+ "status",
7546
+ "summary",
7547
+ "description",
7548
+ "location",
7549
+ "htmlLink",
7550
+ "start",
7551
+ "end",
7552
+ "isAllDay",
7553
+ "organizerEmail",
7554
+ "creatorEmail",
7555
+ "attendeeEmails",
7556
+ "recurringEventId",
7557
+ "eventType",
7558
+ "created",
7559
+ "updated"
7560
+ ]
7561
+ }
7562
+ },
7563
+ "nullable": false
7564
+ }
7565
+ ],
7566
+ "provider": "googlecalendar",
7567
+ "type": "poll"
7568
+ }
7569
+ ],
7570
+ "triggerPermissions": [
7571
+ {
7572
+ "id": "googlecalendar.on_event_changed",
7573
+ "name": "Event Changed",
7574
+ "description": "Reads events in the selected calendar to detect created, updated or cancelled events. Does not modify the calendar.",
7575
+ "providerPermissions": [
7576
+ "https://www.googleapis.com/auth/calendar.readonly"
7577
+ ],
7578
+ "instructions": "The connected account must have read access to the selected calendar."
7579
+ }
7374
7580
  ]
7375
7581
  }
@@ -8315,5 +8315,484 @@
8315
8315
  "additionalProperties": false
8316
8316
  }
8317
8317
  }
8318
+ ],
8319
+ "triggers": [
8320
+ {
8321
+ "configInputs": [
8322
+ {
8323
+ "handle": "driveId",
8324
+ "jsonSchema": {
8325
+ "type": "string",
8326
+ "minLength": 1,
8327
+ "maxLength": 256
8328
+ },
8329
+ "nullable": true,
8330
+ "description": "Optional shared drive ID. Omit it to monitor the connected account."
8331
+ },
8332
+ {
8333
+ "handle": "includeCorpusRemovals",
8334
+ "jsonSchema": {
8335
+ "type": "boolean"
8336
+ },
8337
+ "nullable": false,
8338
+ "value": false,
8339
+ "description": "Include the accessible file resource when an item leaves the change corpus."
8340
+ },
8341
+ {
8342
+ "handle": "includeItemsFromAllDrives",
8343
+ "jsonSchema": {
8344
+ "type": "boolean"
8345
+ },
8346
+ "nullable": false,
8347
+ "value": true,
8348
+ "description": "Include items from My Drive and shared drives."
8349
+ },
8350
+ {
8351
+ "handle": "includeRemoved",
8352
+ "jsonSchema": {
8353
+ "type": "boolean"
8354
+ },
8355
+ "nullable": false,
8356
+ "value": true,
8357
+ "description": "Include changes caused by deletion or loss of access."
8358
+ },
8359
+ {
8360
+ "handle": "pageSize",
8361
+ "jsonSchema": {
8362
+ "type": "integer",
8363
+ "minimum": 1,
8364
+ "maximum": 100
8365
+ },
8366
+ "nullable": false,
8367
+ "value": 100,
8368
+ "description": "Maximum changes included in one Flow Run."
8369
+ },
8370
+ {
8371
+ "handle": "restrictToMyDrive",
8372
+ "jsonSchema": {
8373
+ "type": "boolean"
8374
+ },
8375
+ "nullable": false,
8376
+ "value": false,
8377
+ "description": "Restrict changes to the My Drive hierarchy."
8378
+ }
8379
+ ],
8380
+ "definitionVersion": 2,
8381
+ "description": "Uses a Google Drive changes.watch channel and triggers when Drive changes are available.",
8382
+ "displayName": "Changes Detected",
8383
+ "endpoint": {
8384
+ "body": {
8385
+ "allowArray": false,
8386
+ "allowEmpty": true,
8387
+ "formats": [
8388
+ "json"
8389
+ ]
8390
+ },
8391
+ "methods": [
8392
+ "POST"
8393
+ ],
8394
+ "successStatus": 204
8395
+ },
8396
+ "key": "googledrive.changes_detected",
8397
+ "name": "changes_detected",
8398
+ "outputs": [
8399
+ {
8400
+ "handle": "events",
8401
+ "jsonSchema": {
8402
+ "type": "array",
8403
+ "items": {
8404
+ "type": "object",
8405
+ "properties": {
8406
+ "changeId": {
8407
+ "type": "string"
8408
+ },
8409
+ "changeType": {
8410
+ "type": [
8411
+ "string",
8412
+ "null"
8413
+ ]
8414
+ },
8415
+ "driveId": {
8416
+ "type": [
8417
+ "string",
8418
+ "null"
8419
+ ]
8420
+ },
8421
+ "file": {
8422
+ "type": [
8423
+ "object",
8424
+ "null"
8425
+ ]
8426
+ },
8427
+ "fileId": {
8428
+ "type": [
8429
+ "string",
8430
+ "null"
8431
+ ]
8432
+ },
8433
+ "notification": {
8434
+ "type": "object",
8435
+ "properties": {
8436
+ "changedTypes": {
8437
+ "type": "array",
8438
+ "items": {
8439
+ "type": "string"
8440
+ }
8441
+ },
8442
+ "messageNumber": {
8443
+ "type": [
8444
+ "string",
8445
+ "null"
8446
+ ]
8447
+ },
8448
+ "resourceState": {
8449
+ "type": "string"
8450
+ },
8451
+ "resourceUri": {
8452
+ "type": [
8453
+ "string",
8454
+ "null"
8455
+ ]
8456
+ }
8457
+ },
8458
+ "additionalProperties": false,
8459
+ "required": [
8460
+ "resourceState",
8461
+ "changedTypes",
8462
+ "messageNumber",
8463
+ "resourceUri"
8464
+ ]
8465
+ },
8466
+ "removed": {
8467
+ "type": "boolean"
8468
+ },
8469
+ "time": {
8470
+ "type": [
8471
+ "string",
8472
+ "null"
8473
+ ]
8474
+ }
8475
+ },
8476
+ "additionalProperties": false,
8477
+ "required": [
8478
+ "changeId",
8479
+ "changeType",
8480
+ "removed",
8481
+ "time",
8482
+ "fileId",
8483
+ "driveId",
8484
+ "file",
8485
+ "notification"
8486
+ ]
8487
+ }
8488
+ },
8489
+ "nullable": false
8490
+ }
8491
+ ],
8492
+ "provider": "googledrive",
8493
+ "type": "integration"
8494
+ },
8495
+ {
8496
+ "configInputs": [
8497
+ {
8498
+ "handle": "driveId",
8499
+ "jsonSchema": {
8500
+ "type": "string",
8501
+ "minLength": 1,
8502
+ "maxLength": 256
8503
+ },
8504
+ "nullable": true,
8505
+ "description": "Optional shared drive ID. Omit it to monitor the connected account."
8506
+ },
8507
+ {
8508
+ "handle": "includeCorpusRemovals",
8509
+ "jsonSchema": {
8510
+ "type": "boolean"
8511
+ },
8512
+ "nullable": false,
8513
+ "value": false,
8514
+ "description": "Include the accessible file resource when an item leaves the change corpus."
8515
+ },
8516
+ {
8517
+ "handle": "includeItemsFromAllDrives",
8518
+ "jsonSchema": {
8519
+ "type": "boolean"
8520
+ },
8521
+ "nullable": false,
8522
+ "value": true,
8523
+ "description": "Include items from My Drive and shared drives."
8524
+ },
8525
+ {
8526
+ "handle": "includeRemoved",
8527
+ "jsonSchema": {
8528
+ "type": "boolean"
8529
+ },
8530
+ "nullable": false,
8531
+ "value": true,
8532
+ "description": "Include changes caused by deletion or loss of access."
8533
+ },
8534
+ {
8535
+ "handle": "pageSize",
8536
+ "jsonSchema": {
8537
+ "type": "integer",
8538
+ "minimum": 1,
8539
+ "maximum": 100
8540
+ },
8541
+ "nullable": false,
8542
+ "value": 100,
8543
+ "description": "Maximum changes included in one Flow Run."
8544
+ },
8545
+ {
8546
+ "handle": "restrictToMyDrive",
8547
+ "jsonSchema": {
8548
+ "type": "boolean"
8549
+ },
8550
+ "nullable": false,
8551
+ "value": false,
8552
+ "description": "Restrict changes to the My Drive hierarchy."
8553
+ }
8554
+ ],
8555
+ "definitionVersion": 2,
8556
+ "description": "Monitors Drive changes using notifications and periodic scans of the same change stream.",
8557
+ "displayName": "Watch Changes",
8558
+ "endpoint": {
8559
+ "body": {
8560
+ "allowArray": false,
8561
+ "allowEmpty": true,
8562
+ "formats": [
8563
+ "json"
8564
+ ]
8565
+ },
8566
+ "methods": [
8567
+ "POST"
8568
+ ],
8569
+ "successStatus": 204
8570
+ },
8571
+ "key": "googledrive.watch_changes",
8572
+ "name": "watch_changes",
8573
+ "outputs": [
8574
+ {
8575
+ "handle": "events",
8576
+ "jsonSchema": {
8577
+ "type": "array",
8578
+ "items": {
8579
+ "type": "object"
8580
+ }
8581
+ },
8582
+ "nullable": false
8583
+ }
8584
+ ],
8585
+ "provider": "googledrive",
8586
+ "type": "integration"
8587
+ },
8588
+ {
8589
+ "configInputs": [
8590
+ {
8591
+ "handle": "changeType",
8592
+ "jsonSchema": {
8593
+ "type": "string",
8594
+ "enum": [
8595
+ "created",
8596
+ "updated"
8597
+ ]
8598
+ },
8599
+ "nullable": false
8600
+ },
8601
+ {
8602
+ "handle": "driveId",
8603
+ "jsonSchema": {
8604
+ "type": "string",
8605
+ "pattern": "^[A-Za-z0-9_-]{0,512}$"
8606
+ },
8607
+ "nullable": false,
8608
+ "value": ""
8609
+ },
8610
+ {
8611
+ "handle": "folderId",
8612
+ "jsonSchema": {
8613
+ "type": "string",
8614
+ "pattern": "^[A-Za-z0-9_-]{2,512}$"
8615
+ },
8616
+ "nullable": false
8617
+ },
8618
+ {
8619
+ "handle": "itemTypes",
8620
+ "jsonSchema": {
8621
+ "type": "array",
8622
+ "items": {
8623
+ "type": "string",
8624
+ "enum": [
8625
+ "file",
8626
+ "folder"
8627
+ ]
8628
+ },
8629
+ "minItems": 1,
8630
+ "uniqueItems": true
8631
+ },
8632
+ "nullable": false,
8633
+ "value": [
8634
+ "file"
8635
+ ]
8636
+ },
8637
+ {
8638
+ "handle": "maxFilesPerPoll",
8639
+ "jsonSchema": {
8640
+ "type": "integer",
8641
+ "minimum": 1,
8642
+ "maximum": 200
8643
+ },
8644
+ "nullable": false,
8645
+ "value": 50
8646
+ },
8647
+ {
8648
+ "handle": "mimeTypes",
8649
+ "jsonSchema": {
8650
+ "type": "array",
8651
+ "items": {
8652
+ "type": "string",
8653
+ "minLength": 1
8654
+ }
8655
+ },
8656
+ "nullable": false,
8657
+ "value": []
8658
+ },
8659
+ {
8660
+ "handle": "namePrefix",
8661
+ "jsonSchema": {
8662
+ "type": "string"
8663
+ },
8664
+ "nullable": false,
8665
+ "value": ""
8666
+ }
8667
+ ],
8668
+ "definitionVersion": 2,
8669
+ "description": "Polls one Google Drive folder and triggers when a file or folder directly inside it is created or updated.",
8670
+ "displayName": "File or Folder Change in a Folder",
8671
+ "key": "googledrive.on_file_change",
8672
+ "name": "on_file_change",
8673
+ "outputs": [
8674
+ {
8675
+ "handle": "events",
8676
+ "jsonSchema": {
8677
+ "type": "array",
8678
+ "items": {
8679
+ "type": "object",
8680
+ "properties": {
8681
+ "createdTime": {
8682
+ "type": [
8683
+ "string",
8684
+ "null"
8685
+ ]
8686
+ },
8687
+ "driveId": {
8688
+ "type": [
8689
+ "string",
8690
+ "null"
8691
+ ]
8692
+ },
8693
+ "eventType": {
8694
+ "type": "string",
8695
+ "enum": [
8696
+ "file_created",
8697
+ "file_updated",
8698
+ "folder_created",
8699
+ "folder_updated"
8700
+ ]
8701
+ },
8702
+ "fileId": {
8703
+ "type": "string"
8704
+ },
8705
+ "itemType": {
8706
+ "type": "string",
8707
+ "enum": [
8708
+ "file",
8709
+ "folder"
8710
+ ]
8711
+ },
8712
+ "lastModifyingUser": {
8713
+ "type": [
8714
+ "object",
8715
+ "null"
8716
+ ]
8717
+ },
8718
+ "mimeType": {
8719
+ "type": "string"
8720
+ },
8721
+ "modifiedTime": {
8722
+ "type": [
8723
+ "string",
8724
+ "null"
8725
+ ]
8726
+ },
8727
+ "name": {
8728
+ "type": "string"
8729
+ },
8730
+ "parents": {
8731
+ "type": "array",
8732
+ "items": {
8733
+ "type": "string"
8734
+ }
8735
+ },
8736
+ "size": {
8737
+ "type": "string"
8738
+ },
8739
+ "webViewLink": {
8740
+ "type": [
8741
+ "string",
8742
+ "null"
8743
+ ]
8744
+ }
8745
+ },
8746
+ "additionalProperties": false,
8747
+ "required": [
8748
+ "eventType",
8749
+ "itemType",
8750
+ "fileId",
8751
+ "name",
8752
+ "mimeType",
8753
+ "createdTime",
8754
+ "modifiedTime",
8755
+ "parents",
8756
+ "webViewLink",
8757
+ "driveId",
8758
+ "lastModifyingUser"
8759
+ ]
8760
+ }
8761
+ },
8762
+ "nullable": false
8763
+ }
8764
+ ],
8765
+ "provider": "googledrive",
8766
+ "type": "poll"
8767
+ }
8768
+ ],
8769
+ "triggerPermissions": [
8770
+ {
8771
+ "id": "googledrive.changes_detected",
8772
+ "name": "Changes Detected",
8773
+ "description": "Creates and renews Drive change notification channels, reads the change stream and stops channels during cleanup.",
8774
+ "providerPermissions": [
8775
+ "https://www.googleapis.com/auth/drive.readonly"
8776
+ ],
8777
+ "instructions": "Requires read access to the selected Drive resources. Does not download file contents."
8778
+ },
8779
+ {
8780
+ "id": "googledrive.watch_changes",
8781
+ "name": "Watch Changes",
8782
+ "description": "Manages Drive change notification channels and periodically scans the same change stream to emit file changes.",
8783
+ "providerPermissions": [
8784
+ "https://www.googleapis.com/auth/drive.readonly"
8785
+ ],
8786
+ "instructions": "Requires read access to the selected Drive resources. Channels are stopped during cleanup; file contents are not downloaded."
8787
+ },
8788
+ {
8789
+ "id": "googledrive.on_file_change",
8790
+ "name": "File or Folder Change in a Folder",
8791
+ "description": "Reads file and folder metadata in the selected folder to detect changes. Does not download or modify files.",
8792
+ "providerPermissions": [
8793
+ "https://www.googleapis.com/auth/drive.readonly"
8794
+ ],
8795
+ "instructions": "The connected account must be able to read the selected folder and its monitored items."
8796
+ }
8318
8797
  ]
8319
8798
  }