n8n 2.5.2 → 2.6.1

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 (277) hide show
  1. package/dist/active-executions.d.ts +1 -1
  2. package/dist/active-executions.js +43 -34
  3. package/dist/active-executions.js.map +1 -1
  4. package/dist/auth/auth.service.d.ts +4 -0
  5. package/dist/auth/auth.service.js +16 -3
  6. package/dist/auth/auth.service.js.map +1 -1
  7. package/dist/auth/methods/email.js +2 -2
  8. package/dist/auth/methods/email.js.map +1 -1
  9. package/dist/build.tsbuildinfo +1 -1
  10. package/dist/concurrency/concurrency-capacity-reservation.d.ts +8 -0
  11. package/dist/concurrency/concurrency-capacity-reservation.js +26 -0
  12. package/dist/concurrency/concurrency-capacity-reservation.js.map +1 -0
  13. package/dist/concurrency/concurrency-control.service.d.ts +8 -10
  14. package/dist/concurrency/concurrency-control.service.js.map +1 -1
  15. package/dist/controller.registry.d.ts +3 -2
  16. package/dist/controller.registry.js +26 -17
  17. package/dist/controller.registry.js.map +1 -1
  18. package/dist/controllers/ai.controller.js +4 -4
  19. package/dist/controllers/ai.controller.js.map +1 -1
  20. package/dist/controllers/api-keys.controller.d.ts +8 -4
  21. package/dist/controllers/api-keys.controller.js +23 -6
  22. package/dist/controllers/api-keys.controller.js.map +1 -1
  23. package/dist/controllers/auth.controller.js +16 -4
  24. package/dist/controllers/auth.controller.js.map +1 -1
  25. package/dist/controllers/invitation.controller.js +15 -3
  26. package/dist/controllers/invitation.controller.js.map +1 -1
  27. package/dist/controllers/me.controller.js +3 -1
  28. package/dist/controllers/me.controller.js.map +1 -1
  29. package/dist/controllers/mfa.controller.js +12 -3
  30. package/dist/controllers/mfa.controller.js.map +1 -1
  31. package/dist/controllers/password-reset.controller.d.ts +3 -1
  32. package/dist/controllers/password-reset.controller.js +73 -52
  33. package/dist/controllers/password-reset.controller.js.map +1 -1
  34. package/dist/controllers/posthog.controller.js +10 -10
  35. package/dist/controllers/posthog.controller.js.map +1 -1
  36. package/dist/controllers/project.controller.d.ts +2 -0
  37. package/dist/controllers/telemetry.controller.js +4 -4
  38. package/dist/controllers/telemetry.controller.js.map +1 -1
  39. package/dist/credentials/credentials.controller.d.ts +1 -0
  40. package/dist/credentials/credentials.controller.js +2 -0
  41. package/dist/credentials/credentials.controller.js.map +1 -1
  42. package/dist/credentials/credentials.service.d.ts +1 -0
  43. package/dist/credentials/credentials.service.js +1 -0
  44. package/dist/credentials/credentials.service.js.map +1 -1
  45. package/dist/credentials-overwrites.d.ts +1 -2
  46. package/dist/credentials-overwrites.js +2 -11
  47. package/dist/credentials-overwrites.js.map +1 -1
  48. package/dist/events/maps/relay.event-map.d.ts +12 -0
  49. package/dist/events/relays/telemetry.event-relay.d.ts +4 -0
  50. package/dist/events/relays/telemetry.event-relay.js +87 -3
  51. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  52. package/dist/executions/execution-data/constants.d.ts +2 -0
  53. package/dist/executions/execution-data/constants.js +6 -0
  54. package/dist/executions/execution-data/constants.js.map +1 -0
  55. package/dist/executions/execution-data/corrupted-execution-data.error.d.ts +5 -0
  56. package/dist/executions/execution-data/corrupted-execution-data.error.js +11 -0
  57. package/dist/executions/execution-data/corrupted-execution-data.error.js.map +1 -0
  58. package/dist/executions/execution-data/db-store.d.ts +9 -0
  59. package/dist/executions/execution-data/db-store.js +42 -0
  60. package/dist/executions/execution-data/db-store.js.map +1 -0
  61. package/dist/executions/execution-data/execution-data-write.error.d.ts +5 -0
  62. package/dist/executions/execution-data/execution-data-write.error.js +11 -0
  63. package/dist/executions/execution-data/execution-data-write.error.js.map +1 -0
  64. package/dist/executions/execution-data/fs-store.d.ts +14 -0
  65. package/dist/executions/execution-data/fs-store.js +89 -0
  66. package/dist/executions/execution-data/fs-store.js.map +1 -0
  67. package/dist/executions/execution-data/types.d.ts +8 -5
  68. package/dist/executions/execution-data/types.js +4 -0
  69. package/dist/executions/execution-data/types.js.map +1 -1
  70. package/dist/interfaces.d.ts +1 -0
  71. package/dist/load-nodes-and-credentials.d.ts +1 -6
  72. package/dist/load-nodes-and-credentials.js +18 -106
  73. package/dist/load-nodes-and-credentials.js.map +1 -1
  74. package/dist/manual-execution.service.js +13 -1
  75. package/dist/manual-execution.service.js.map +1 -1
  76. package/dist/middlewares/cors.js +1 -1
  77. package/dist/middlewares/cors.js.map +1 -1
  78. package/dist/middlewares/index.d.ts +1 -0
  79. package/dist/middlewares/index.js +1 -0
  80. package/dist/middlewares/index.js.map +1 -1
  81. package/dist/middlewares/jitter.d.ts +6 -0
  82. package/dist/middlewares/jitter.js +14 -0
  83. package/dist/middlewares/jitter.js.map +1 -0
  84. package/dist/middlewares/list-query/dtos/pagination.dto.js +1 -1
  85. package/dist/middlewares/list-query/dtos/pagination.dto.js.map +1 -1
  86. package/dist/modules/chat-hub/chat-hub-extractor.d.ts +14 -3
  87. package/dist/modules/chat-hub/chat-hub-extractor.js +70 -23
  88. package/dist/modules/chat-hub/chat-hub-extractor.js.map +1 -1
  89. package/dist/modules/chat-hub/chat-hub-workflow.service.d.ts +6 -3
  90. package/dist/modules/chat-hub/chat-hub-workflow.service.js +28 -7
  91. package/dist/modules/chat-hub/chat-hub-workflow.service.js.map +1 -1
  92. package/dist/modules/chat-hub/chat-hub.constants.js +97 -19
  93. package/dist/modules/chat-hub/chat-hub.constants.js.map +1 -1
  94. package/dist/modules/chat-hub/chat-hub.controller.js +4 -3
  95. package/dist/modules/chat-hub/chat-hub.controller.js.map +1 -1
  96. package/dist/modules/chat-hub/chat-hub.service.d.ts +4 -3
  97. package/dist/modules/chat-hub/chat-hub.service.js +16 -16
  98. package/dist/modules/chat-hub/chat-hub.service.js.map +1 -1
  99. package/dist/modules/community-packages/community-node-types-utils.d.ts +8 -1
  100. package/dist/modules/community-packages/community-node-types-utils.js +27 -3
  101. package/dist/modules/community-packages/community-node-types-utils.js.map +1 -1
  102. package/dist/modules/community-packages/community-node-types.service.d.ts +2 -1
  103. package/dist/modules/community-packages/community-node-types.service.js +53 -6
  104. package/dist/modules/community-packages/community-node-types.service.js.map +1 -1
  105. package/dist/modules/community-packages/community-packages.service.js +25 -9
  106. package/dist/modules/community-packages/community-packages.service.js.map +1 -1
  107. package/dist/modules/community-packages/strapi-utils.d.ts +21 -1
  108. package/dist/modules/community-packages/strapi-utils.js +16 -11
  109. package/dist/modules/community-packages/strapi-utils.js.map +1 -1
  110. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/http-header-extractor.js +7 -7
  111. package/dist/modules/dynamic-credentials.ee/context-establishment-hooks/http-header-extractor.js.map +1 -1
  112. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.d.ts +0 -1
  113. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.js +0 -1
  114. package/dist/modules/dynamic-credentials.ee/credential-resolvers/index.js.map +1 -1
  115. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.d.ts +11 -0
  116. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.js +59 -0
  117. package/dist/modules/dynamic-credentials.ee/credential-resolvers/storage/dynamic-credential-user-entry-storage.js.map +1 -0
  118. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.d.ts +12 -0
  119. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.js +65 -0
  120. package/dist/modules/dynamic-credentials.ee/database/entities/dynamic-credential-user-entry.js.map +1 -0
  121. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.d.ts +5 -0
  122. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.js +26 -0
  123. package/dist/modules/dynamic-credentials.ee/database/repositories/dynamic-credential-user-entry.repository.js.map +1 -0
  124. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.d.ts +1 -0
  125. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js +5 -0
  126. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js.map +1 -1
  127. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +6 -5
  128. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
  129. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +1 -1
  130. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +2 -1
  131. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  132. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-cors.service.js +1 -1
  133. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-cors.service.js.map +1 -1
  134. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.d.ts +5 -1
  135. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +24 -4
  136. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
  137. package/dist/modules/dynamic-credentials.ee/utils.d.ts +1 -0
  138. package/dist/modules/dynamic-credentials.ee/utils.js +7 -0
  139. package/dist/modules/dynamic-credentials.ee/utils.js.map +1 -1
  140. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js +4 -1
  141. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js.map +1 -1
  142. package/dist/modules/external-secrets.ee/external-secrets.module.js +4 -0
  143. package/dist/modules/external-secrets.ee/external-secrets.module.js.map +1 -1
  144. package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js +35 -2
  145. package/dist/modules/external-secrets.ee/providers/aws-secrets-manager.js.map +1 -1
  146. package/dist/modules/external-secrets.ee/providers/infisical.js +39 -9
  147. package/dist/modules/external-secrets.ee/providers/infisical.js.map +1 -1
  148. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.d.ts +11 -0
  149. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.js +64 -0
  150. package/dist/modules/external-secrets.ee/secrets-providers-autocomplete.controller.ee.js.map +1 -0
  151. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.d.ts +18 -0
  152. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js +141 -0
  153. package/dist/modules/external-secrets.ee/secrets-providers-connections.controller.ee.js.map +1 -0
  154. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.d.ts +10 -0
  155. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js +53 -0
  156. package/dist/modules/external-secrets.ee/secrets-providers-project.controller.ee.js.map +1 -0
  157. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.d.ts +11 -0
  158. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.js +64 -0
  159. package/dist/modules/external-secrets.ee/secrets-providers-types.controller.ee.js.map +1 -0
  160. package/dist/modules/ldap.ee/constants.js.map +1 -0
  161. package/dist/{ldap.ee → modules/ldap.ee}/helpers.ee.d.ts +0 -3
  162. package/dist/{ldap.ee → modules/ldap.ee}/helpers.ee.js +1 -11
  163. package/dist/modules/ldap.ee/helpers.ee.js.map +1 -0
  164. package/dist/{ldap.ee → modules/ldap.ee}/ldap.controller.ee.d.ts +1 -1
  165. package/dist/{ldap.ee → modules/ldap.ee}/ldap.controller.ee.js +2 -2
  166. package/dist/modules/ldap.ee/ldap.controller.ee.js.map +1 -0
  167. package/dist/modules/ldap.ee/ldap.module.d.ts +4 -0
  168. package/dist/modules/ldap.ee/ldap.module.js +57 -0
  169. package/dist/modules/ldap.ee/ldap.module.js.map +1 -0
  170. package/dist/{ldap.ee → modules/ldap.ee}/ldap.service.ee.d.ts +5 -3
  171. package/dist/{ldap.ee → modules/ldap.ee}/ldap.service.ee.js +47 -10
  172. package/dist/modules/ldap.ee/ldap.service.ee.js.map +1 -0
  173. package/dist/{ldap.ee → modules/ldap.ee}/types.js.map +1 -1
  174. package/dist/modules/log-streaming.ee/database/repositories/event-destination.repository.js.map +1 -1
  175. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-sentry.ee.js +0 -7
  176. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-sentry.ee.js.map +1 -1
  177. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-syslog.ee.js +0 -6
  178. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-syslog.ee.js.map +1 -1
  179. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js +1 -8
  180. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination-webhook.ee.js.map +1 -1
  181. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.d.ts +0 -2
  182. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js +6 -2
  183. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js.map +1 -1
  184. package/dist/modules/log-streaming.ee/log-streaming-destination.service.d.ts +4 -5
  185. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js +6 -10
  186. package/dist/modules/log-streaming.ee/log-streaming-destination.service.js.map +1 -1
  187. package/dist/modules/log-streaming.ee/log-streaming.controller.d.ts +6 -6
  188. package/dist/modules/log-streaming.ee/log-streaming.controller.js +33 -71
  189. package/dist/modules/log-streaming.ee/log-streaming.controller.js.map +1 -1
  190. package/dist/modules/mcp/mcp.controller.js +1 -1
  191. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  192. package/dist/modules/mcp/mcp.oauth.controller.js +17 -2
  193. package/dist/modules/mcp/mcp.oauth.controller.js.map +1 -1
  194. package/dist/modules/source-control.ee/source-control-export.service.ee.d.ts +1 -1
  195. package/dist/modules/source-control.ee/source-control-export.service.ee.js +2 -3
  196. package/dist/modules/source-control.ee/source-control-export.service.ee.js.map +1 -1
  197. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +5 -8
  198. package/dist/modules/source-control.ee/source-control-import.service.ee.js +27 -9
  199. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  200. package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +7 -6
  201. package/dist/modules/source-control.ee/source-control-status.service.ee.js +18 -1
  202. package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
  203. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +10 -10
  204. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +5 -5
  205. package/dist/modules/source-control.ee/source-control.service.ee.js +2 -2
  206. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  207. package/dist/modules/source-control.ee/types/exportable-tags.d.ts +4 -2
  208. package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +1 -1
  209. package/dist/modules/sso-oidc/oidc.service.ee.d.ts +2 -0
  210. package/dist/modules/sso-oidc/oidc.service.ee.js +16 -6
  211. package/dist/modules/sso-oidc/oidc.service.ee.js.map +1 -1
  212. package/dist/modules/sso-saml/saml-validator.d.ts +1 -0
  213. package/dist/modules/sso-saml/saml-validator.js +5 -3
  214. package/dist/modules/sso-saml/saml-validator.js.map +1 -1
  215. package/dist/modules/sso-saml/saml.service.ee.js +2 -1
  216. package/dist/modules/sso-saml/saml.service.ee.js.map +1 -1
  217. package/dist/node-types.js +9 -6
  218. package/dist/node-types.js.map +1 -1
  219. package/dist/public-api/v1/handlers/credentials/credentials.service.js +1 -0
  220. package/dist/public-api/v1/handlers/credentials/credentials.service.js.map +1 -1
  221. package/dist/scaling/multi-main-setup.ee.d.ts +3 -2
  222. package/dist/scaling/multi-main-setup.ee.js +11 -2
  223. package/dist/scaling/multi-main-setup.ee.js.map +1 -1
  224. package/dist/server.js +0 -6
  225. package/dist/server.js.map +1 -1
  226. package/dist/services/ai-workflow-builder.service.d.ts +3 -1
  227. package/dist/services/ai-workflow-builder.service.js +16 -3
  228. package/dist/services/ai-workflow-builder.service.js.map +1 -1
  229. package/dist/services/dynamic-node-parameters.service.d.ts +1 -0
  230. package/dist/services/dynamic-node-parameters.service.js +15 -2
  231. package/dist/services/dynamic-node-parameters.service.js.map +1 -1
  232. package/dist/services/frontend.service.js +3 -2
  233. package/dist/services/frontend.service.js.map +1 -1
  234. package/dist/services/pruning/workflow-history-compaction.service.d.ts +3 -1
  235. package/dist/services/pruning/workflow-history-compaction.service.js +16 -9
  236. package/dist/services/pruning/workflow-history-compaction.service.js.map +1 -1
  237. package/dist/services/rate-limit.service.d.ts +11 -0
  238. package/dist/services/rate-limit.service.js +78 -0
  239. package/dist/services/rate-limit.service.js.map +1 -0
  240. package/dist/services/static-auth-service.d.ts +4 -0
  241. package/dist/services/static-auth-service.js +30 -0
  242. package/dist/services/static-auth-service.js.map +1 -0
  243. package/dist/tool-generation/ai-tools.d.ts +7 -0
  244. package/dist/tool-generation/ai-tools.js +83 -0
  245. package/dist/tool-generation/ai-tools.js.map +1 -0
  246. package/dist/tool-generation/hitl-tools.d.ts +7 -0
  247. package/dist/tool-generation/hitl-tools.js +150 -0
  248. package/dist/tool-generation/hitl-tools.js.map +1 -0
  249. package/dist/tool-generation/index.d.ts +3 -0
  250. package/dist/tool-generation/index.js +16 -0
  251. package/dist/tool-generation/index.js.map +1 -0
  252. package/dist/tool-generation/utils.d.ts +4 -0
  253. package/dist/tool-generation/utils.js +29 -0
  254. package/dist/tool-generation/utils.js.map +1 -0
  255. package/dist/webhooks/waiting-webhooks.js +19 -1
  256. package/dist/webhooks/waiting-webhooks.js.map +1 -1
  257. package/dist/webhooks/webhook.service.d.ts +6 -0
  258. package/dist/webhooks/webhook.service.js +49 -0
  259. package/dist/webhooks/webhook.service.js.map +1 -1
  260. package/dist/workflows/workflow.service.d.ts +8 -2
  261. package/dist/workflows/workflow.service.ee.d.ts +1 -0
  262. package/dist/workflows/workflow.service.ee.js +45 -0
  263. package/dist/workflows/workflow.service.ee.js.map +1 -1
  264. package/dist/workflows/workflow.service.js +49 -2
  265. package/dist/workflows/workflow.service.js.map +1 -1
  266. package/package.json +17 -17
  267. package/dist/ldap.ee/constants.js.map +0 -1
  268. package/dist/ldap.ee/helpers.ee.js.map +0 -1
  269. package/dist/ldap.ee/ldap.controller.ee.js.map +0 -1
  270. package/dist/ldap.ee/ldap.service.ee.js.map +0 -1
  271. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.d.ts +0 -28
  272. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.js +0 -86
  273. package/dist/modules/dynamic-credentials.ee/credential-resolvers/stub-credential-resolver.js.map +0 -1
  274. /package/dist/{ldap.ee → modules/ldap.ee}/constants.d.ts +0 -0
  275. /package/dist/{ldap.ee → modules/ldap.ee}/constants.js +0 -0
  276. /package/dist/{ldap.ee → modules/ldap.ee}/types.d.ts +0 -0
  277. /package/dist/{ldap.ee → modules/ldap.ee}/types.js +0 -0
