@egose/n8n-client 0.2.1 → 0.4.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 (121) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +8 -0
  3. package/{chunk-6JJ6RA5B.cjs → chunk-2T5KNPFX.cjs} +8 -1
  4. package/{chunk-RPB226OX.cjs → chunk-6MUNAE5L.cjs} +6 -6
  5. package/{chunk-3FDDCKAY.js → chunk-AS5WBSR3.js} +6 -6
  6. package/{chunk-TY76RTXQ.cjs → chunk-CWQXMALU.cjs} +7 -1
  7. package/{chunk-YSWBOCXJ.cjs → chunk-D4GV65GT.cjs} +10 -1
  8. package/{chunk-KRPRS2E5.cjs → chunk-DYUXQTFU.cjs} +6 -6
  9. package/{chunk-7H75UBMH.cjs → chunk-FB754K3A.cjs} +7 -1
  10. package/{chunk-4VK7K4IF.js → chunk-FOZHT2ZK.js} +7 -1
  11. package/{chunk-T62VHXNY.js → chunk-FSN23TT6.js} +7 -1
  12. package/{chunk-NBLW25ME.cjs → chunk-GUTI2M4U.cjs} +7 -1
  13. package/{chunk-GZ3POWDP.cjs → chunk-I2VZ7J4P.cjs} +6 -6
  14. package/{chunk-MMN2UKTI.cjs → chunk-JFTS6N3U.cjs} +11 -1
  15. package/{chunk-54N6YD4R.js → chunk-KBFYNP56.js} +2 -2
  16. package/{chunk-ETVDSJLY.js → chunk-KKFA5PJR.js} +2 -2
  17. package/{chunk-I4MMTW33.js → chunk-KMFHNXIH.js} +13 -1
  18. package/{chunk-W5P34RYO.cjs → chunk-O7AV3KS4.cjs} +31 -3
  19. package/{chunk-2R6A6NJE.js → chunk-PEUZAXIY.js} +10 -1
  20. package/{chunk-DTDNBA7W.cjs → chunk-TFMO4KWG.cjs} +4 -4
  21. package/{chunk-3YWWR6UD.cjs → chunk-TUWIRWCR.cjs} +14 -2
  22. package/{chunk-ZIIR24GM.cjs → chunk-U7CFNNJT.cjs} +11 -11
  23. package/{chunk-YE2OS2KS.js → chunk-UCSJX4UC.js} +8 -1
  24. package/{chunk-BQ2OTUXQ.js → chunk-UZYRG5OI.js} +2 -2
  25. package/{chunk-PT5DDLHC.js → chunk-VOCYFQYV.js} +2 -2
  26. package/{chunk-5DDMSYH2.js → chunk-W23TMDMQ.js} +2 -2
  27. package/{chunk-XJP6FPN3.js → chunk-WDO7B3R6.js} +11 -1
  28. package/{chunk-FTIVM52X.cjs → chunk-WO3YZAZT.cjs} +6 -6
  29. package/{chunk-YHSDCE3I.js → chunk-WQJUADC6.js} +7 -1
  30. package/{chunk-LQULSPET.cjs → chunk-WWVQNBTG.cjs} +6 -6
  31. package/{chunk-QJR4WFNV.js → chunk-YAYKWLOQ.js} +2 -2
  32. package/{chunk-GEWLPVNV.cjs → chunk-YWK563XR.cjs} +6 -6
  33. package/{chunk-LTYQTCHM.js → chunk-Z7XHC77E.js} +30 -2
  34. package/{chunk-HISH4ORK.js → chunk-ZPE32BQU.js} +2 -2
  35. package/clients/community-package.cjs +3 -3
  36. package/clients/community-package.d.cts +1 -1
  37. package/clients/community-package.d.ts +1 -1
  38. package/clients/community-package.js +2 -2
  39. package/clients/credential.cjs +3 -3
  40. package/clients/credential.d.cts +1 -1
  41. package/clients/credential.d.ts +1 -1
  42. package/clients/credential.js +2 -2
  43. package/clients/data-table.cjs +3 -3
  44. package/clients/data-table.d.cts +1 -1
  45. package/clients/data-table.d.ts +1 -1
  46. package/clients/data-table.js +2 -2
  47. package/clients/folder.cjs +3 -3
  48. package/clients/folder.d.cts +1 -1
  49. package/clients/folder.d.ts +1 -1
  50. package/clients/folder.js +2 -2
  51. package/clients/project.cjs +11 -11
  52. package/clients/project.d.cts +5 -5
  53. package/clients/project.d.ts +5 -5
  54. package/clients/project.js +10 -10
  55. package/clients/tag.cjs +3 -3
  56. package/clients/tag.d.cts +1 -1
  57. package/clients/tag.d.ts +1 -1
  58. package/clients/tag.js +2 -2
  59. package/clients/variable.cjs +3 -3
  60. package/clients/variable.d.cts +1 -1
  61. package/clients/variable.d.ts +1 -1
  62. package/clients/variable.js +2 -2
  63. package/clients/workflow.cjs +3 -3
  64. package/clients/workflow.d.cts +1 -1
  65. package/clients/workflow.d.ts +1 -1
  66. package/clients/workflow.js +2 -2
  67. package/{community-package-DBpReCPV.d.cts → community-package-BvmF_pP6.d.cts} +1 -0
  68. package/{community-package-CyzAqqwH.d.ts → community-package-xeQrLKme.d.ts} +1 -0
  69. package/{credential-CEH7XbGn.d.cts → credential-DPt1le6v.d.cts} +1 -0
  70. package/{credential-BWcrGfqd.d.ts → credential-Knm3Xhxp.d.ts} +1 -0
  71. package/{data-table-CHGUClGF.d.ts → data-table-Cg92UE2v.d.ts} +1 -0
  72. package/{data-table-CzR5kl9T.d.cts → data-table-ablBPGNU.d.cts} +1 -0
  73. package/{folder-DvgIxSea.d.cts → folder-DDe0xOyE.d.cts} +1 -0
  74. package/{folder-bjRPcy2j.d.ts → folder-JrOxuQPO.d.ts} +1 -0
  75. package/index.cjs +67 -26
  76. package/index.d.cts +74 -16
  77. package/index.d.ts +74 -16
  78. package/index.js +57 -16
  79. package/package.json +1 -1
  80. package/{project-BS1fXSLW.d.cts → project-CfXFXbv5.d.cts} +13 -4
  81. package/{project-uws9k24H.d.ts → project-DwqDoil4.d.ts} +13 -4
  82. package/resources/community-package.cjs +2 -2
  83. package/resources/community-package.d.cts +1 -1
  84. package/resources/community-package.d.ts +1 -1
  85. package/resources/community-package.js +1 -1
  86. package/resources/credential.cjs +2 -2
  87. package/resources/credential.d.cts +1 -1
  88. package/resources/credential.d.ts +1 -1
  89. package/resources/credential.js +1 -1
  90. package/resources/data-table.cjs +2 -2
  91. package/resources/data-table.d.cts +1 -1
  92. package/resources/data-table.d.ts +1 -1
  93. package/resources/data-table.js +1 -1
  94. package/resources/folder.cjs +2 -2
  95. package/resources/folder.d.cts +1 -1
  96. package/resources/folder.d.ts +1 -1
  97. package/resources/folder.js +1 -1
  98. package/resources/project.cjs +3 -3
  99. package/resources/project.d.cts +5 -5
  100. package/resources/project.d.ts +5 -5
  101. package/resources/project.js +2 -2
  102. package/resources/tag.cjs +2 -2
  103. package/resources/tag.d.cts +1 -1
  104. package/resources/tag.d.ts +1 -1
  105. package/resources/tag.js +1 -1
  106. package/resources/variable.cjs +2 -2
  107. package/resources/variable.d.cts +1 -1
  108. package/resources/variable.d.ts +1 -1
  109. package/resources/variable.js +1 -1
  110. package/resources/workflow.cjs +2 -2
  111. package/resources/workflow.d.cts +1 -1
  112. package/resources/workflow.d.ts +1 -1
  113. package/resources/workflow.js +1 -1
  114. package/{tag-lmf8obZe.d.ts → tag-5nOUYuYG.d.ts} +1 -0
  115. package/{tag-CzazpR40.d.cts → tag-DGGIqWix.d.cts} +1 -0
  116. package/types.d.cts +350 -0
  117. package/types.d.ts +350 -0
  118. package/{variable-CuCiwy0G.d.cts → variable-8kNQCTQx.d.cts} +1 -0
  119. package/{variable-C2LmlaTx.d.ts → variable-MVqhrcW-.d.ts} +1 -0
  120. package/{workflow-B2nxUmWq.d.cts → workflow-BD375xvs.d.cts} +1 -0
  121. package/{workflow-8pMj_fR_.d.ts → workflow-CLUVboDB.d.ts} +1 -0
