@kyuda/n8n-nodes-databricks 2.0.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 (92) hide show
  1. package/LICENSE.md +19 -0
  2. package/README.md +180 -0
  3. package/dist/credentials/Databricks.credentials.d.ts +10 -0
  4. package/dist/credentials/Databricks.credentials.js +88 -0
  5. package/dist/credentials/Databricks.credentials.js.map +1 -0
  6. package/dist/credentials/databricks.svg +19 -0
  7. package/dist/nodes/Databricks/Databricks.node.d.ts +18 -0
  8. package/dist/nodes/Databricks/Databricks.node.js +404 -0
  9. package/dist/nodes/Databricks/Databricks.node.js.map +1 -0
  10. package/dist/nodes/Databricks/databricks.dark.svg +19 -0
  11. package/dist/nodes/Databricks/databricks.svg +19 -0
  12. package/dist/nodes/Databricks/helpers.d.ts +27 -0
  13. package/dist/nodes/Databricks/helpers.js +169 -0
  14. package/dist/nodes/Databricks/helpers.js.map +1 -0
  15. package/dist/nodes/Databricks/resources/clusters/handler.d.ts +2 -0
  16. package/dist/nodes/Databricks/resources/clusters/handler.js +38 -0
  17. package/dist/nodes/Databricks/resources/clusters/handler.js.map +1 -0
  18. package/dist/nodes/Databricks/resources/clusters/operations.d.ts +2 -0
  19. package/dist/nodes/Databricks/resources/clusters/operations.js +24 -0
  20. package/dist/nodes/Databricks/resources/clusters/operations.js.map +1 -0
  21. package/dist/nodes/Databricks/resources/clusters/parameters.d.ts +2 -0
  22. package/dist/nodes/Databricks/resources/clusters/parameters.js +49 -0
  23. package/dist/nodes/Databricks/resources/clusters/parameters.js.map +1 -0
  24. package/dist/nodes/Databricks/resources/databricksSql/handler.d.ts +2 -0
  25. package/dist/nodes/Databricks/resources/databricksSql/handler.js +59 -0
  26. package/dist/nodes/Databricks/resources/databricksSql/handler.js.map +1 -0
  27. package/dist/nodes/Databricks/resources/databricksSql/operations.d.ts +2 -0
  28. package/dist/nodes/Databricks/resources/databricksSql/operations.js +24 -0
  29. package/dist/nodes/Databricks/resources/databricksSql/operations.js.map +1 -0
  30. package/dist/nodes/Databricks/resources/databricksSql/parameters.d.ts +2 -0
  31. package/dist/nodes/Databricks/resources/databricksSql/parameters.js +94 -0
  32. package/dist/nodes/Databricks/resources/databricksSql/parameters.js.map +1 -0
  33. package/dist/nodes/Databricks/resources/files/handler.d.ts +2 -0
  34. package/dist/nodes/Databricks/resources/files/handler.js +157 -0
  35. package/dist/nodes/Databricks/resources/files/handler.js.map +1 -0
  36. package/dist/nodes/Databricks/resources/files/operations.d.ts +2 -0
  37. package/dist/nodes/Databricks/resources/files/operations.js +71 -0
  38. package/dist/nodes/Databricks/resources/files/operations.js.map +1 -0
  39. package/dist/nodes/Databricks/resources/files/parameters.d.ts +2 -0
  40. package/dist/nodes/Databricks/resources/files/parameters.js +124 -0
  41. package/dist/nodes/Databricks/resources/files/parameters.js.map +1 -0
  42. package/dist/nodes/Databricks/resources/genie/handler.d.ts +2 -0
  43. package/dist/nodes/Databricks/resources/genie/handler.js +54 -0
  44. package/dist/nodes/Databricks/resources/genie/handler.js.map +1 -0
  45. package/dist/nodes/Databricks/resources/genie/operations.d.ts +2 -0
  46. package/dist/nodes/Databricks/resources/genie/operations.js +96 -0
  47. package/dist/nodes/Databricks/resources/genie/operations.js.map +1 -0
  48. package/dist/nodes/Databricks/resources/genie/parameters.d.ts +2 -0
  49. package/dist/nodes/Databricks/resources/genie/parameters.js +96 -0
  50. package/dist/nodes/Databricks/resources/genie/parameters.js.map +1 -0
  51. package/dist/nodes/Databricks/resources/index.d.ts +24 -0
  52. package/dist/nodes/Databricks/resources/index.js +50 -0
  53. package/dist/nodes/Databricks/resources/index.js.map +1 -0
  54. package/dist/nodes/Databricks/resources/jobs/handler.d.ts +2 -0
  55. package/dist/nodes/Databricks/resources/jobs/handler.js +90 -0
  56. package/dist/nodes/Databricks/resources/jobs/handler.js.map +1 -0
  57. package/dist/nodes/Databricks/resources/jobs/operations.d.ts +2 -0
  58. package/dist/nodes/Databricks/resources/jobs/operations.js +25 -0
  59. package/dist/nodes/Databricks/resources/jobs/operations.js.map +1 -0
  60. package/dist/nodes/Databricks/resources/jobs/parameters.d.ts +2 -0
  61. package/dist/nodes/Databricks/resources/jobs/parameters.js +195 -0
  62. package/dist/nodes/Databricks/resources/jobs/parameters.js.map +1 -0
  63. package/dist/nodes/Databricks/resources/modelServing/handler.d.ts +2 -0
  64. package/dist/nodes/Databricks/resources/modelServing/handler.js +75 -0
  65. package/dist/nodes/Databricks/resources/modelServing/handler.js.map +1 -0
  66. package/dist/nodes/Databricks/resources/modelServing/operations.d.ts +2 -0
  67. package/dist/nodes/Databricks/resources/modelServing/operations.js +24 -0
  68. package/dist/nodes/Databricks/resources/modelServing/operations.js.map +1 -0
  69. package/dist/nodes/Databricks/resources/modelServing/parameters.d.ts +2 -0
  70. package/dist/nodes/Databricks/resources/modelServing/parameters.js +76 -0
  71. package/dist/nodes/Databricks/resources/modelServing/parameters.js.map +1 -0
  72. package/dist/nodes/Databricks/resources/unityCatalog/handler.d.ts +2 -0
  73. package/dist/nodes/Databricks/resources/unityCatalog/handler.js +146 -0
  74. package/dist/nodes/Databricks/resources/unityCatalog/handler.js.map +1 -0
  75. package/dist/nodes/Databricks/resources/unityCatalog/operations.d.ts +2 -0
  76. package/dist/nodes/Databricks/resources/unityCatalog/operations.js +238 -0
  77. package/dist/nodes/Databricks/resources/unityCatalog/operations.js.map +1 -0
  78. package/dist/nodes/Databricks/resources/unityCatalog/parameters.d.ts +2 -0
  79. package/dist/nodes/Databricks/resources/unityCatalog/parameters.js +412 -0
  80. package/dist/nodes/Databricks/resources/unityCatalog/parameters.js.map +1 -0
  81. package/dist/nodes/Databricks/resources/vectorSearch/handler.d.ts +2 -0
  82. package/dist/nodes/Databricks/resources/vectorSearch/handler.js +50 -0
  83. package/dist/nodes/Databricks/resources/vectorSearch/handler.js.map +1 -0
  84. package/dist/nodes/Databricks/resources/vectorSearch/operations.d.ts +2 -0
  85. package/dist/nodes/Databricks/resources/vectorSearch/operations.js +48 -0
  86. package/dist/nodes/Databricks/resources/vectorSearch/operations.js.map +1 -0
  87. package/dist/nodes/Databricks/resources/vectorSearch/parameters.d.ts +2 -0
  88. package/dist/nodes/Databricks/resources/vectorSearch/parameters.js +224 -0
  89. package/dist/nodes/Databricks/resources/vectorSearch/parameters.js.map +1 -0
  90. package/dist/package.json +70 -0
  91. package/dist/tsconfig.tsbuildinfo +1 -0
  92. package/package.json +70 -0