@@ -0,0 +1,8 @@
1
+ import type { CapacityTarget, ConcurrencyControlService } from '../concurrency/concurrency-control.service';
2
+ export declare class ConcurrencyCapacityReservation {
3
+ private readonly concurrencyControlService;
4
+ private acquiredReservation;
5
+ constructor(concurrencyControlService: ConcurrencyControlService);
6
+ reserve(capacityFor: CapacityTarget): Promise<void>;
7
+ release(): void;
8
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ConcurrencyCapacityReservation = void 0;
7
+ const node_assert_1 = __importDefault(require("node:assert"));
8
+ class ConcurrencyCapacityReservation {
9
+ constructor(concurrencyControlService) {
10
+ this.concurrencyControlService = concurrencyControlService;
11
+ this.acquiredReservation = undefined;
12
+ }
13
+ async reserve(capacityFor) {
14
+ (0, node_assert_1.default)(!this.acquiredReservation, 'Capacity already reserved');
15
+ await this.concurrencyControlService.throttle(capacityFor);
16
+ this.acquiredReservation = capacityFor;
17
+ }
18
+ release() {
19
+ if (!this.acquiredReservation)
20
+ return;
21
+ this.concurrencyControlService.release({ mode: this.acquiredReservation.mode });
22
+ this.acquiredReservation = undefined;
23
+ }
24
+ }
25
+ exports.ConcurrencyCapacityReservation = ConcurrencyCapacityReservation;
26
+ //# sourceMappingURL=concurrency-capacity-reservation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"concurrency-capacity-reservation.js","sourceRoot":"","sources":["../../src/concurrency/concurrency-capacity-reservation.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAiC;AAiBjC,MAAa,8BAA8B;IAG1C,YAA6B,yBAAoD;QAApD,8BAAyB,GAAzB,yBAAyB,CAA2B;QAFzE,wBAAmB,GAA+B,SAAS,CAAC;IAEgB,CAAC;IAErF,KAAK,CAAC,OAAO,CAAC,WAA2B;QACxC,IAAA,qBAAM,EAAC,CAAC,IAAI,CAAC,mBAAmB,EAAE,2BAA2B,CAAC,CAAC;QAE/D,MAAM,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC;IACxC,CAAC;IAED,OAAO;QACN,IAAI,CAAC,IAAI,CAAC,mBAAmB;YAAE,OAAO;QAEtC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;QAEhF,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;IACtC,CAAC;CACD;AAnBD,wEAmBC"}
@@ -1,12 +1,16 @@
1
1
  import { Logger } from '@n8n/backend-common';
2
2
  import { GlobalConfig } from '@n8n/config';
3
3
  import { ExecutionRepository } from '@n8n/db';
4
- import type { WorkflowExecuteMode as ExecutionMode } from 'n8n-workflow';
4
+ import type { WorkflowExecuteMode } from 'n8n-workflow';
5
5
  import { EventService } from '../events/event.service';
6
6
  import { Telemetry } from '../telemetry';
7
7
  export declare const CLOUD_TEMP_PRODUCTION_LIMIT = 999;
8
8
  export declare const CLOUD_TEMP_REPORTABLE_THRESHOLDS: number[];
9
9
  export type ConcurrencyQueueType = 'production' | 'evaluation';
10
+ export interface CapacityTarget {
11
+ executionId: string;
12
+ mode: WorkflowExecuteMode;
13
+ }
10
14
  export declare class ConcurrencyControlService {
11
15
  private readonly logger;
12
16
  private readonly executionRepository;
@@ -19,17 +23,11 @@ export declare class ConcurrencyControlService {
19
23
  private readonly limitsToReport;
20
24
  constructor(logger: Logger, executionRepository: ExecutionRepository, telemetry: Telemetry, eventService: EventService, globalConfig: GlobalConfig);
21
25
  has(executionId: string): boolean;
22
- throttle({ mode, executionId }: {
23
- mode: ExecutionMode;
24
- executionId: string;
25
- }): Promise<void>;
26
+ throttle({ mode, executionId }: CapacityTarget): Promise<void>;
26
27
  release({ mode }: {
27
- mode: ExecutionMode;
28
- }): void;
29
- remove({ mode, executionId }: {
30
- mode: ExecutionMode;
31
- executionId: string;
28
+ mode: WorkflowExecuteMode;
32
29
  }): void;
30
+ remove({ mode, executionId }: CapacityTarget): void;
33
31
  removeAll(executionIdsToCancel: string[]): Promise<void>;
34
32
  disable(): void;
35
33
  private logInit;
@@ -1 +1 @@
1
- {"version":3,"file":"concurrency-control.service.js","sourceRoot":"","sources":["../../src/concurrency/concurrency-control.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"concurrency-control.service.js","sourceRoot":"","sources":["../../src/concurrency/concurrency-control.service.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { GlobalConfig } from '@n8n/config';
2
2
  import { ControllerRegistryMetadata } from '@n8n/decorators';
3
3
  import type { Application } from 'express';
4
4
  import { LastActiveAtService } from './services/last-active-at.service';
5
+ import { RateLimitService } from './services/rate-limit.service';
5
6
  import { AuthService } from './auth/auth.service';
6
7
  import { License } from './license';
7
8
  export declare class ControllerRegistry {
@@ -10,11 +11,11 @@ export declare class ControllerRegistry {
10
11
  private readonly globalConfig;
11
12
  private readonly metadata;
12
13
  private readonly lastActiveAtService;
13
- constructor(license: License, authService: AuthService, globalConfig: GlobalConfig, metadata: ControllerRegistryMetadata, lastActiveAtService: LastActiveAtService);
14
+ private readonly rateLimitService;
15
+ constructor(license: License, authService: AuthService, globalConfig: GlobalConfig, metadata: ControllerRegistryMetadata, lastActiveAtService: LastActiveAtService, rateLimitService: RateLimitService);
14
16
  activate(app: Application): void;
15
17
  private activateController;
16
18
  private buildMiddlewares;
17
- private createRateLimitMiddleware;
18
19
  private createLicenseMiddleware;
19
20
  private createScopedMiddleware;
20
21
  }
@@ -8,31 +8,36 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.ControllerRegistry = void 0;
13
16
  const constants_1 = require("./constants");
14
- const backend_common_1 = require("@n8n/backend-common");
15
17
  const config_1 = require("@n8n/config");
16
18
  const decorators_1 = require("@n8n/decorators");
17
19
  const di_1 = require("@n8n/di");
18
20
  const express_1 = require("express");
19
- const express_rate_limit_1 = require("express-rate-limit");
20
21
  const n8n_workflow_1 = require("n8n-workflow");
22
+ const node_assert_1 = __importDefault(require("node:assert"));
21
23
  const not_found_error_1 = require("./errors/response-errors/not-found.error");
22
24
  const last_active_at_service_1 = require("./services/last-active-at.service");
25
+ const rate_limit_service_1 = require("./services/rate-limit.service");
23
26
  const auth_service_1 = require("./auth/auth.service");
24
27
  const unauthenticated_error_1 = require("./errors/response-errors/unauthenticated.error");
25
28
  const license_1 = require("./license");
26
29
  const check_access_1 = require("./permissions.ee/check-access");
27
30
  const response_helper_1 = require("./response-helper");
28
31
  const cors_service_1 = require("./services/cors-service");
32
+ const backend_common_1 = require("@n8n/backend-common");
29
33
  let ControllerRegistry = class ControllerRegistry {
30
- constructor(license, authService, globalConfig, metadata, lastActiveAtService) {
34
+ constructor(license, authService, globalConfig, metadata, lastActiveAtService, rateLimitService) {
31
35
  this.license = license;
32
36
  this.authService = authService;
33
37
  this.globalConfig = globalConfig;
34
38
  this.metadata = metadata;
35
39
  this.lastActiveAtService = lastActiveAtService;
40
+ this.rateLimitService = rateLimitService;
36
41
  }
37
42
  activate(app) {
38
43
  for (const controllerClass of this.metadata.controllerClasses) {
@@ -90,7 +95,9 @@ let ControllerRegistry = class ControllerRegistry {
90
95
  }
91
96
  return await controller[handlerName](...args);
92
97
  };
93
- const middlewares = this.buildMiddlewares(route, controllerMiddlewares);
98
+ const bodyArgIdx = route.args.findIndex((arg) => arg?.type === 'body');
99
+ const bodyArgType = bodyArgIdx !== -1 ? argTypes[bodyArgIdx] : undefined;
100
+ const middlewares = this.buildMiddlewares(route, controllerMiddlewares, bodyArgType);
94
101
  const finalHandler = route.usesTemplates
95
102
  ? async (req, res) => {
96
103
  await handler(req, res);
@@ -99,10 +106,14 @@ let ControllerRegistry = class ControllerRegistry {
99
106
  router[route.method](route.path, ...middlewares, finalHandler);
100
107
  }
101
108
  }
102
- buildMiddlewares(route, controllerMiddlewares) {
109
+ buildMiddlewares(route, controllerMiddlewares, bodyDtoClass) {
103
110
  const middlewares = [];
104
- if (backend_common_1.inProduction && route.rateLimit) {
105
- middlewares.push(this.createRateLimitMiddleware(route.rateLimit));
111
+ if (backend_common_1.inProduction && route.ipRateLimit) {
112
+ middlewares.push(this.rateLimitService.createIpRateLimitMiddleware(route.ipRateLimit));
113
+ }
114
+ if (backend_common_1.inProduction && route.keyedRateLimit?.source === 'body') {
115
+ (0, node_assert_1.default)(bodyDtoClass, 'Body argument type (@Body decorator) is required for body-based rate limiting');
116
+ middlewares.push(this.rateLimitService.createBodyKeyedRateLimitMiddleware(bodyDtoClass, route.keyedRateLimit));
106
117
  }
107
118
  if (!route.skipAuth) {
108
119
  middlewares.push(this.authService.createAuthMiddleware({
@@ -110,6 +121,12 @@ let ControllerRegistry = class ControllerRegistry {
110
121
  allowSkipPreviewAuth: route.allowSkipPreviewAuth ?? false,
111
122
  }), this.lastActiveAtService.middleware.bind(this.lastActiveAtService));
112
123
  }
124
+ if (route.keyedRateLimit?.source === 'user') {
125
+ (0, node_assert_1.default)(!route.skipAuth, `User-based rate limiting is only supported for authenticated endpoints. Route: ${JSON.stringify(route)}`);
126
+ if (backend_common_1.inProduction) {
127
+ middlewares.push(this.rateLimitService.createUserKeyedRateLimitMiddleware(route.keyedRateLimit));
128
+ }
129
+ }
113
130
  if (route.licenseFeature) {
114
131
  middlewares.push(this.createLicenseMiddleware(route.licenseFeature));
115
132
  }
@@ -122,15 +139,6 @@ let ControllerRegistry = class ControllerRegistry {
122
139
  }
123
140
  return middlewares;
124
141
  }
125
- createRateLimitMiddleware(rateLimit) {
126
- if (typeof rateLimit === 'boolean')
127
- rateLimit = {};
128
- return (0, express_rate_limit_1.rateLimit)({
129
- windowMs: rateLimit.windowMs,
130
- limit: rateLimit.limit,
131
- message: { message: 'Too many requests' },
132
- });
133
- }
134
142
  createLicenseMiddleware(feature) {
135
143
  return (_req, res, next) => {
136
144
  if (!this.license.isLicensed(feature)) {
@@ -172,6 +180,7 @@ exports.ControllerRegistry = ControllerRegistry = __decorate([
172
180
  auth_service_1.AuthService,
173
181
  config_1.GlobalConfig,
174
182
  decorators_1.ControllerRegistryMetadata,
175
- last_active_at_service_1.LastActiveAtService])
183
+ last_active_at_service_1.LastActiveAtService,
184
+ rate_limit_service_1.RateLimitService])
176
185
  ], ControllerRegistry);
177
186
  //# sourceMappingURL=controller.registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"controller.registry.js","sourceRoot":"","sources":["../src/controller.registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.registry.js","sourceRoot":"","sources":["../src/controller.registry.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAsD;AACtD,wCAA2C;AAG3C,gDAA6D;AAQ7D,gCAA6C;AAC7C,qCAAiC;AAEjC,+CAA+C;AAC/C,8DAAiC;AAGjC,8EAAyE;AACzE,8EAAwE;AACxE,sEAAiE;AAEjE,sDAAkD;AAClD,0FAAsF;AACtF,uCAAoC;AACpC,gEAA8D;AAC9D,uDAAyC;AACzC,0DAAsD;AACtD,wDAAmD;AAG5C,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC9B,YACkB,OAAgB,EAChB,WAAwB,EACxB,YAA0B,EAC1B,QAAoC,EACpC,mBAAwC,EACxC,gBAAkC;QALlC,YAAO,GAAP,OAAO,CAAS;QAChB,gBAAW,GAAX,WAAW,CAAa;QACxB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,aAAQ,GAAR,QAAQ,CAA4B;QACpC,wBAAmB,GAAnB,mBAAmB,CAAqB;QACxC,qBAAgB,GAAhB,gBAAgB,CAAkB;IACjD,CAAC;IAEJ,QAAQ,CAAC,GAAgB;QACxB,KAAK,MAAM,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YAC/D,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;QAC/C,CAAC;IACF,CAAC;IAEO,kBAAkB,CAAC,GAAgB,EAAE,eAA2B;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;QAEtE,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,kBAAkB;YAC3C,CAAC,CAAC,QAAQ,CAAC,QAAQ;YACnB,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChE,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE9C,MAAM,UAAU,GAAG,cAAS,CAAC,GAAG,CAAC,eAAe,CAAe,CAAC;QAChE,MAAM,qBAAqB,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CACrD,CAAC,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,UAAU,CAAmB,CAC3E,CAAC;QAEF,MAAM,aAAa,GAAI,eAAuB,CAAC,OAA6C,CAAC;QAE7F,IAAI,aAAa,EAAE,CAAC;YACnB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;gBAC1C,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;oBAC1B,MAAM,IAAI,8BAAe,CACxB,iCAAiC,YAAY,CAAC,IAAI,oBAAoB,eAAe,CAAC,IAAI,GAAG,CAC7F,CAAC;gBACH,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC;gBAC/E,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;YACpE,CAAC;QACF,CAAC;QAGD,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YAEpD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CACnC,mBAAmB,EACnB,UAAU,EACV,WAAW,CACE,CAAC;YAEf,MAAM,OAAO,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;gBACrD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAChB,MAAM,WAAW,GAAG,cAAS,CAAC,GAAG,CAAC,0BAAW,CAAC,CAAC;oBAC/C,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC1D,WAAW,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;gBACrD,CAAC;gBAED,MAAM,IAAI,GAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;oBACxD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9B,IAAI,CAAC,GAAG;wBAAE,SAAS;oBACnB,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;wBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;yBACpD,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC/C,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAa,CAAC;wBAC9C,IAAI,SAAS,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;4BAC3C,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;4BAClD,IAAI,MAAM,CAAC,OAAO;gCAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iCACtC,CAAC;gCACL,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;4BACrD,CAAC;wBACF,CAAC;oBACF,CAAC;;wBAAM,MAAM,IAAI,8BAAe,CAAC,oBAAoB,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnE,CAAC;gBACD,OAAO,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/C,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC;YACvE,MAAM,WAAW,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAE,QAAQ,CAAC,UAAU,CAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAEvF,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,EAAE,WAAW,CAAC,CAAC;YACrF,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa;gBACvC,CAAC,CAAC,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;oBACtC,MAAM,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACzB,CAAC;gBACF,CAAC,CAAC,IAAA,sBAAI,EAAC,OAAO,CAAC,CAAC;YAEjB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,WAAW,EAAE,YAAY,CAAC,CAAC;QAChE,CAAC;IACF,CAAC;IAMO,gBAAgB,CACvB,KASC,EACD,qBAAuC,EACvC,YAAuB;QAEvB,MAAM,WAAW,GAAqB,EAAE,CAAC;QAGzC,IAAI,6BAAY,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACvC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,2BAA2B,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QACxF,CAAC;QAGD,IAAI,6BAAY,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7D,IAAA,qBAAM,EACL,YAAY,EACZ,+EAA+E,CAC/E,CAAC;YAEF,WAAW,CAAC,IAAI,CACf,IAAI,CAAC,gBAAgB,CAAC,kCAAkC,CACvD,YAAY,EACZ,KAAK,CAAC,cAAc,CACpB,CACD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrB,WAAW,CAAC,IAAI,CACf,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC;gBACrC,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,KAAK;gBACzC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,IAAI,KAAK;aACzD,CAAC,EACF,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAmB,CACpF,CAAC;QACH,CAAC;QAGD,IAAI,KAAK,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;YAC7C,IAAA,qBAAM,EACL,CAAC,KAAK,CAAC,QAAQ,EACf,kFAAkF,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CACzG,CAAC;YAGF,IAAI,6BAAY,EAAE,CAAC;gBAClB,WAAW,CAAC,IAAI,CACf,IAAI,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,KAAK,CAAC,cAAc,CAAC,CAC9E,CAAC;YACH,CAAC;QACF,CAAC;QAED,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAC1B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,CAAC;QAE3C,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACvB,WAAW,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,WAAW,CAAC;IACpB,CAAC;IAEO,uBAAuB,CAAC,OAA8B;QAC7D,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;gBAC1F,OAAO;YACR,CAAC;YACD,IAAI,EAAE,CAAC;QACR,CAAC,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,WAAwB;QACtD,OAAO,KAAK,EACX,GAA6F,EAC7F,GAAG,EACH,IAAI,EACH,EAAE;YACH,IAAI,CAAC,GAAG,CAAC,IAAI;gBAAE,MAAM,IAAI,4CAAoB,EAAE,CAAC;YAEhD,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,WAAW,CAAC;YAE1C,IAAI,CAAC;gBACJ,IAAI,CAAC,CAAC,MAAM,IAAA,4BAAa,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;oBACvE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACpB,MAAM,EAAE,OAAO;wBACf,OAAO,EAAE,mCAAuB,CAAC,aAAa;qBAC9C,CAAC,CAAC;oBACH,OAAO;gBACR,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,+BAAa,EAAE,CAAC;oBACpC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACR,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;YAED,IAAI,EAAE,CAAC;QACR,CAAC,CAAC;IACH,CAAC;CACD,CAAA;AAvNY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,YAAO,GAAE;qCAGkB,iBAAO;QACH,0BAAW;QACV,qBAAY;QAChB,uCAA0B;QACf,4CAAmB;QACtB,qCAAgB;GAPxC,kBAAkB,CAuN9B"}
@@ -197,14 +197,14 @@ let AiController = class AiController {
197
197
  exports.AiController = AiController;
198
198
  __decorate([
199
199
  (0, decorators_1.Licensed)('feat:aiBuilder'),
200
- (0, decorators_1.Post)('/build', { rateLimit: { limit: 100 }, usesTemplates: true }),
200
+ (0, decorators_1.Post)('/build', { ipRateLimit: { limit: 100 }, usesTemplates: true }),
201
201
  __param(2, decorators_1.Body),
202
202
  __metadata("design:type", Function),
203
203
  __metadata("design:paramtypes", [Object, Object, api_types_1.AiBuilderChatRequestDto]),
204
204
  __metadata("design:returntype", Promise)
205
205
  ], AiController.prototype, "build", null);
206
206
  __decorate([
207
- (0, decorators_1.Post)('/chat', { rateLimit: { limit: 100 } }),
207
+ (0, decorators_1.Post)('/chat', { ipRateLimit: { limit: 100 } }),
208
208
  __param(2, decorators_1.Body),
209
209
  __metadata("design:type", Function),
210
210
  __metadata("design:paramtypes", [Object, Object, api_types_1.AiChatRequestDto]),
@@ -233,7 +233,7 @@ __decorate([
233
233
  ], AiController.prototype, "aiCredits", null);
234
234
  __decorate([
235
235
  (0, decorators_1.Licensed)('feat:aiBuilder'),
236
- (0, decorators_1.Post)('/sessions', { rateLimit: { limit: 100 } }),
236
+ (0, decorators_1.Post)('/sessions', { ipRateLimit: { limit: 100 } }),
237
237
  __param(2, decorators_1.Body),
238
238
  __metadata("design:type", Function),
239
239
  __metadata("design:paramtypes", [Object, Object, api_types_1.AiSessionRetrievalRequestDto]),
@@ -248,7 +248,7 @@ __decorate([
248
248
  ], AiController.prototype, "getBuilderCredits", null);
249
249
  __decorate([
250
250
  (0, decorators_1.Licensed)('feat:aiBuilder'),
251
- (0, decorators_1.Post)('/build/truncate-messages', { rateLimit: { limit: 100 } }),
251
+ (0, decorators_1.Post)('/build/truncate-messages', { ipRateLimit: { limit: 100 } }),
252
252
  __param(2, decorators_1.Body),
253
253
  __metadata("design:type", Function),
254
254
  __metadata("design:paramtypes", [Object, Object, api_types_1.AiTruncateMessagesRequestDto]),
@@ -1 +1 @@
1
- {"version":3,"file":"ai.controller.js","sourceRoot":"","sources":["../../src/controllers/ai.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.controller.js","sourceRoot":"","sources":["../../src/controllers/ai.controller.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
1
  import { CreateApiKeyRequestDto, UpdateApiKeyRequestDto } from '@n8n/api-types';
2
2
  import { AuthenticatedRequest } from '@n8n/db';
3
+ import { type ApiKeyScope } from '@n8n/permissions';
3
4
  import type { RequestHandler } from 'express';
4
5
  import { EventService } from '../events/event.service';
6
+ import { License } from '../license';
5
7
  import { PublicApiKeyService } from '../services/public-api-key.service';
6
8
  export declare const isApiEnabledMiddleware: RequestHandler;
7
9
  export declare class ApiKeysController {
8
10
  private readonly eventService;
9
11
  private readonly publicApiKeyService;
10
- constructor(eventService: EventService, publicApiKeyService: PublicApiKeyService);
12
+ private readonly license;
13
+ constructor(eventService: EventService, publicApiKeyService: PublicApiKeyService, license: License);
11
14
  createApiKey(req: AuthenticatedRequest, _res: Response, body: CreateApiKeyRequestDto): Promise<{
12
15
  apiKey: string;
13
16
  rawApiKey: string;
@@ -15,7 +18,7 @@ export declare class ApiKeysController {
15
18
  user: import("@n8n/db").User;
16
19
  userId: string;
17
20
  label: string;
18
- scopes: import("@n8n/permissions").ApiKeyScope[];
21
+ scopes: ApiKeyScope[];
19
22
  audience: import("n8n-workflow").ApiKeyAudience;
20
23
  id: string;
21
24
  generateId(): void;
@@ -29,7 +32,7 @@ export declare class ApiKeysController {
29
32
  user: import("@n8n/db").User;
30
33
  userId: string;
31
34
  label: string;
32
- scopes: import("@n8n/permissions").ApiKeyScope[];
35
+ scopes: ApiKeyScope[];
33
36
  audience: import("n8n-workflow").ApiKeyAudience;
34
37
  id: string;
35
38
  generateId(): void;
@@ -43,5 +46,6 @@ export declare class ApiKeysController {
43
46
  updateApiKey(req: AuthenticatedRequest, _res: Response, apiKeyId: string, body: UpdateApiKeyRequestDto): Promise<{
44
47
  success: boolean;
45
48
  }>;
46
- getApiKeyScopes(req: AuthenticatedRequest, _res: Response): Promise<import("@n8n/permissions").ApiKeyScope[]>;
49
+ getApiKeyScopes(req: AuthenticatedRequest, _res: Response): Promise<ApiKeyScope[]>;
50
+ private resolveScopesForUser;
47
51
  }
@@ -14,10 +14,12 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.ApiKeysController = exports.isApiEnabledMiddleware = void 0;
16
16
  const api_types_1 = require("@n8n/api-types");
17
+ const constants_1 = require("@n8n/constants");
17
18
  const decorators_1 = require("@n8n/decorators");
18
19
  const permissions_1 = require("@n8n/permissions");
19
20
  const bad_request_error_1 = require("../errors/response-errors/bad-request.error");
20
21
  const event_service_1 = require("../events/event.service");
22
+ const license_1 = require("../license");
21
23
  const public_api_1 = require("../public-api");
22
24
  const public_api_key_service_1 = require("../services/public-api-key.service");
23
25
  const isApiEnabledMiddleware = (_, res, next) => {
@@ -30,15 +32,20 @@ const isApiEnabledMiddleware = (_, res, next) => {
30
32
  };
31
33
  exports.isApiEnabledMiddleware = isApiEnabledMiddleware;
32
34
  let ApiKeysController = class ApiKeysController {
33
- constructor(eventService, publicApiKeyService) {
35
+ constructor(eventService, publicApiKeyService, license) {
34
36
  this.eventService = eventService;
35
37
  this.publicApiKeyService = publicApiKeyService;
38
+ this.license = license;
36
39
  }
37
40
  async createApiKey(req, _res, body) {
38
- if (!this.publicApiKeyService.apiKeyHasValidScopesForRole(req.user, body.scopes)) {
41
+ const scopes = this.resolveScopesForUser(req.user, body.scopes);
42
+ if (!this.publicApiKeyService.apiKeyHasValidScopesForRole(req.user, scopes)) {
39
43
  throw new bad_request_error_1.BadRequestError('Invalid scopes for user role');
40
44
  }
41
- const newApiKey = await this.publicApiKeyService.createPublicApiKeyForUser(req.user, body);
45
+ const newApiKey = await this.publicApiKeyService.createPublicApiKeyForUser(req.user, {
46
+ ...body,
47
+ scopes,
48
+ });
42
49
  this.eventService.emit('public-api-key-created', { user: req.user, publicApi: false });
43
50
  return {
44
51
  ...newApiKey,
@@ -57,16 +64,25 @@ let ApiKeysController = class ApiKeysController {
57
64
  return { success: true };
58
65
  }
59
66
  async updateApiKey(req, _res, apiKeyId, body) {
60
- if (!this.publicApiKeyService.apiKeyHasValidScopesForRole(req.user, body.scopes)) {
67
+ const scopes = this.resolveScopesForUser(req.user, body.scopes);
68
+ if (!this.publicApiKeyService.apiKeyHasValidScopesForRole(req.user, scopes)) {
61
69
  throw new bad_request_error_1.BadRequestError('Invalid scopes for user role');
62
70
  }
63
- await this.publicApiKeyService.updateApiKeyForUser(req.user, apiKeyId, body);
71
+ await this.publicApiKeyService.updateApiKeyForUser(req.user, apiKeyId, {
72
+ ...body,
73
+ scopes,
74
+ });
64
75
  return { success: true };
65
76
  }
66
77
  async getApiKeyScopes(req, _res) {
67
78
  const scopes = (0, permissions_1.getApiKeyScopesForRole)(req.user);
68
79
  return scopes;
69
80
  }
81
+ resolveScopesForUser(user, requestedScopes) {
82
+ return this.license.isLicensed(constants_1.LICENSE_FEATURES.API_KEY_SCOPES)
83
+ ? requestedScopes
84
+ : (0, permissions_1.getApiKeyScopesForRole)(user);
85
+ }
70
86
  };
71
87
  exports.ApiKeysController = ApiKeysController;
72
88
  __decorate([
@@ -112,6 +128,7 @@ __decorate([
112
128
  exports.ApiKeysController = ApiKeysController = __decorate([
113
129
  (0, decorators_1.RestController)('/api-keys'),
114
130
  __metadata("design:paramtypes", [event_service_1.EventService,
115
- public_api_key_service_1.PublicApiKeyService])
131
+ public_api_key_service_1.PublicApiKeyService,
132
+ license_1.License])
116
133
  ], ApiKeysController);
117
134
  //# sourceMappingURL=api-keys.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.controller.js","sourceRoot":"","sources":["../../src/controllers/api-keys.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-keys.controller.js","sourceRoot":"","sources":["../../src/controllers/api-keys.controller.ts"],"names":[],"mappings":"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"}
@@ -48,13 +48,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
48
48
  exports.AuthController = void 0;
49
49
  const api_types_1 = require("@n8n/api-types");
50
50
  const backend_common_1 = require("@n8n/backend-common");
51
+ const constants_1 = require("@n8n/constants");
51
52
  const db_1 = require("@n8n/db");
52
53
  const decorators_1 = require("@n8n/decorators");
53
54
  const di_1 = require("@n8n/di");
54
55
  const class_validator_1 = require("class-validator");
55
56
  const auth_1 = require("../auth");
56
57
  const auth_service_1 = require("../auth/auth.service");
57
- const constants_1 = require("../constants");
58
+ const constants_2 = require("../constants");
58
59
  const auth_error_1 = require("../errors/response-errors/auth.error");
59
60
  const bad_request_error_1 = require("../errors/response-errors/bad-request.error");
60
61
  const forbidden_error_1 = require("../errors/response-errors/forbidden.error");
@@ -100,7 +101,7 @@ let AuthController = class AuthController {
100
101
  usedAuthenticationMethod = 'email';
101
102
  }
102
103
  else {
103
- const { LdapService } = await Promise.resolve().then(() => __importStar(require('../ldap.ee/ldap.service.ee')));
104
+ const { LdapService } = await Promise.resolve().then(() => __importStar(require('../modules/ldap.ee/ldap.service.ee')));
104
105
  user = await di_1.Container.get(LdapService).handleLdapLogin(emailOrLdapLoginId, password);
105
106
  }
106
107
  }
@@ -155,7 +156,7 @@ let AuthController = class AuthController {
155
156
  inviterId,
156
157
  inviteeId,
157
158
  });
158
- throw new forbidden_error_1.ForbiddenError(constants_1.RESPONSE_ERROR_MESSAGES.USERS_QUOTA_REACHED);
159
+ throw new forbidden_error_1.ForbiddenError(constants_2.RESPONSE_ERROR_MESSAGES.USERS_QUOTA_REACHED);
159
160
  }
160
161
  const users = await this.userRepository.findManyByIds([inviterId, inviteeId], {
161
162
  includeRole: true,
@@ -191,7 +192,18 @@ let AuthController = class AuthController {
191
192
  };
192
193
  exports.AuthController = AuthController;
193
194
  __decorate([
194
- (0, decorators_1.Post)('/login', { skipAuth: true, rateLimit: true }),
195
+ (0, decorators_1.Post)('/login', {
196
+ skipAuth: true,
197
+ ipRateLimit: {
198
+ limit: 1000,
199
+ windowMs: 5 * constants_1.Time.minutes.toMilliseconds,
200
+ },
201
+ keyedRateLimit: (0, decorators_1.createBodyKeyedRateLimiter)({
202
+ limit: 5,
203
+ windowMs: 1 * constants_1.Time.minutes.toMilliseconds,
204
+ field: 'emailOrLdapLoginId',
205
+ }),
206
+ }),
195
207
  __param(2, decorators_1.Body),
196
208
  __metadata("design:type", Function),
197
209
  __metadata("design:paramtypes", [Object, Object, api_types_1.LoginRequestDto]),
@@ -1 +1 @@
1
- {"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../src/controllers/auth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../src/controllers/auth.controller.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ const password_utility_1 = require("../services/password.utility");
29
29
  const user_service_1 = require("../services/user.service");
30
30
  const ownership_service_1 = require("../services/ownership.service");
31
31
  const sso_helpers_1 = require("../sso.ee/sso-helpers");
32
+ const constants_2 = require("@n8n/constants");
32
33
  let InvitationController = class InvitationController {
33
34
  constructor(logger, externalHooks, authService, userService, license, passwordUtility, userRepository, postHog, eventService, ownershipService) {
34
35
  this.logger = logger;
@@ -134,7 +135,7 @@ let InvitationController = class InvitationController {
134
135
  };
135
136
  exports.InvitationController = InvitationController;
136
137
  __decorate([
137
- (0, decorators_1.Post)('/', { rateLimit: { limit: 10 } }),
138
+ (0, decorators_1.Post)('/', { ipRateLimit: { limit: 10 } }),
138
139
  (0, decorators_1.GlobalScope)('user:create'),
139
140
  __param(2, decorators_1.Body),
140
141
  __metadata("design:type", Function),
@@ -142,14 +143,25 @@ __decorate([
142
143
  __metadata("design:returntype", Promise)
143
144
  ], InvitationController.prototype, "inviteUser", null);
144
145
  __decorate([
145
- (0, decorators_1.Post)('/accept', { skipAuth: true }),
146
+ (0, decorators_1.Post)('/accept', {
147
+ skipAuth: true,
148
+ ipRateLimit: { limit: 100, windowMs: 1 * constants_2.Time.minutes.toMilliseconds },
149
+ }),
146
150
  __param(2, decorators_1.Body),
147
151
  __metadata("design:type", Function),
148
152
  __metadata("design:paramtypes", [Object, Object, api_types_1.AcceptInvitationRequestDto]),
149
153
  __metadata("design:returntype", Promise)
150
154
  ], InvitationController.prototype, "acceptInvitationWithToken", null);
151
155
  __decorate([
152
- (0, decorators_1.Post)('/:id/accept', { skipAuth: true }),
156
+ (0, decorators_1.Post)('/:id/accept', {
157
+ skipAuth: true,
158
+ ipRateLimit: { limit: 100, windowMs: 5 * constants_2.Time.minutes.toMilliseconds },
159
+ keyedRateLimit: (0, decorators_1.createBodyKeyedRateLimiter)({
160
+ limit: 10,
161
+ windowMs: 1 * constants_2.Time.minutes.toMilliseconds,
162
+ field: 'inviterId',
163
+ }),
164
+ }),
153
165
  __param(2, decorators_1.Body),
154
166
  __param(3, (0, decorators_1.Param)('id')),
155
167
  __metadata("design:type", Function),