package/index.d.ts CHANGED
@@ -2,26 +2,26 @@ import { RequestOptions } from './http-client.js';
2
2
  export { HttpClient, HttpError } from './http-client.js';
3
3
  import { N8nClientConfig } from './types.js';
4
4
  export { ActiveVersion, Audit, AuditAdditionalOptions, AuditCommunityLocation, AuditCredentialLocation, AuditNodeLocation, AuditRequest, AuditRisk, AuditRiskLocation, AuditRiskReport, AuditRiskSection, CommunityPackage, CommunityPackageNode, CreateColumnRequest, CreateDataTableRequest, Credential, CredentialCreate, CredentialListItem, CredentialListResponse, CredentialResponse, CredentialSharedItem, CredentialTestResponse, CredentialUpdate, DataTable, DataTableColumn, DataTableFilter, DataTableListParams, DataTableListResponse, DataTableRow, DataTableRowListParams, DataTableRowListResponse, DeleteRowsBooleanParams, DeleteRowsDataParams, DeleteRowsParams, DiscoverEndpoint, DiscoverFilter, DiscoverParams, DiscoverResource, DiscoverResponse, Execution, ExecutionGetParams, ExecutionListParams, ExecutionListResponse, ExecutionMode, ExecutionRetryRequest, ExecutionStatus, ExportWorkflowsRequest, Folder, FolderCreate, FolderDetail, FolderListParams, FolderListResponse, FolderUpdate, ImportPackageBindings, ImportPackageConflictError, ImportPackageOptions, ImportPackageResponse, ImportPackageUnprocessableError, ImportPackageWorkflow, InsertRowsAllRequest, InsertRowsCountRequest, InsertRowsIdsRequest, InsertRowsRequest, InsightsMetric, InsightsSummary, InsightsSummaryParams, InstallCommunityPackageRequest, JsonArray, JsonObject, JsonPrimitive, JsonValue, N8nApiError, Project, ProjectListResponse, ProjectMember, ProjectMemberListResponse, ProjectMemberRelation, ProjectMemberRoleChangeRequest, ProjectMutation, PullRequest, SharedWorkflow, SharedWorkflowProject, SourceControlledFile, SourceControlledOwner, StopManyExecutionsRequest, StopManyExecutionsResponse, Tag, TagId, TagListResponse, TagMutation, UpdateColumnRequest, UpdateCommunityPackageRequest, UpdateDataTableRequest, UpdateRowsBooleanRequest, UpdateRowsDataRequest, UpdateRowsRequest, UpsertRowBooleanRequest, UpsertRowDataRequest, UpsertRowRequest, User, UserCreate, UserCreateResponse, UserGetParams, UserListParams, UserListResponse, UserRoleChangeRequest, Variable, VariableCreate, VariableListParams, VariableListResponse, Workflow, WorkflowActivateRequest, WorkflowConnection, WorkflowConnectionBranch, WorkflowConnectionTypeMap, WorkflowConnections, WorkflowCreate, WorkflowGetParams, WorkflowListParams, WorkflowListResponse, WorkflowMeta, WorkflowNode, WorkflowNodeTelemetryTags, WorkflowPinData, WorkflowSettings, WorkflowTelemetryTag, WorkflowUpdate, WorkflowVersion } from './types.js';