package/LICENSE.md ADDED
@@ -0,0 +1,19 @@
1
+ Copyright 2022 n8n
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,180 @@
1
+ # @kyuda/n8n-nodes-databricks
2
+
3
+ Comprehensive Databricks integration for n8n. Provides nodes for SQL, Unity Catalog, Jobs, Clusters, Files, Genie AI, Vector Search, Model Serving, and LangChain AI Agent / Chat / Embedding / Vector Store nodes.
4
+
5
+ ## Features
6
+
7
+ - **Genie AI Assistant** -- Start conversations, send messages, and execute SQL queries through Databricks' AI assistant
8
+ - **Databricks SQL** -- Execute SQL queries with automatic chunked result retrieval
9
+ - **Unity Catalog** -- Manage catalogs, schemas, tables, volumes, and functions
10
+ - **Model Serving** -- Query deployed ML/LLM endpoints with auto-detected input format
11
+ - **Files** -- Upload, download, list, and manage files in Unity Catalog volumes (up to 5 GiB)
12
+ - **Vector Search** -- Semantic similarity search with reranking support
13
+ - **Jobs** -- Run, create, list, cancel, and monitor Databricks job runs
14
+ - **Clusters** -- List, create, start, stop, and delete Databricks compute clusters
15
+ - **LmChatDatabricks** -- LangChain Chat Model node for Databricks Foundation Model endpoints
16
+ - **EmbeddingsDatabricks** -- LangChain Embeddings node for Databricks embedding endpoints
17
+ - **VectorStoreDatabricks** -- LangChain Vector Store node backed by Databricks Vector Search
18
+ - **DatabricksAiAgent** -- Full AI Agent node with optional MLflow tracing
19
+
20
+ ## Prerequisites
21
+
22
+ - Node.js 18+
23
+ - pnpm
24
+ - A Databricks workspace with credentials (PAT or OAuth Service Principal)
25
+
26
+ ## Installation
27
+
28
+ ### For Development
29
+
30
+ ```bash
31
+ git clone https://github.com/kyudahq/n8n.git
32
+ cd n8n/@kyuda/n8n-nodes-databricks
33
+ pnpm install
34
+ pnpm build
35
+ ```
36
+
37
+ Link to your n8n installation:
38
+
39
+ ```bash
40
+ npm link
41
+ cd ~/.n8n/custom
42
+ npm link @kyuda/n8n-nodes-databricks
43
+ ```
44
+
45
+ ### From npm
46
+
47
+ ```bash
48
+ npm install @kyuda/n8n-nodes-databricks
49
+ ```
50
+
51
+ ## Credentials
52
+
53
+ Two authentication methods are supported:
54
+
55
+ ### Personal Access Token (default)
56
+
57
+ 1. **Host** -- Your Databricks workspace URL (e.g. `https://adb-1234567890123456.7.azuredatabricks.net`)
58
+ 2. **Token** -- A Databricks personal access token (generate at User Settings > Access Tokens)
59
+
60
+ ### OAuth M2M (Service Principal)
61
+
62
+ 1. **Host** -- Your Databricks workspace URL
63
+ 2. **Client ID** -- The application (client) ID of a Databricks service principal
64
+ 3. **Client Secret** -- The secret associated with the service principal
65
+
66
+ The OAuth flow uses `grant_type=client_credentials` against your workspace's `/oidc/v1/token` endpoint. Tokens are cached and refreshed automatically.
67
+
68
+ ## Resources and Operations
69
+
70
+ ### Databricks (main node)
71
+
72
+ | Resource | Operations |
73
+ |---|---|
74
+ | **Genie** | Start Conversation, Create Message, Get Message, Execute Message Query, Get Query Results, Get Space |
75
+ | **Databricks SQL** | Execute Query |
76
+ | **Unity Catalog** | Create/Get/Update/Delete Catalog, List Catalogs, Create/Get/Update/Delete Schema, List Schemas, Create/Get/Delete Volume, List Volumes, Get/List Tables, Create/Get/Delete Function, List Functions |
77
+ | **Model Serving** | Query Endpoint (auto-detects chat/completions/embeddings/dataframe formats) |
78
+ | **Files** | Upload File, Download File, Delete File, Get File Info, List Directory, Create Directory, Delete Directory |
79
+ | **Vector Search** | Query Index, Get Index, List Indexes |
80
+ | **Jobs** | Run Job, Get Run Status, Get Run Output, Create Job, List Jobs, Cancel Run, List Runs |
81
+ | **Clusters** | List Clusters, Get Cluster, Create Cluster, Start Cluster, Stop Cluster, Delete Cluster |
82
+
83
+ ### LangChain Nodes
84
+
85
+ | Node | Description |
86
+ |---|---|
87
+ | **LmChatDatabricks** | Chat model for Databricks Foundation Model APIs or external model endpoints |
88
+ | **EmbeddingsDatabricks** | Text embeddings via Databricks serving endpoints |
89
+ | **VectorStoreDatabricks** | Vector store backed by Databricks Vector Search indexes |
90
+ | **DatabricksAiAgent** | AI agent with tool calling, memory, structured output, streaming, and optional MLflow tracing |
91
+
92
+ ## Architecture
93
+
94
+ ```
95
+ @kyuda/n8n-nodes-databricks/
96
+ ├── credentials/
97
+ │ └── Databricks.credentials.ts # PAT + OAuth M2M
98
+ ├── nodes/
99
+ │ ├── Databricks/
100
+ │ │ ├── Databricks.node.ts # Main node (slim dispatcher)
101
+ │ │ ├── helpers.ts # Shared HTTP helper, cache, security utils
102
+ │ │ └── resources/
103
+ │ │ ├── index.ts # Barrel exports
104
+ │ │ ├── files/ # operations, parameters, handler
105
+ │ │ ├── genie/ # operations, parameters, handler
106
+ │ │ ├── databricksSql/ # operations, parameters, handler
107
+ │ │ ├── modelServing/ # operations, parameters, handler
108
+ │ │ ├── unityCatalog/ # operations, parameters, handler
109
+ │ │ ├── vectorSearch/ # operations, parameters, handler
110
+ │ │ ├── jobs/ # operations, parameters, handler
111
+ │ │ └── clusters/ # operations, parameters, handler
112
+ │ ├── agents/DatabricksAiAgent/ # AI Agent with MLflow
113
+ │ ├── llms/LmChatDatabricks/ # LangChain Chat Model
114
+ │ ├── embeddings/EmbeddingsDatabricks/# LangChain Embeddings
115
+ │ └── vector_store/VectorStoreDatabricks/ # LangChain Vector Store
116
+ └── utils/
117
+ ├── DatabricksVectorStoreLangChain.ts
118
+ ├── N8nTool.ts
119
+ ├── N8nBinaryLoader.ts
120
+ └── descriptions.ts
121
+ ```
122
+
123
+ ### Execution Flow
124
+
125
+ ```
126
+ User selects Resource → Operation → fills Parameters
127
+
128
+ execute() dispatcher (Databricks.node.ts)
129
+
130
+ handlers[resource](ctx, operation, itemIndex)
131
+
132
+ Per-resource handler file (e.g. resources/jobs/handler.ts)
133
+
134
+ databricksApiRequest() (shared helper with auth, host normalization)
135
+
136
+ Databricks REST API
137
+ ```
138
+
139
+ ### Security
140
+
141
+ - **Token masking** -- Bearer tokens and PAT values are scrubbed from all error messages and logs
142
+ - **URL encoding** -- All user-provided path segments are passed through `encodeURIComponent`
143
+ - **Path traversal protection** -- File operations reject paths containing `..`
144
+ - **Cache isolation** -- Cache keys include a hash of the credential token, preventing cross-user cache leaks
145
+
146
+ ## Databricks AI Agent
147
+
148
+ The **Databricks AI Agent** node provides a LangChain-based agent with:
149
+
150
+ - **Tool Calling** -- Supports any LangChain tool or MCP toolkit
151
+ - **Memory** -- Conversation history via BaseChatMemory
152
+ - **Structured Output** -- Optional output parser for validated JSON
153
+ - **Streaming** -- Real-time token streaming support
154
+ - **Fallback Models** -- Automatic failover to a secondary model
155
+ - **MLflow Tracing** -- Optional observability with automatic experiment management
156
+
157
+ When MLflow is enabled, traces appear under `/Shared/n8n-workflows-{workflow-id}` with spans for agent execution, LLM calls, and tool invocations.
158
+
159
+ ## Development
160
+
161
+ ```bash
162
+ pnpm build # Build the node
163
+ pnpm test # Run tests
164
+ pnpm lint # Lint
165
+ pnpm lintfix # Auto-fix lint issues
166
+ ```
167
+
168
+ ## Contributing
169
+
170
+ Contributions are welcome. Please submit a Pull Request at [github.com/kyudahq/n8n](https://github.com/kyudahq/n8n).
171
+
172
+ ## Resources
173
+
174
+ - [n8n Documentation](https://docs.n8n.io/)
175
+ - [Databricks API Documentation](https://docs.databricks.com/api/)
176
+ - [n8n Community](https://community.n8n.io/)
177
+
178
+ ## License
179
+
180
+ [MIT](LICENSE.md)
@@ -0,0 +1,10 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class Databricks implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ icon: "file:databricks.svg";
7
+ properties: INodeProperties[];
8
+ authenticate: IAuthenticateGeneric;
9
+ test: ICredentialTestRequest;
10
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Databricks = void 0;
4
+ class Databricks {
5
+ constructor() {
6
+ this.name = 'databricks';
7
+ this.displayName = 'Databricks';
8
+ this.documentationUrl = 'https://docs.databricks.com/dev-tools/api/latest/authentication.html';
9
+ this.icon = 'file:databricks.svg';
10
+ this.properties = [
11
+ {
12
+ displayName: 'Authentication Type',
13
+ name: 'authType',
14
+ type: 'options',
15
+ options: [
16
+ {
17
+ name: 'Personal Access Token',
18
+ value: 'pat',
19
+ description: 'Authenticate with a Databricks personal access token',
20
+ },
21
+ {
22
+ name: 'OAuth M2M (Service Principal)',
23
+ value: 'oauthM2M',
24
+ description: 'Authenticate with a service principal using OAuth client credentials',
25
+ },
26
+ ],
27
+ default: 'pat',
28
+ },
29
+ {
30
+ displayName: 'Host',
31
+ name: 'host',
32
+ type: 'string',
33
+ default: '',
34
+ placeholder: 'https://adb-xxxxx.xx.azure.databricks.com',
35
+ required: true,
36
+ description: 'Domain of your Databricks workspace',
37
+ },
38
+ {
39
+ displayName: 'Personal Access Token',
40
+ name: 'token',
41
+ type: 'string',
42
+ typeOptions: { password: true },
43
+ default: '',
44
+ placeholder: 'dapixxxxxxxxxxxxxxxxxxxxxx',
45
+ required: true,
46
+ description: 'Databricks personal access token',
47
+ displayOptions: { show: { authType: ['pat'] } },
48
+ },
49
+ {
50
+ displayName: 'Client ID',
51
+ name: 'clientId',
52
+ type: 'string',
53
+ default: '',
54
+ required: true,
55
+ placeholder: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
56
+ description: 'Application (client) ID of the Databricks service principal',
57
+ displayOptions: { show: { authType: ['oauthM2M'] } },
58
+ },
59
+ {
60
+ displayName: 'Client Secret',
61
+ name: 'clientSecret',
62
+ type: 'string',
63
+ typeOptions: { password: true },
64
+ default: '',
65
+ required: true,
66
+ description: 'Client secret of the Databricks service principal',
67
+ displayOptions: { show: { authType: ['oauthM2M'] } },
68
+ },
69
+ ];
70
+ this.authenticate = {
71
+ type: 'generic',
72
+ properties: {
73
+ headers: {
74
+ Authorization: '=Bearer {{$credentials.token}}',
75
+ },
76
+ },
77
+ };
78
+ this.test = {
79
+ request: {
80
+ baseURL: '={{$credentials.host}}',
81
+ url: '/api/2.0/serving-endpoints',
82
+ method: 'GET',
83
+ },
84
+ };
85
+ }
86
+ }
87
+ exports.Databricks = Databricks;
88
+ //# sourceMappingURL=Databricks.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Databricks.credentials.js","sourceRoot":"","sources":["../../credentials/Databricks.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,UAAU;IAAvB;QACI,SAAI,GAAG,YAAY,CAAC;QACpB,gBAAW,GAAG,YAAY,CAAC;QAC3B,qBAAgB,GAAG,sEAAsE,CAAC;QAC1F,SAAI,GAAG,qBAA8B,CAAC;QACtC,eAAU,GAAsB;YAC5B;gBACI,WAAW,EAAE,qBAAqB;gBAClC,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE;oBACL;wBACI,IAAI,EAAE,uBAAuB;wBAC7B,KAAK,EAAE,KAAK;wBACZ,WAAW,EAAE,sDAAsD;qBACtE;oBACD;wBACI,IAAI,EAAE,+BAA+B;wBACrC,KAAK,EAAE,UAAU;wBACjB,WAAW,EACP,sEAAsE;qBAC7E;iBACJ;gBACD,OAAO,EAAE,KAAK;aACjB;YACD;gBACI,WAAW,EAAE,MAAM;gBACnB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,2CAA2C;gBACxD,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,qCAAqC;aACrD;YAGD;gBACI,WAAW,EAAE,uBAAuB;gBACpC,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,4BAA4B;gBACzC,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,kCAAkC;gBAC/C,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE;aAClD;YAGD;gBACI,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,sCAAsC;gBACnD,WAAW,EACP,6DAA6D;gBACjE,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;aACvD;YACD;gBACI,WAAW,EAAE,eAAe;gBAC5B,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,mDAAmD;gBAChE,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;aACvD;SACJ,CAAC;QAEF,iBAAY,GAAyB;YACjC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE;gBACR,OAAO,EAAE;oBACL,aAAa,EAAE,gCAAgC;iBAClD;aACJ;SACJ,CAAC;QAEF,SAAI,GAA2B;YAC3B,OAAO,EAAE;gBACL,OAAO,EAAE,wBAAwB;gBACjC,GAAG,EAAE,4BAA4B;gBACjC,MAAM,EAAE,KAAK;aAChB;SACJ,CAAC;IACN,CAAC;CAAA;AAxFD,gCAwFC"}
@@ -0,0 +1,19 @@
1
+ <svg version="1.1" id="Layer_1" xmlns:x="ns_extend;" xmlns:i="ns_ai;" xmlns:graph="ns_graphs;" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 40.1 42" style="enable-background:new 0 0 40.1 42;" xml:space="preserve">
2
+ <style type="text/css">
3
+ .st0{fill:#FF3621;}
4
+ </style>
5
+ <metadata>
6
+ <sfw xmlns="ns_sfw;">
7
+ <slices>
8
+ </slices>
9
+ <sliceSourceBounds bottomLeftOrigin="true" height="42" width="40.1" x="-69.1" y="-10.5">
10
+ </sliceSourceBounds>
11
+ </sfw>
12
+ </metadata>
13
+ <g>
14
+ <path class="st0" d="M40.1,31.1v-7.4l-0.8-0.5L20.1,33.7l-18.2-10l0-4.3l18.2,9.9l20.1-10.9v-7.3l-0.8-0.5L20.1,21.2L2.6,11.6
15
+ L20.1,2l14.1,7.7l1.1-0.6V8.3L20.1,0L0,10.9V12L20.1,23l18.2-10v4.4l-18.2,10L0.8,16.8L0,17.3v7.4l20.1,10.9l18.2-9.9v4.3l-18.2,10
16
+ L0.8,29.5L0,30v1.1L20.1,42L40.1,31.1z">
17
+ </path>
18
+ </g>
19
+ </svg>
@@ -0,0 +1,18 @@
1
+ import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription, ILoadOptionsFunctions, INodeListSearchResult } from 'n8n-workflow';
2
+ export declare class Databricks implements INodeType {
3
+ description: INodeTypeDescription;
4
+ methods: {
5
+ listSearch: {
6
+ getWarehouses(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
7
+ getEndpoints(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
8
+ getCatalogs(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
9
+ getSchemas(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
10
+ getVolumes(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
11
+ getTables(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
12
+ getFunctions(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
13
+ getJobs(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
14
+ getClusters(this: ILoadOptionsFunctions, filter?: string): Promise<INodeListSearchResult>;
15
+ };
16
+ };
17
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
18
+ }