5
- import { W as WorkflowClient } from './workflow-8pMj_fR_.js';
6
- export { a as WorkflowExecutionResourceCollection, b as WorkflowResource } from './workflow-8pMj_fR_.js';
5
+ import { W as WorkflowClient } from './workflow-CLUVboDB.js';
6
+ export { a as WorkflowExecutionResourceCollection, b as WorkflowResource } from './workflow-CLUVboDB.js';
7
7
  import { E as ExecutionClient } from './execution-BjR6z5Vu.js';
8
8
  export { a as ExecutionResource } from './execution-BjR6z5Vu.js';
9
- import { C as CredentialClient } from './credential-BWcrGfqd.js';
10
- export { a as CredentialResource } from './credential-BWcrGfqd.js';
11
- import { T as TagClient } from './tag-lmf8obZe.js';
12
- export { a as TagResource } from './tag-lmf8obZe.js';
9
+ import { C as CredentialClient } from './credential-Knm3Xhxp.js';
10
+ export { a as CredentialResource } from './credential-Knm3Xhxp.js';
11
+ import { T as TagClient } from './tag-5nOUYuYG.js';
12
+ export { a as TagResource } from './tag-5nOUYuYG.js';
13
13
  import { U as UserClient } from './user-B0WdVahA.js';
14
14
  export { a as UserResource } from './user-B0WdVahA.js';
15
- import { V as VariableClient } from './variable-C2LmlaTx.js';
16
- export { a as VariableResource } from './variable-C2LmlaTx.js';
17
- import { P as ProjectClient } from './project-uws9k24H.js';
18
- export { a as ProjectDataTableResourceCollection, b as ProjectExecutionResourceCollection, c as ProjectFolderResourceCollection, d as ProjectResource, e as ProjectVariableResourceCollection, f as ProjectWorkflowResourceCollection } from './project-uws9k24H.js';
19
- import { D as DataTableClient } from './data-table-CHGUClGF.js';
20
- export { a as DataTableResource } from './data-table-CHGUClGF.js';
21
- import { F as FolderClient } from './folder-bjRPcy2j.js';
22
- export { a as FolderResource } from './folder-bjRPcy2j.js';
23
- import { C as CommunityPackageClient } from './community-package-CyzAqqwH.js';
24
- export { a as CommunityPackageResource } from './community-package-CyzAqqwH.js';
15
+ import { V as VariableClient } from './variable-MVqhrcW-.js';
16
+ export { a as VariableResource } from './variable-MVqhrcW-.js';
17
+ import { P as ProjectClient } from './project-DwqDoil4.js';
18
+ export { a as ProjectDataTableResourceCollection, b as ProjectExecutionResourceCollection, c as ProjectFolderResourceCollection, d as ProjectResource, e as ProjectVariableResourceCollection, f as ProjectWorkflowResourceCollection } from './project-DwqDoil4.js';
19
+ import { D as DataTableClient } from './data-table-Cg92UE2v.js';
20
+ export { a as DataTableResource } from './data-table-Cg92UE2v.js';
21
+ import { F as FolderClient } from './folder-JrOxuQPO.js';
22
+ export { a as FolderResource } from './folder-JrOxuQPO.js';
23
+ import { C as CommunityPackageClient } from './community-package-xeQrLKme.js';
24
+ export { a as CommunityPackageResource } from './community-package-xeQrLKme.js';
25
25
  import AuditClient from './clients/audit.js';
26
26
  import InsightsClient from './clients/insights.js';
27
27
  import SourceControlClient from './clients/source-control.js';
@@ -31,29 +31,87 @@ export { PaginatedResponse, PaginationParams } from './pagination.js';
31
31
  import './clients/base.js';
32
32
  import './resources/base.js';
33
33
 
34
+ /**
35
+ * Root client for the n8n Public API v1.
36
+ *
37
+ * Creates an HTTP client and provides access to all 15 resource clients.
38
+ *
39
+ * @example
40
+ * ```ts
41
+ * import N8nClient from '@egose/n8n-client';
42
+ *
43
+ * const client = new N8nClient({
44
+ * baseUrl: 'http://localhost:5678',
45
+ * apiKey: process.env.N8N_API_KEY,
46
+ * });
47
+ *
48
+ * const { data } = await client.workflows().list({ limit: 10 });
49
+ * ```
50
+ */
34
51
  declare class N8nClient {
35
52
  #private;
53
+ /**
54
+ * Create a new client instance.
55
+ *
56
+ * @param config - Client configuration. Must include `baseUrl` and exactly one of `apiKey` or `bearerToken`.
57
+ * @throws {Error} If both or neither auth method is provided.
58
+ */
36
59
  constructor(config: N8nClientConfig);
60
+ /**
61
+ * Send an arbitrary HTTP request through the client's transport layer.
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const result = await client.request<Workflow>({
66
+ * method: 'GET',
67
+ * path: '/workflows',
68
+ * query: { limit: 5 },
69
+ * });
70
+ * ```
71
+ */
37
72
  request<T>(options: RequestOptions): Promise<T>;
38
73
  get<T>(path: string, query?: object, headers?: Record<string, string>): Promise<T>;
39
74
  post<T>(path: string, body?: unknown, query?: object, headers?: Record<string, string>): Promise<T>;
40
75
  put<T>(path: string, body?: unknown, query?: object, headers?: Record<string, string>): Promise<T>;
41
76
  patch<T>(path: string, body?: unknown, query?: object, headers?: Record<string, string>): Promise<T>;
42
77
  delete<T>(path: string, query?: object, headers?: Record<string, string>): Promise<T>;
78
+ /** Workflow management — list, get, create, update, delete, activate, deactivate, archive, transfer, tags, versions. */
43
79
  workflows(): WorkflowClient;
80
+ /** Execution monitoring — list, get, delete, retry, stop, tags. */
44
81
  executions(): ExecutionClient;
82
+ /** Credential management — list, get, create, update, delete, test, transfer, schema. */
45
83
  credentials(): CredentialClient;
84
+ /** Tag management — list, get, create, update, delete. */
46
85
  tags(): TagClient;
86
+ /** User management — list, get, create, delete, role changes. */
47
87
  users(): UserClient;
88
+ /** Variable management — list, get (paginated search), create, update, delete. */
48
89
  variables(): VariableClient;
90
+ /** Project management — list, create, update, delete, members. No `get(id)` — use `list()` to find projects. */
49
91
  projects(): ProjectClient;
92
+ /** Data table management — list, get, create, update, delete, rows, columns. */
50
93
  dataTables(): DataTableClient;
94
+ /**
95
+ * Folder management — requires `projectId` because folder endpoints are project-scoped.
96
+ *
97
+ * @example
98
+ * ```ts
99
+ * const folders = client.folders('project-id');
100
+ * await folders.list();
101
+ * ```
102
+ */
51
103
  folders(projectId: string): FolderClient;
104
+ /** Community package management — list, install, update, uninstall. */
52
105
  communityPackages(): CommunityPackageClient;
106
+ /** Audit report generation (singleton — no `list`/`get`). */
53
107
  audit(): AuditClient;
108
+ /** Execution insights summary (singleton — no `list`/`get`). */
54
109
  insights(): InsightsClient;
110
+ /** Source control operations — pull, list files (singleton). */
55
111
  sourceControl(): SourceControlClient;
112
+ /** Resource discovery — list available API resources, operations, and filters (singleton). */
56
113
  discover(): DiscoverClient;
114
+ /** n8n package import/export — export workflows as gzipped packages, import packages (singleton). */
57
115
  n8nPackage(): N8nPackageClient;
58
116
  }
59
117
 
package/index.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  TagClient
3
- } from "./chunk-PT5DDLHC.js";
3
+ } from "./chunk-VOCYFQYV.js";
4
4
  import {
5
5
  TagResource
6
- } from "./chunk-4VK7K4IF.js";
6
+ } from "./chunk-FOZHT2ZK.js";
7
7
  import {
8
8
  UserClient
9
9
  } from "./chunk-USTEEQQG.js";
@@ -21,28 +21,28 @@ import {
21
21
  } from "./chunk-ZVZIMJRM.js";
22
22
  import {
23
23
  ProjectClient
24
- } from "./chunk-3FDDCKAY.js";
24
+ } from "./chunk-AS5WBSR3.js";
25
25
  import {
26
26
  ProjectResource
27
- } from "./chunk-LTYQTCHM.js";
27
+ } from "./chunk-Z7XHC77E.js";
28
28
  import {
29
29
  VariableClient
30
- } from "./chunk-HISH4ORK.js";
30
+ } from "./chunk-ZPE32BQU.js";
31
31
  import {
32
32
  VariableResource
33
- } from "./chunk-2R6A6NJE.js";
33
+ } from "./chunk-PEUZAXIY.js";
34
34
  import {
35
35
  WorkflowClient
36
- } from "./chunk-54N6YD4R.js";
36
+ } from "./chunk-KBFYNP56.js";
37
37
  import {
38
38
  WorkflowResource
39
- } from "./chunk-I4MMTW33.js";
39
+ } from "./chunk-KMFHNXIH.js";
40
40
  import {
41
41
  DataTableClient
42
- } from "./chunk-BQ2OTUXQ.js";
42
+ } from "./chunk-UZYRG5OI.js";
43
43
  import {
44
44
  DataTableResource
45
- } from "./chunk-T62VHXNY.js";
45
+ } from "./chunk-FSN23TT6.js";
46
46
  import {
47
47
  ExecutionClient
48
48
  } from "./chunk-C6W6ERQD.js";
@@ -51,10 +51,10 @@ import {
51
51
  } from "./chunk-S4ZASMBT.js";
52
52
  import {
53
53
  FolderClient
54
- } from "./chunk-5DDMSYH2.js";
54
+ } from "./chunk-W23TMDMQ.js";
55
55
  import {
56
56
  FolderResource
57
- } from "./chunk-YE2OS2KS.js";
57
+ } from "./chunk-UCSJX4UC.js";
58
58
  import {
59
59
  SourceControlClient
60
60
  } from "./chunk-OUOWDGL7.js";
@@ -63,10 +63,10 @@ import {
63
63
  } from "./chunk-YUCX7HE3.js";
64
64
  import {
65
65
  CommunityPackageClient
66
- } from "./chunk-ETVDSJLY.js";
66
+ } from "./chunk-KKFA5PJR.js";
67
67
  import {
68
68
  CommunityPackageResource
69
- } from "./chunk-YHSDCE3I.js";
69
+ } from "./chunk-WQJUADC6.js";
70
70
  import {
71
71
  HttpClient,
72
72
  HttpError
@@ -74,19 +74,37 @@ import {
74
74
  import "./chunk-DURH6QOX.js";
75
75
  import {
76
76
  CredentialClient
77
- } from "./chunk-QJR4WFNV.js";
77
+ } from "./chunk-YAYKWLOQ.js";
78
78
  import {
79
79
  CredentialResource
80
- } from "./chunk-XJP6FPN3.js";
80
+ } from "./chunk-WDO7B3R6.js";
81
81
  import "./chunk-TLBDBRPJ.js";
82
82
  import "./chunk-Q6FSREKN.js";
83
83
 
84
84
  // src/index.ts
85
85
  var N8nClient = class {
86
86
  #http;
87
+ /**
88
+ * Create a new client instance.
89
+ *
90
+ * @param config - Client configuration. Must include `baseUrl` and exactly one of `apiKey` or `bearerToken`.
91
+ * @throws {Error} If both or neither auth method is provided.
92
+ */
87
93
  constructor(config) {
88
94
  this.#http = new HttpClient(config);
89
95
  }
96
+ /**
97
+ * Send an arbitrary HTTP request through the client's transport layer.
98
+ *
99
+ * @example
100
+ * ```ts
101
+ * const result = await client.request<Workflow>({
102
+ * method: 'GET',
103
+ * path: '/workflows',
104
+ * query: { limit: 5 },
105
+ * });
106
+ * ```
107
+ */
90
108
  request(options) {
91
109
  return this.#http.request(options);
92
110
  }
@@ -105,48 +123,71 @@ var N8nClient = class {
105
123
  delete(path, query, headers) {
106
124
  return this.#http.delete(path, query, headers);
107
125
  }
126
+ /** Workflow management — list, get, create, update, delete, activate, deactivate, archive, transfer, tags, versions. */
108
127
  workflows() {
109
128
  return new WorkflowClient(this.#http);
110
129
  }
130
+ /** Execution monitoring — list, get, delete, retry, stop, tags. */
111
131
  executions() {
112
132
  return new ExecutionClient(this.#http);
113
133
  }
134
+ /** Credential management — list, get, create, update, delete, test, transfer, schema. */
114
135
  credentials() {
115
136
  return new CredentialClient(this.#http);
116
137
  }
138
+ /** Tag management — list, get, create, update, delete. */
117
139
  tags() {
118
140
  return new TagClient(this.#http);
119
141
  }
142
+ /** User management — list, get, create, delete, role changes. */
120
143
  users() {
121
144
  return new UserClient(this.#http);
122
145
  }
146
+ /** Variable management — list, get (paginated search), create, update, delete. */
123
147
  variables() {
124
148
  return new VariableClient(this.#http);
125
149
  }
150
+ /** Project management — list, create, update, delete, members. No `get(id)` — use `list()` to find projects. */
126
151
  projects() {
127
152
  return new ProjectClient(this.#http);
128
153
  }
154
+ /** Data table management — list, get, create, update, delete, rows, columns. */
129
155
  dataTables() {
130
156
  return new DataTableClient(this.#http);
131
157
  }
158
+ /**
159
+ * Folder management — requires `projectId` because folder endpoints are project-scoped.
160
+ *
161
+ * @example
162
+ * ```ts
163
+ * const folders = client.folders('project-id');
164
+ * await folders.list();
165
+ * ```
166
+ */
132
167
  folders(projectId) {
133
168
  return new FolderClient(this.#http, projectId);
134
169
  }
170
+ /** Community package management — list, install, update, uninstall. */
135
171
  communityPackages() {
136
172
  return new CommunityPackageClient(this.#http);
137
173
  }
174
+ /** Audit report generation (singleton — no `list`/`get`). */
138
175
  audit() {
139
176
  return new AuditClient(this.#http);
140
177
  }
178
+ /** Execution insights summary (singleton — no `list`/`get`). */
141
179
  insights() {
142
180
  return new InsightsClient(this.#http);
143
181
  }
182
+ /** Source control operations — pull, list files (singleton). */
144
183
  sourceControl() {
145
184
  return new SourceControlClient(this.#http);
146
185
  }
186
+ /** Resource discovery — list available API resources, operations, and filters (singleton). */
147
187
  discover() {
148
188
  return new DiscoverClient(this.#http);
149
189
  }
190
+ /** n8n package import/export — export workflows as gzipped packages, import packages (singleton). */
150
191
  n8nPackage() {
151
192
  return new N8nPackageClient(this.#http);
152
193
  }
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.2.1",
2
+ "version": "0.4.0",
3
3
  "description": "TypeScript client for the n8n Public API with cursor-based pagination and typed resource handles.",
4
4
  "keywords": [
5
5
  "n8n",
@@ -1,11 +1,11 @@
1
1
  import { PaginationParams, PaginatedResponse } from './pagination.cjs';
2
2
  import { Project, ProjectMutation, ProjectMemberListResponse, ProjectMemberRelation, WorkflowListParams, WorkflowListResponse, Workflow, WorkflowCreate, WorkflowUpdate, FolderListParams, FolderListResponse, FolderCreate, Folder, FolderDetail, FolderUpdate, VariableListParams, VariableListResponse, Variable, VariableCreate, DataTable, CreateDataTableRequest, UpdateDataTableRequest, ExecutionListParams, ExecutionListResponse, ExecutionGetParams, Execution, ProjectListResponse } from './types.cjs';
3
3
  import BaseClient from './clients/base.cjs';
4
- import { D as DataTableClient, a as DataTableResource } from './data-table-CzR5kl9T.cjs';
4
+ import { D as DataTableClient, a as DataTableResource } from './data-table-ablBPGNU.cjs';
5
5
  import { E as ExecutionClient, a as ExecutionResource } from './execution-C0c9utwa.cjs';
6
- import { F as FolderClient, a as FolderResource } from './folder-DvgIxSea.cjs';
7
- import { V as VariableClient, a as VariableResource } from './variable-CuCiwy0G.cjs';
8
- import { W as WorkflowClient, b as WorkflowResource } from './workflow-B2nxUmWq.cjs';
6
+ import { F as FolderClient, a as FolderResource } from './folder-DDe0xOyE.cjs';
7
+ import { V as VariableClient, a as VariableResource } from './variable-8kNQCTQx.cjs';
8
+ import { W as WorkflowClient, b as WorkflowResource } from './workflow-BD375xvs.cjs';
9
9
  import BaseResource from './resources/base.cjs';
10
10
 
11
11
  interface ProjectWorkflowResourceCollection {
@@ -16,7 +16,9 @@ interface ProjectWorkflowResourceCollection {
16
16
  createResource(data: Omit<WorkflowCreate, 'projectId'>): Promise<WorkflowResource>;
17
17
  create(data: Omit<WorkflowCreate, 'projectId'>): Promise<Workflow>;
18
18
  update(id: string, data: WorkflowUpdate): Promise<Workflow>;
19
+ patch(id: string, data: Partial<WorkflowUpdate>): Promise<Workflow>;
19
20
  updateResource(id: string, data: WorkflowUpdate): Promise<WorkflowResource>;
21
+ patchResource(id: string, data: Partial<WorkflowUpdate>): Promise<WorkflowResource>;
20
22
  }
21
23
  interface ProjectFolderResourceCollection {
22
24
  list(params?: FolderListParams): Promise<FolderListResponse>;
@@ -26,7 +28,9 @@ interface ProjectFolderResourceCollection {
26
28
  create(data: FolderCreate): Promise<Folder>;
27
29
  get(id: string): Promise<FolderDetail>;
28
30
  update(id: string, data: FolderUpdate): Promise<Folder>;
31
+ patch(id: string, data: FolderUpdate): Promise<Folder | FolderDetail>;
29
32
  updateResource(id: string, data: FolderUpdate): Promise<FolderResource>;
33
+ patchResource(id: string, data: FolderUpdate): Promise<FolderResource>;
30
34
  delete(id: string, transferToFolderId?: string): Promise<void>;
31
35
  }
32
36
  interface ProjectVariableResourceCollection {
@@ -36,7 +40,9 @@ interface ProjectVariableResourceCollection {
36
40
  getResource(id: string): Promise<VariableResource>;
37
41
  create(data: Omit<VariableCreate, 'projectId'>): Promise<void>;
38
42
  update(id: string, data: Omit<VariableCreate, 'projectId'>): Promise<void>;
43
+ patch(id: string, data: Partial<Omit<VariableCreate, 'projectId'>>): Promise<void>;
39
44
  updateResource(id: string, data: Omit<VariableCreate, 'projectId'>): Promise<VariableResource>;
45
+ patchResource(id: string, data: Partial<Omit<VariableCreate, 'projectId'>>): Promise<VariableResource>;
40
46
  delete(id: string): Promise<void>;
41
47
  }
42
48
  interface ProjectDataTableResourceCollection {
@@ -45,7 +51,9 @@ interface ProjectDataTableResourceCollection {
45
51
  create(data: Omit<CreateDataTableRequest, 'projectId'>): Promise<DataTable>;
46
52
  createResource(data: Omit<CreateDataTableRequest, 'projectId'>): Promise<DataTableResource>;
47
53
  update(id: string, data: UpdateDataTableRequest): Promise<DataTable>;
54
+ patch(id: string, data: Partial<UpdateDataTableRequest>): Promise<DataTable>;
48
55
  updateResource(id: string, data: UpdateDataTableRequest): Promise<DataTableResource>;
56
+ patchResource(id: string, data: Partial<UpdateDataTableRequest>): Promise<DataTableResource>;
49
57
  delete(id: string): Promise<void>;
50
58
  }
51
59
  interface ProjectExecutionResourceCollection {
@@ -62,6 +70,7 @@ declare class ProjectResource extends BaseResource<Project> {
62
70
  get name(): string;
63
71
  get type(): string | undefined;
64
72
  update(data: ProjectMutation): Promise<this>;
73
+ patch(data: Partial<ProjectMutation>): Promise<this>;
65
74
  delete(): Promise<void>;
66
75
  listMembers(params?: PaginationParams): Promise<ProjectMemberListResponse>;
67
76
  addMembers(relations: ProjectMemberRelation[]): Promise<void>;
@@ -1,11 +1,11 @@
1
1
  import { PaginationParams, PaginatedResponse } from './pagination.js';
2
2
  import { Project, ProjectMutation, ProjectMemberListResponse, ProjectMemberRelation, WorkflowListParams, WorkflowListResponse, Workflow, WorkflowCreate, WorkflowUpdate, FolderListParams, FolderListResponse, FolderCreate, Folder, FolderDetail, FolderUpdate, VariableListParams, VariableListResponse, Variable, VariableCreate, DataTable, CreateDataTableRequest, UpdateDataTableRequest, ExecutionListParams, ExecutionListResponse, ExecutionGetParams, Execution, ProjectListResponse } from './types.js';
3
3
  import BaseClient from './clients/base.js';
4
- import { D as DataTableClient, a as DataTableResource } from './data-table-CHGUClGF.js';
4
+ import { D as DataTableClient, a as DataTableResource } from './data-table-Cg92UE2v.js';
5
5
  import { E as ExecutionClient, a as ExecutionResource } from './execution-BjR6z5Vu.js';
6
- import { F as FolderClient, a as FolderResource } from './folder-bjRPcy2j.js';
7
- import { V as VariableClient, a as VariableResource } from './variable-C2LmlaTx.js';
8
- import { W as WorkflowClient, b as WorkflowResource } from './workflow-8pMj_fR_.js';
6
+ import { F as FolderClient, a as FolderResource } from './folder-JrOxuQPO.js';
7
+ import { V as VariableClient, a as VariableResource } from './variable-MVqhrcW-.js';
8
+ import { W as WorkflowClient, b as WorkflowResource } from './workflow-CLUVboDB.js';
9
9
  import BaseResource from './resources/base.js';
10
10
 
11
11
  interface ProjectWorkflowResourceCollection {
@@ -16,7 +16,9 @@ interface ProjectWorkflowResourceCollection {
16
16
  createResource(data: Omit<WorkflowCreate, 'projectId'>): Promise<WorkflowResource>;
17
17
  create(data: Omit<WorkflowCreate, 'projectId'>): Promise<Workflow>;
18
18
  update(id: string, data: WorkflowUpdate): Promise<Workflow>;
19
+ patch(id: string, data: Partial<WorkflowUpdate>): Promise<Workflow>;
19
20
  updateResource(id: string, data: WorkflowUpdate): Promise<WorkflowResource>;
21
+ patchResource(id: string, data: Partial<WorkflowUpdate>): Promise<WorkflowResource>;
20
22
  }
21
23
  interface ProjectFolderResourceCollection {
22
24
  list(params?: FolderListParams): Promise<FolderListResponse>;
@@ -26,7 +28,9 @@ interface ProjectFolderResourceCollection {
26
28
  create(data: FolderCreate): Promise<Folder>;
27
29
  get(id: string): Promise<FolderDetail>;
28
30
  update(id: string, data: FolderUpdate): Promise<Folder>;
31
+ patch(id: string, data: FolderUpdate): Promise<Folder | FolderDetail>;
29
32
  updateResource(id: string, data: FolderUpdate): Promise<FolderResource>;
33
+ patchResource(id: string, data: FolderUpdate): Promise<FolderResource>;
30
34
  delete(id: string, transferToFolderId?: string): Promise<void>;
31
35
  }
32
36
  interface ProjectVariableResourceCollection {
@@ -36,7 +40,9 @@ interface ProjectVariableResourceCollection {
36
40
  getResource(id: string): Promise<VariableResource>;
37
41
  create(data: Omit<VariableCreate, 'projectId'>): Promise<void>;
38
42
  update(id: string, data: Omit<VariableCreate, 'projectId'>): Promise<void>;
43
+ patch(id: string, data: Partial<Omit<VariableCreate, 'projectId'>>): Promise<void>;
39
44
  updateResource(id: string, data: Omit<VariableCreate, 'projectId'>): Promise<VariableResource>;
45
+ patchResource(id: string, data: Partial<Omit<VariableCreate, 'projectId'>>): Promise<VariableResource>;
40
46
  delete(id: string): Promise<void>;
41
47
  }
42
48
  interface ProjectDataTableResourceCollection {
@@ -45,7 +51,9 @@ interface ProjectDataTableResourceCollection {
45
51
  create(data: Omit<CreateDataTableRequest, 'projectId'>): Promise<DataTable>;
46
52
  createResource(data: Omit<CreateDataTableRequest, 'projectId'>): Promise<DataTableResource>;
47
53
  update(id: string, data: UpdateDataTableRequest): Promise<DataTable>;
54
+ patch(id: string, data: Partial<UpdateDataTableRequest>): Promise<DataTable>;
48
55
  updateResource(id: string, data: UpdateDataTableRequest): Promise<DataTableResource>;
56
+ patchResource(id: string, data: Partial<UpdateDataTableRequest>): Promise<DataTableResource>;
49
57
  delete(id: string): Promise<void>;
50
58
  }
51
59
  interface ProjectExecutionResourceCollection {
@@ -62,6 +70,7 @@ declare class ProjectResource extends BaseResource<Project> {
62
70
  get name(): string;
63
71
  get type(): string | undefined;
64
72
  update(data: ProjectMutation): Promise<this>;
73
+ patch(data: Partial<ProjectMutation>): Promise<this>;
65
74
  delete(): Promise<void>;
66
75
  listMembers(params?: PaginationParams): Promise<ProjectMemberListResponse>;
67
76
  addMembers(relations: ProjectMemberRelation[]): Promise<void>;
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkTY76RTXQcjs = require('../chunk-TY76RTXQ.cjs');
3
+ var _chunkCWQXMALUcjs = require('../chunk-CWQXMALU.cjs');
4
4
  require('../chunk-FIKGC2EL.cjs');
5
5
 
6
6
 
7
- exports.default = _chunkTY76RTXQcjs.CommunityPackageResource;
7
+ exports.default = _chunkCWQXMALUcjs.CommunityPackageResource;
8
8
  //# sourceMappingURL=community-package.cjs.map
@@ -1,4 +1,4 @@
1
- export { a as default } from '../community-package-DBpReCPV.cjs';
1
+ export { a as default } from '../community-package-BvmF_pP6.cjs';
2
2
  import '../types.cjs';
3
3
  import './base.cjs';
4
4
  import '../clients/base.cjs';
@@ -1,4 +1,4 @@
1
- export { a as default } from '../community-package-CyzAqqwH.js';
1
+ export { a as default } from '../community-package-xeQrLKme.js';
2
2
  import '../types.js';
3
3
  import './base.js';
4
4
  import '../clients/base.js';
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CommunityPackageResource
3
- } from "../chunk-YHSDCE3I.js";
3
+ } from "../chunk-WQJUADC6.js";
4
4
  import "../chunk-TLBDBRPJ.js";
5
5
  export {
6
6
  CommunityPackageResource as default
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkMMN2UKTIcjs = require('../chunk-MMN2UKTI.cjs');
3
+ var _chunkJFTS6N3Ucjs = require('../chunk-JFTS6N3U.cjs');
4
4
  require('../chunk-FIKGC2EL.cjs');
5
5
 
6
6
 
7
- exports.default = _chunkMMN2UKTIcjs.CredentialResource;
7
+ exports.default = _chunkJFTS6N3Ucjs.CredentialResource;
8
8
  //# sourceMappingURL=credential.cjs.map
@@ -1,4 +1,4 @@
1
- export { a as default } from '../credential-CEH7XbGn.cjs';
1
+ export { a as default } from '../credential-DPt1le6v.cjs';
2
2
  import '../types.cjs';
3
3
  import './base.cjs';
4
4
  import '../pagination.cjs';
@@ -1,4 +1,4 @@
1
- export { a as default } from '../credential-BWcrGfqd.js';
1
+ export { a as default } from '../credential-Knm3Xhxp.js';
2
2
  import '../types.js';
3
3
  import './base.js';
4
4
  import '../pagination.js';
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CredentialResource
3
- } from "../chunk-XJP6FPN3.js";
3
+ } from "../chunk-WDO7B3R6.js";
4
4
  import "../chunk-TLBDBRPJ.js";
5
5
  export {
6
6
  CredentialResource as default
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkNBLW25MEcjs = require('../chunk-NBLW25ME.cjs');
3
+ var _chunkGUTI2M4Ucjs = require('../chunk-GUTI2M4U.cjs');
4
4
  require('../chunk-FIKGC2EL.cjs');
5
5
 
6
6
 
7
- exports.default = _chunkNBLW25MEcjs.DataTableResource;
7
+ exports.default = _chunkGUTI2M4Ucjs.DataTableResource;
8
8
  //# sourceMappingURL=data-table.cjs.map
@@ -1,4 +1,4 @@
1
- export { a as default } from '../data-table-CzR5kl9T.cjs';
1
+ export { a as default } from '../data-table-ablBPGNU.cjs';
2
2
  import '../types.cjs';
3
3
  import './base.cjs';
4
4
  import '../pagination.cjs';
@@ -1,4 +1,4 @@
1
- export { a as default } from '../data-table-CHGUClGF.js';
1
+ export { a as default } from '../data-table-Cg92UE2v.js';
2
2
  import '../types.js';
3
3
  import './base.js';
4
4
  import '../pagination.js';
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  DataTableResource
3
- } from "../chunk-T62VHXNY.js";
3
+ } from "../chunk-FSN23TT6.js";
4
4
  import "../chunk-TLBDBRPJ.js";
5
5
  export {
6
6
  DataTableResource as default
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunk6JJ6RA5Bcjs = require('../chunk-6JJ6RA5B.cjs');
3
+ var _chunk2T5KNPFXcjs = require('../chunk-2T5KNPFX.cjs');
4
4
  require('../chunk-FIKGC2EL.cjs');
5
5
 
6
6
 
7
- exports.default = _chunk6JJ6RA5Bcjs.FolderResource;
7
+ exports.default = _chunk2T5KNPFXcjs.FolderResource;
8
8
  //# sourceMappingURL=folder.cjs.map
@@ -1,4 +1,4 @@
1
- export { a as default } from '../folder-DvgIxSea.cjs';
1
+ export { a as default } from '../folder-DDe0xOyE.cjs';
2
2
  import '../types.cjs';
3
3
  import './base.cjs';
4
4
  import '../pagination.cjs';
@@ -1,4 +1,4 @@
1
- export { a as default } from '../folder-bjRPcy2j.js';
1
+ export { a as default } from '../folder-JrOxuQPO.js';
2
2
  import '../types.js';
3
3
  import './base.js';
4
4
  import '../pagination.js';
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  FolderResource
3
- } from "../chunk-YE2OS2KS.js";
3
+ } from "../chunk-UCSJX4UC.js";
4
4
  import "../chunk-TLBDBRPJ.js";
5
5
  export {
6
6
  FolderResource as default
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkW5P34RYOcjs = require('../chunk-W5P34RYO.cjs');
4
- require('../chunk-NBLW25ME.cjs');
3
+ var _chunkO7AV3KS4cjs = require('../chunk-O7AV3KS4.cjs');
4
+ require('../chunk-GUTI2M4U.cjs');
5
5
  require('../chunk-LC3TKRMX.cjs');
6
6
  require('../chunk-7B5DLJYY.cjs');
7
7
  require('../chunk-FIKGC2EL.cjs');
8
8
 
9
9
 
10
- exports.default = _chunkW5P34RYOcjs.ProjectResource;
10
+ exports.default = _chunkO7AV3KS4cjs.ProjectResource;
11
11
  //# sourceMappingURL=project.cjs.map
@@ -1,11 +1,11 @@
1
1
  import '../types.cjs';
2
2
  import '../pagination.cjs';
3
- import '../data-table-CzR5kl9T.cjs';
3
+ import '../data-table-ablBPGNU.cjs';
4
4
  import '../execution-C0c9utwa.cjs';
5
- import '../folder-DvgIxSea.cjs';
6
- export { a as ProjectDataTableResourceCollection, b as ProjectExecutionResourceCollection, c as ProjectFolderResourceCollection, e as ProjectVariableResourceCollection, f as ProjectWorkflowResourceCollection, d as default } from '../project-BS1fXSLW.cjs';
7
- import '../variable-CuCiwy0G.cjs';
8
- import '../workflow-B2nxUmWq.cjs';
5
+ import '../folder-DDe0xOyE.cjs';
6
+ export { a as ProjectDataTableResourceCollection, b as ProjectExecutionResourceCollection, c as ProjectFolderResourceCollection, e as ProjectVariableResourceCollection, f as ProjectWorkflowResourceCollection, d as default } from '../project-CfXFXbv5.cjs';
7
+ import '../variable-8kNQCTQx.cjs';
8
+ import '../workflow-BD375xvs.cjs';
9
9
  import './base.cjs';
10
10
  import '../clients/base.cjs';
11
11
  import '../http-client.cjs';