windmill-cli 1.589.3 → 1.590.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.
- package/esm/deps/jsr.io/@windmill-labs/shared-utils/{1.0.10 → 1.0.11}/lib.es.js +4 -4
- package/esm/deps.js +1 -1
- package/esm/gen/core/OpenAPI.js +1 -1
- package/esm/gen/services.gen.js +149 -27
- package/esm/src/commands/app/app_metadata.js +81 -47
- package/esm/src/commands/app/apps.js +2 -0
- package/esm/src/commands/app/bundle.js +6 -2
- package/esm/src/commands/app/dev.js +40 -14
- package/esm/src/commands/app/lint.js +159 -0
- package/esm/src/commands/app/raw_apps.js +169 -24
- package/esm/src/commands/init/init.js +8 -0
- package/esm/src/commands/resource-type/resource-type.js +29 -2
- package/esm/src/commands/script/script.js +11 -0
- package/esm/src/commands/sync/sync.js +49 -17
- package/esm/src/main.js +1 -1
- package/esm/src/utils/resource_types.js +32 -0
- package/esm/src/utils/utils.js +8 -0
- package/esm/windmill-utils-internal/src/path-utils/path-assigner.js +78 -0
- package/package.json +1 -1
- package/types/bootstrap/common.d.ts +12 -0
- package/types/bootstrap/common.d.ts.map +1 -1
- package/types/deps/jsr.io/@windmill-labs/shared-utils/{1.0.10 → 1.0.11}/lib.es.d.ts.map +1 -1
- package/types/deps.d.ts +1 -1
- package/types/gen/services.gen.d.ts +74 -16
- package/types/gen/services.gen.d.ts.map +1 -1
- package/types/gen/types.gen.d.ts +568 -62
- package/types/gen/types.gen.d.ts.map +1 -1
- package/types/src/commands/app/app_metadata.d.ts +1 -1
- package/types/src/commands/app/app_metadata.d.ts.map +1 -1
- package/types/src/commands/app/apps.d.ts.map +1 -1
- package/types/src/commands/app/bundle.d.ts.map +1 -1
- package/types/src/commands/app/dev.d.ts.map +1 -1
- package/types/src/commands/app/lint.d.ts +12 -0
- package/types/src/commands/app/lint.d.ts.map +1 -0
- package/types/src/commands/app/metadata.d.ts +2 -3
- package/types/src/commands/app/metadata.d.ts.map +1 -1
- package/types/src/commands/app/raw_apps.d.ts +26 -1
- package/types/src/commands/app/raw_apps.d.ts.map +1 -1
- package/types/src/commands/init/init.d.ts.map +1 -1
- package/types/src/commands/resource-type/resource-type.d.ts +3 -1
- package/types/src/commands/resource-type/resource-type.d.ts.map +1 -1
- package/types/src/commands/script/script.d.ts +5 -0
- package/types/src/commands/script/script.d.ts.map +1 -1
- package/types/src/commands/sync/sync.d.ts.map +1 -1
- package/types/src/main.d.ts +1 -1
- package/types/src/utils/resource_types.d.ts +3 -0
- package/types/src/utils/resource_types.d.ts.map +1 -0
- package/types/src/utils/utils.d.ts +2 -0
- package/types/src/utils/utils.d.ts.map +1 -1
- package/types/windmill-utils-internal/src/gen/types.gen.d.ts +568 -62
- package/types/windmill-utils-internal/src/gen/types.gen.d.ts.map +1 -1
- package/types/windmill-utils-internal/src/path-utils/path-assigner.d.ts +22 -0
- package/types/windmill-utils-internal/src/path-utils/path-assigner.d.ts.map +1 -1
- /package/types/deps/jsr.io/@windmill-labs/shared-utils/{1.0.10 → 1.0.11}/lib.es.d.ts +0 -0
package/types/gen/types.gen.d.ts
CHANGED
|
@@ -1,27 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Top-level flow definition containing metadata, configuration, and the flow structure
|
|
3
|
+
*/
|
|
1
4
|
export type OpenFlow = {
|
|
5
|
+
/**
|
|
6
|
+
* Short description of what this flow does
|
|
7
|
+
*/
|
|
2
8
|
summary: string;
|
|
9
|
+
/**
|
|
10
|
+
* Detailed documentation for this flow
|
|
11
|
+
*/
|
|
3
12
|
description?: string;
|
|
4
13
|
value: FlowValue;
|
|
14
|
+
/**
|
|
15
|
+
* JSON Schema for flow inputs. Use this to define input parameters, their types, defaults, and validation. For resource inputs, set type to 'object' and format to 'resource-<type>' (e.g., 'resource-stripe')
|
|
16
|
+
*/
|
|
5
17
|
schema?: {
|
|
6
18
|
[key: string]: unknown;
|
|
7
19
|
};
|
|
8
20
|
};
|
|
21
|
+
/**
|
|
22
|
+
* The flow structure containing modules and optional preprocessor/failure handlers
|
|
23
|
+
*/
|
|
9
24
|
export type FlowValue = {
|
|
25
|
+
/**
|
|
26
|
+
* Array of steps that execute in sequence. Each step can be a script, subflow, loop, or branch
|
|
27
|
+
*/
|
|
10
28
|
modules: Array<FlowModule>;
|
|
29
|
+
/**
|
|
30
|
+
* Special module that executes when the flow fails. Receives error object with message, name, stack, and step_id. Must have id 'failure'. Only supports script/rawscript types
|
|
31
|
+
*/
|
|
11
32
|
failure_module?: FlowModule;
|
|
33
|
+
/**
|
|
34
|
+
* Special module that runs before the first step on external triggers. Must have id 'preprocessor'. Only supports script/rawscript types. Cannot reference other step results
|
|
35
|
+
*/
|
|
12
36
|
preprocessor_module?: FlowModule;
|
|
37
|
+
/**
|
|
38
|
+
* If true, all steps run on the same worker for better performance
|
|
39
|
+
*/
|
|
13
40
|
same_worker?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Maximum number of concurrent executions of this flow
|
|
43
|
+
*/
|
|
14
44
|
concurrent_limit?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Expression to group concurrent executions (e.g., by user ID)
|
|
47
|
+
*/
|
|
15
48
|
concurrency_key?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Time window in seconds for concurrent_limit
|
|
51
|
+
*/
|
|
16
52
|
concurrency_time_window_s?: number;
|
|
53
|
+
/**
|
|
54
|
+
* Delay in seconds to debounce flow executions
|
|
55
|
+
*/
|
|
17
56
|
debounce_delay_s?: number;
|
|
57
|
+
/**
|
|
58
|
+
* Expression to group debounced executions
|
|
59
|
+
*/
|
|
18
60
|
debounce_key?: string;
|
|
61
|
+
/**
|
|
62
|
+
* JavaScript expression to conditionally skip the entire flow
|
|
63
|
+
*/
|
|
19
64
|
skip_expr?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Cache duration in seconds for flow results
|
|
67
|
+
*/
|
|
20
68
|
cache_ttl?: number;
|
|
69
|
+
cache_ignore_s3_path?: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Environment variables available to all steps
|
|
72
|
+
*/
|
|
21
73
|
flow_env?: {
|
|
22
74
|
[key: string]: (string);
|
|
23
75
|
};
|
|
76
|
+
/**
|
|
77
|
+
* Execution priority (higher numbers run first)
|
|
78
|
+
*/
|
|
24
79
|
priority?: number;
|
|
80
|
+
/**
|
|
81
|
+
* JavaScript expression to return early from the flow
|
|
82
|
+
*/
|
|
25
83
|
early_return?: string;
|
|
26
84
|
/**
|
|
27
85
|
* Whether this flow accepts chat-style input
|
|
@@ -32,166 +90,503 @@ export type FlowValue = {
|
|
|
32
90
|
*/
|
|
33
91
|
notes?: Array<FlowNote>;
|
|
34
92
|
};
|
|
93
|
+
/**
|
|
94
|
+
* Retry configuration for failed module executions
|
|
95
|
+
*/
|
|
35
96
|
export type Retry = {
|
|
97
|
+
/**
|
|
98
|
+
* Retry with constant delay between attempts
|
|
99
|
+
*/
|
|
36
100
|
constant?: {
|
|
101
|
+
/**
|
|
102
|
+
* Number of retry attempts
|
|
103
|
+
*/
|
|
37
104
|
attempts?: number;
|
|
105
|
+
/**
|
|
106
|
+
* Seconds to wait between retries
|
|
107
|
+
*/
|
|
38
108
|
seconds?: number;
|
|
39
109
|
};
|
|
110
|
+
/**
|
|
111
|
+
* Retry with exponential backoff (delay doubles each time)
|
|
112
|
+
*/
|
|
40
113
|
exponential?: {
|
|
114
|
+
/**
|
|
115
|
+
* Number of retry attempts
|
|
116
|
+
*/
|
|
41
117
|
attempts?: number;
|
|
118
|
+
/**
|
|
119
|
+
* Multiplier for exponential backoff
|
|
120
|
+
*/
|
|
42
121
|
multiplier?: number;
|
|
122
|
+
/**
|
|
123
|
+
* Initial delay in seconds
|
|
124
|
+
*/
|
|
43
125
|
seconds?: number;
|
|
126
|
+
/**
|
|
127
|
+
* Random jitter percentage (0-100) to avoid thundering herd
|
|
128
|
+
*/
|
|
44
129
|
random_factor?: number;
|
|
45
130
|
};
|
|
131
|
+
/**
|
|
132
|
+
* Conditional retry based on error or result
|
|
133
|
+
*/
|
|
46
134
|
retry_if?: {
|
|
135
|
+
/**
|
|
136
|
+
* JavaScript expression that returns true to retry. Has access to 'result' and 'error' variables
|
|
137
|
+
*/
|
|
47
138
|
expr: string;
|
|
48
139
|
};
|
|
49
140
|
};
|
|
141
|
+
/**
|
|
142
|
+
* Early termination condition for a module
|
|
143
|
+
*/
|
|
50
144
|
export type StopAfterIf = {
|
|
145
|
+
/**
|
|
146
|
+
* If true, following steps are skipped when this condition triggers
|
|
147
|
+
*/
|
|
51
148
|
skip_if_stopped?: boolean;
|
|
149
|
+
/**
|
|
150
|
+
* JavaScript expression evaluated after the module runs. Can use 'result' (step's result) or 'flow_input'. Return true to stop
|
|
151
|
+
*/
|
|
52
152
|
expr: string;
|
|
153
|
+
/**
|
|
154
|
+
* Custom error message shown when stopping
|
|
155
|
+
*/
|
|
53
156
|
error_message?: string;
|
|
54
157
|
};
|
|
158
|
+
/**
|
|
159
|
+
* A single step in a flow. Can be a script, subflow, loop, or branch
|
|
160
|
+
*/
|
|
55
161
|
export type FlowModule = {
|
|
162
|
+
/**
|
|
163
|
+
* Unique identifier for this step. Used to reference results via 'results.step_id'. Must be a valid identifier (alphanumeric, underscore, hyphen)
|
|
164
|
+
*/
|
|
56
165
|
id: string;
|
|
57
166
|
value: FlowModuleValue;
|
|
167
|
+
/**
|
|
168
|
+
* Early termination condition evaluated after this step completes
|
|
169
|
+
*/
|
|
58
170
|
stop_after_if?: StopAfterIf;
|
|
171
|
+
/**
|
|
172
|
+
* For loops only - early termination condition evaluated after all iterations complete
|
|
173
|
+
*/
|
|
59
174
|
stop_after_all_iters_if?: StopAfterIf;
|
|
175
|
+
/**
|
|
176
|
+
* Conditionally skip this step based on previous results or flow inputs
|
|
177
|
+
*/
|
|
60
178
|
skip_if?: {
|
|
179
|
+
/**
|
|
180
|
+
* JavaScript expression that returns true to skip. Can use 'flow_input' or 'results.<step_id>'
|
|
181
|
+
*/
|
|
61
182
|
expr: string;
|
|
62
183
|
};
|
|
184
|
+
/**
|
|
185
|
+
* Delay before executing this step (in seconds or as expression)
|
|
186
|
+
*/
|
|
63
187
|
sleep?: InputTransform;
|
|
188
|
+
/**
|
|
189
|
+
* Cache duration in seconds for this step's results
|
|
190
|
+
*/
|
|
64
191
|
cache_ttl?: number;
|
|
192
|
+
cache_ignore_s3_path?: boolean;
|
|
193
|
+
/**
|
|
194
|
+
* Maximum execution time in seconds (static value or expression)
|
|
195
|
+
*/
|
|
65
196
|
timeout?: InputTransform;
|
|
197
|
+
/**
|
|
198
|
+
* If true, this step's result is deleted after use to save memory
|
|
199
|
+
*/
|
|
66
200
|
delete_after_use?: boolean;
|
|
201
|
+
/**
|
|
202
|
+
* Short description of what this step does
|
|
203
|
+
*/
|
|
67
204
|
summary?: string;
|
|
205
|
+
/**
|
|
206
|
+
* Mock configuration for testing without executing the actual step
|
|
207
|
+
*/
|
|
68
208
|
mock?: {
|
|
209
|
+
/**
|
|
210
|
+
* If true, return mock value instead of executing
|
|
211
|
+
*/
|
|
69
212
|
enabled?: boolean;
|
|
213
|
+
/**
|
|
214
|
+
* Value to return when mocked
|
|
215
|
+
*/
|
|
70
216
|
return_value?: unknown;
|
|
71
217
|
};
|
|
218
|
+
/**
|
|
219
|
+
* Configuration for approval/resume steps that wait for user input
|
|
220
|
+
*/
|
|
72
221
|
suspend?: {
|
|
222
|
+
/**
|
|
223
|
+
* Number of approvals required before continuing
|
|
224
|
+
*/
|
|
73
225
|
required_events?: number;
|
|
226
|
+
/**
|
|
227
|
+
* Timeout in seconds before auto-continuing or canceling
|
|
228
|
+
*/
|
|
74
229
|
timeout?: number;
|
|
230
|
+
/**
|
|
231
|
+
* Form schema for collecting input when resuming
|
|
232
|
+
*/
|
|
75
233
|
resume_form?: {
|
|
234
|
+
/**
|
|
235
|
+
* JSON Schema for the resume form
|
|
236
|
+
*/
|
|
76
237
|
schema?: {
|
|
77
238
|
[key: string]: unknown;
|
|
78
239
|
};
|
|
79
240
|
};
|
|
241
|
+
/**
|
|
242
|
+
* If true, only authenticated users can approve
|
|
243
|
+
*/
|
|
80
244
|
user_auth_required?: boolean;
|
|
245
|
+
/**
|
|
246
|
+
* Expression or list of groups that can approve
|
|
247
|
+
*/
|
|
81
248
|
user_groups_required?: InputTransform;
|
|
249
|
+
/**
|
|
250
|
+
* If true, the user who started the flow cannot approve
|
|
251
|
+
*/
|
|
82
252
|
self_approval_disabled?: boolean;
|
|
253
|
+
/**
|
|
254
|
+
* If true, hide the cancel button on the approval form
|
|
255
|
+
*/
|
|
83
256
|
hide_cancel?: boolean;
|
|
257
|
+
/**
|
|
258
|
+
* If true, continue flow on timeout instead of canceling
|
|
259
|
+
*/
|
|
84
260
|
continue_on_disapprove_timeout?: boolean;
|
|
85
261
|
};
|
|
262
|
+
/**
|
|
263
|
+
* Execution priority for this step (higher numbers run first)
|
|
264
|
+
*/
|
|
86
265
|
priority?: number;
|
|
266
|
+
/**
|
|
267
|
+
* If true, flow continues even if this step fails
|
|
268
|
+
*/
|
|
87
269
|
continue_on_error?: boolean;
|
|
270
|
+
/**
|
|
271
|
+
* Retry configuration if this step fails
|
|
272
|
+
*/
|
|
88
273
|
retry?: Retry;
|
|
89
274
|
};
|
|
275
|
+
/**
|
|
276
|
+
* Maps input parameters for a step. Can be a static value or a JavaScript expression that references previous results or flow inputs
|
|
277
|
+
*/
|
|
90
278
|
export type InputTransform = StaticTransform | JavascriptTransform;
|
|
279
|
+
/**
|
|
280
|
+
* Static value passed directly to the step. Use for hardcoded values or resource references like '$res:path/to/resource'
|
|
281
|
+
*/
|
|
91
282
|
export type StaticTransform = {
|
|
283
|
+
/**
|
|
284
|
+
* The static value. For resources, use format '$res:path/to/resource'
|
|
285
|
+
*/
|
|
92
286
|
value?: unknown;
|
|
93
287
|
type: 'static';
|
|
94
288
|
};
|
|
289
|
+
/**
|
|
290
|
+
* JavaScript expression evaluated at runtime. Can reference previous step results via 'results.step_id' or flow inputs via 'flow_input.property'. Inside loops, use 'flow_input.iter.value' for the current iteration value
|
|
291
|
+
*/
|
|
95
292
|
export type JavascriptTransform = {
|
|
293
|
+
/**
|
|
294
|
+
* JavaScript expression returning the value. Available variables - results (object with all previous step results), flow_input (flow inputs), flow_input.iter (in loops)
|
|
295
|
+
*/
|
|
96
296
|
expr: string;
|
|
97
297
|
type: 'javascript';
|
|
98
298
|
};
|
|
299
|
+
/**
|
|
300
|
+
* The actual implementation of a flow step. Can be a script (inline or referenced), subflow, loop, branch, or special module type
|
|
301
|
+
*/
|
|
99
302
|
export type FlowModuleValue = RawScript | PathScript | PathFlow | ForloopFlow | WhileloopFlow | BranchOne | BranchAll | Identity | AiAgent;
|
|
303
|
+
/**
|
|
304
|
+
* Inline script with code defined directly in the flow. Use 'bun' as default language if unspecified. The script receives arguments from input_transforms
|
|
305
|
+
*/
|
|
100
306
|
export type RawScript = {
|
|
307
|
+
/**
|
|
308
|
+
* Map of parameter names to their values (static or JavaScript expressions). These become the script's input arguments
|
|
309
|
+
*/
|
|
101
310
|
input_transforms: {
|
|
102
311
|
[key: string]: InputTransform;
|
|
103
312
|
};
|
|
313
|
+
/**
|
|
314
|
+
* The script source code. Should export a 'main' function
|
|
315
|
+
*/
|
|
104
316
|
content: string;
|
|
317
|
+
/**
|
|
318
|
+
* Programming language for this script
|
|
319
|
+
*/
|
|
105
320
|
language: 'deno' | 'bun' | 'python3' | 'go' | 'bash' | 'powershell' | 'postgresql' | 'mysql' | 'bigquery' | 'snowflake' | 'mssql' | 'oracledb' | 'graphql' | 'nativets' | 'php';
|
|
321
|
+
/**
|
|
322
|
+
* Optional path for saving this script
|
|
323
|
+
*/
|
|
106
324
|
path?: string;
|
|
325
|
+
/**
|
|
326
|
+
* Lock file content for dependencies
|
|
327
|
+
*/
|
|
107
328
|
lock?: string;
|
|
108
329
|
type: 'rawscript';
|
|
330
|
+
/**
|
|
331
|
+
* Worker group tag for execution routing
|
|
332
|
+
*/
|
|
109
333
|
tag?: string;
|
|
334
|
+
/**
|
|
335
|
+
* Maximum concurrent executions of this script
|
|
336
|
+
*/
|
|
110
337
|
concurrent_limit?: number;
|
|
338
|
+
/**
|
|
339
|
+
* Time window for concurrent_limit
|
|
340
|
+
*/
|
|
111
341
|
concurrency_time_window_s?: number;
|
|
342
|
+
/**
|
|
343
|
+
* Custom key for grouping concurrent executions
|
|
344
|
+
*/
|
|
112
345
|
custom_concurrency_key?: string;
|
|
346
|
+
/**
|
|
347
|
+
* If true, this script is a trigger that can start the flow
|
|
348
|
+
*/
|
|
113
349
|
is_trigger?: boolean;
|
|
350
|
+
/**
|
|
351
|
+
* External resources this script accesses (S3 objects, resources, etc.)
|
|
352
|
+
*/
|
|
114
353
|
assets?: Array<{
|
|
354
|
+
/**
|
|
355
|
+
* Path to the asset
|
|
356
|
+
*/
|
|
115
357
|
path: string;
|
|
116
|
-
|
|
358
|
+
/**
|
|
359
|
+
* Type of asset
|
|
360
|
+
*/
|
|
361
|
+
kind: 's3object' | 'resource' | 'ducklake' | 'datatable';
|
|
362
|
+
/**
|
|
363
|
+
* Access level for this asset
|
|
364
|
+
*/
|
|
117
365
|
access_type?: 'r' | 'w' | 'rw';
|
|
366
|
+
/**
|
|
367
|
+
* Alternative access level
|
|
368
|
+
*/
|
|
118
369
|
alt_access_type?: 'r' | 'w' | 'rw';
|
|
119
370
|
}>;
|
|
120
371
|
};
|
|
372
|
+
/**
|
|
373
|
+
* Programming language for this script
|
|
374
|
+
*/
|
|
121
375
|
export type language = 'deno' | 'bun' | 'python3' | 'go' | 'bash' | 'powershell' | 'postgresql' | 'mysql' | 'bigquery' | 'snowflake' | 'mssql' | 'oracledb' | 'graphql' | 'nativets' | 'php';
|
|
376
|
+
/**
|
|
377
|
+
* Reference to an existing script by path. Use this when calling a previously saved script instead of writing inline code
|
|
378
|
+
*/
|
|
122
379
|
export type PathScript = {
|
|
380
|
+
/**
|
|
381
|
+
* Map of parameter names to their values (static or JavaScript expressions). These become the script's input arguments
|
|
382
|
+
*/
|
|
123
383
|
input_transforms: {
|
|
124
384
|
[key: string]: InputTransform;
|
|
125
385
|
};
|
|
386
|
+
/**
|
|
387
|
+
* Path to the script in the workspace (e.g., 'f/scripts/send_email')
|
|
388
|
+
*/
|
|
126
389
|
path: string;
|
|
390
|
+
/**
|
|
391
|
+
* Optional specific version hash of the script to use
|
|
392
|
+
*/
|
|
127
393
|
hash?: string;
|
|
128
394
|
type: 'script';
|
|
395
|
+
/**
|
|
396
|
+
* Override the script's default worker group tag
|
|
397
|
+
*/
|
|
129
398
|
tag_override?: string;
|
|
399
|
+
/**
|
|
400
|
+
* If true, this script is a trigger that can start the flow
|
|
401
|
+
*/
|
|
130
402
|
is_trigger?: boolean;
|
|
131
403
|
};
|
|
404
|
+
/**
|
|
405
|
+
* Reference to an existing flow by path. Use this to call another flow as a subflow
|
|
406
|
+
*/
|
|
132
407
|
export type PathFlow = {
|
|
408
|
+
/**
|
|
409
|
+
* Map of parameter names to their values (static or JavaScript expressions). These become the subflow's input arguments
|
|
410
|
+
*/
|
|
133
411
|
input_transforms: {
|
|
134
412
|
[key: string]: InputTransform;
|
|
135
413
|
};
|
|
414
|
+
/**
|
|
415
|
+
* Path to the flow in the workspace (e.g., 'f/flows/process_user')
|
|
416
|
+
*/
|
|
136
417
|
path: string;
|
|
137
418
|
type: 'flow';
|
|
138
419
|
};
|
|
420
|
+
/**
|
|
421
|
+
* Executes nested modules in a loop over an iterator. Inside the loop, use 'flow_input.iter.value' to access the current iteration value, and 'flow_input.iter.index' for the index. Supports parallel execution for better performance on I/O-bound operations
|
|
422
|
+
*/
|
|
139
423
|
export type ForloopFlow = {
|
|
424
|
+
/**
|
|
425
|
+
* Steps to execute for each iteration. These can reference the iteration value via 'flow_input.iter.value'
|
|
426
|
+
*/
|
|
140
427
|
modules: Array<FlowModule>;
|
|
428
|
+
/**
|
|
429
|
+
* JavaScript expression that returns an array to iterate over. Can reference 'results.step_id' or 'flow_input'
|
|
430
|
+
*/
|
|
141
431
|
iterator: InputTransform;
|
|
432
|
+
/**
|
|
433
|
+
* If true, iteration failures don't stop the loop. Failed iterations return null
|
|
434
|
+
*/
|
|
142
435
|
skip_failures: boolean;
|
|
143
436
|
type: 'forloopflow';
|
|
437
|
+
/**
|
|
438
|
+
* If true, iterations run concurrently (faster for I/O-bound operations). Use with parallelism to control concurrency
|
|
439
|
+
*/
|
|
144
440
|
parallel?: boolean;
|
|
441
|
+
/**
|
|
442
|
+
* Maximum number of concurrent iterations when parallel=true. Limits resource usage. Can be static number or expression
|
|
443
|
+
*/
|
|
145
444
|
parallelism?: InputTransform;
|
|
146
445
|
squash?: boolean;
|
|
147
446
|
};
|
|
447
|
+
/**
|
|
448
|
+
* Executes nested modules repeatedly while a condition is true. The loop checks the condition after each iteration. Use stop_after_if on modules to control loop termination
|
|
449
|
+
*/
|
|
148
450
|
export type WhileloopFlow = {
|
|
451
|
+
/**
|
|
452
|
+
* Steps to execute in each iteration. Use stop_after_if to control when the loop ends
|
|
453
|
+
*/
|
|
149
454
|
modules: Array<FlowModule>;
|
|
455
|
+
/**
|
|
456
|
+
* If true, iteration failures don't stop the loop. Failed iterations return null
|
|
457
|
+
*/
|
|
150
458
|
skip_failures: boolean;
|
|
151
459
|
type: 'whileloopflow';
|
|
460
|
+
/**
|
|
461
|
+
* If true, iterations run concurrently (use with caution in while loops)
|
|
462
|
+
*/
|
|
152
463
|
parallel?: boolean;
|
|
464
|
+
/**
|
|
465
|
+
* Maximum number of concurrent iterations when parallel=true
|
|
466
|
+
*/
|
|
153
467
|
parallelism?: InputTransform;
|
|
154
468
|
squash?: boolean;
|
|
155
469
|
};
|
|
470
|
+
/**
|
|
471
|
+
* Conditional branching where only the first matching branch executes. Branches are evaluated in order, and the first one with a true expression runs. If no branches match, the default branch executes
|
|
472
|
+
*/
|
|
156
473
|
export type BranchOne = {
|
|
474
|
+
/**
|
|
475
|
+
* Array of branches to evaluate in order. The first branch with expr evaluating to true executes
|
|
476
|
+
*/
|
|
157
477
|
branches: Array<{
|
|
478
|
+
/**
|
|
479
|
+
* Short description of this branch condition
|
|
480
|
+
*/
|
|
158
481
|
summary?: string;
|
|
482
|
+
/**
|
|
483
|
+
* JavaScript expression that returns boolean. Can use 'results.step_id' or 'flow_input'. First true expr wins
|
|
484
|
+
*/
|
|
159
485
|
expr: string;
|
|
486
|
+
/**
|
|
487
|
+
* Steps to execute if this branch's expr is true
|
|
488
|
+
*/
|
|
160
489
|
modules: Array<FlowModule>;
|
|
161
490
|
}>;
|
|
491
|
+
/**
|
|
492
|
+
* Steps to execute if no branch expressions match
|
|
493
|
+
*/
|
|
162
494
|
default: Array<FlowModule>;
|
|
163
495
|
type: 'branchone';
|
|
164
496
|
};
|
|
497
|
+
/**
|
|
498
|
+
* Parallel branching where all branches execute simultaneously. Unlike BranchOne, all branches run regardless of conditions. Useful for executing independent tasks concurrently
|
|
499
|
+
*/
|
|
165
500
|
export type BranchAll = {
|
|
501
|
+
/**
|
|
502
|
+
* Array of branches that all execute (either in parallel or sequentially)
|
|
503
|
+
*/
|
|
166
504
|
branches: Array<{
|
|
505
|
+
/**
|
|
506
|
+
* Short description of this branch's purpose
|
|
507
|
+
*/
|
|
167
508
|
summary?: string;
|
|
509
|
+
/**
|
|
510
|
+
* If true, failure in this branch doesn't fail the entire flow
|
|
511
|
+
*/
|
|
168
512
|
skip_failure?: boolean;
|
|
513
|
+
/**
|
|
514
|
+
* Steps to execute in this branch
|
|
515
|
+
*/
|
|
169
516
|
modules: Array<FlowModule>;
|
|
170
517
|
}>;
|
|
171
518
|
type: 'branchall';
|
|
519
|
+
/**
|
|
520
|
+
* If true, all branches execute concurrently. If false, they execute sequentially
|
|
521
|
+
*/
|
|
172
522
|
parallel?: boolean;
|
|
173
523
|
};
|
|
524
|
+
/**
|
|
525
|
+
* AI agent step that can use tools to accomplish tasks. The agent receives inputs and can call any of its configured tools to complete the task
|
|
526
|
+
*/
|
|
174
527
|
export type AiAgent = {
|
|
528
|
+
/**
|
|
529
|
+
* Input parameters for the AI agent mapped to their values
|
|
530
|
+
*/
|
|
175
531
|
input_transforms: {
|
|
176
|
-
|
|
532
|
+
provider: InputTransform;
|
|
533
|
+
output_type: InputTransform;
|
|
534
|
+
user_message: InputTransform;
|
|
535
|
+
system_prompt?: InputTransform;
|
|
536
|
+
streaming?: InputTransform;
|
|
537
|
+
messages_context_length?: InputTransform;
|
|
538
|
+
output_schema?: InputTransform;
|
|
539
|
+
user_images?: InputTransform;
|
|
540
|
+
max_completion_tokens?: InputTransform;
|
|
541
|
+
temperature?: InputTransform;
|
|
177
542
|
};
|
|
543
|
+
/**
|
|
544
|
+
* Array of tools the agent can use. The agent decides which tools to call based on the task
|
|
545
|
+
*/
|
|
178
546
|
tools: Array<{
|
|
547
|
+
/**
|
|
548
|
+
* Unique identifier for this tool. Cannot contain spaces - use underscores instead (e.g., 'get_user_data' not 'get user data')
|
|
549
|
+
*/
|
|
179
550
|
id: string;
|
|
551
|
+
/**
|
|
552
|
+
* Short description of what this tool does (shown to the AI)
|
|
553
|
+
*/
|
|
180
554
|
summary?: string;
|
|
555
|
+
/**
|
|
556
|
+
* The implementation of a tool. Can be a flow module (script/flow) or an MCP tool reference
|
|
557
|
+
*/
|
|
181
558
|
value: (({
|
|
182
559
|
tool_type: 'flowmodule';
|
|
183
560
|
} & FlowModuleValue) | {
|
|
184
561
|
tool_type: 'mcp';
|
|
562
|
+
/**
|
|
563
|
+
* Path to the MCP resource/server configuration
|
|
564
|
+
*/
|
|
185
565
|
resource_path: string;
|
|
566
|
+
/**
|
|
567
|
+
* Whitelist of specific tools to include from this MCP server
|
|
568
|
+
*/
|
|
186
569
|
include_tools?: Array<(string)>;
|
|
570
|
+
/**
|
|
571
|
+
* Blacklist of tools to exclude from this MCP server
|
|
572
|
+
*/
|
|
187
573
|
exclude_tools?: Array<(string)>;
|
|
188
574
|
});
|
|
189
575
|
}>;
|
|
190
576
|
type: 'aiagent';
|
|
577
|
+
/**
|
|
578
|
+
* If true, the agent can execute multiple tool calls in parallel
|
|
579
|
+
*/
|
|
191
580
|
parallel?: boolean;
|
|
192
581
|
};
|
|
582
|
+
/**
|
|
583
|
+
* Pass-through module that returns its input unchanged. Useful for flow structure or as a placeholder
|
|
584
|
+
*/
|
|
193
585
|
export type Identity = {
|
|
194
586
|
type: 'identity';
|
|
587
|
+
/**
|
|
588
|
+
* If true, marks this as a flow identity (special handling)
|
|
589
|
+
*/
|
|
195
590
|
flow?: boolean;
|
|
196
591
|
};
|
|
197
592
|
export type FlowStatus = {
|
|
@@ -546,6 +941,7 @@ export type NewScript = {
|
|
|
546
941
|
concurrent_limit?: number;
|
|
547
942
|
concurrency_time_window_s?: number;
|
|
548
943
|
cache_ttl?: number;
|
|
944
|
+
cache_ignore_s3_path?: boolean;
|
|
549
945
|
dedicated_worker?: boolean;
|
|
550
946
|
ws_error_handler_muted?: boolean;
|
|
551
947
|
priority?: number;
|
|
@@ -620,7 +1016,7 @@ export type QueuedJob = {
|
|
|
620
1016
|
canceled_by?: string;
|
|
621
1017
|
canceled_reason?: string;
|
|
622
1018
|
last_ping?: string;
|
|
623
|
-
job_kind: 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent';
|
|
1019
|
+
job_kind: 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent' | 'unassigned_script' | 'unassigned_flow' | 'unassigned_singlestepflow';
|
|
624
1020
|
schedule_path?: string;
|
|
625
1021
|
/**
|
|
626
1022
|
* The user (u/userfoo) or group (g/groupfoo) whom
|
|
@@ -644,7 +1040,7 @@ export type QueuedJob = {
|
|
|
644
1040
|
preprocessed?: boolean;
|
|
645
1041
|
worker?: string;
|
|
646
1042
|
};
|
|
647
|
-
export type job_kind = 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent';
|
|
1043
|
+
export type job_kind = 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent' | 'unassigned_script' | 'unassigned_flow' | 'unassigned_singlestepflow';
|
|
648
1044
|
export type CompletedJob = {
|
|
649
1045
|
workspace_id?: string;
|
|
650
1046
|
id: string;
|
|
@@ -665,7 +1061,7 @@ export type CompletedJob = {
|
|
|
665
1061
|
canceled: boolean;
|
|
666
1062
|
canceled_by?: string;
|
|
667
1063
|
canceled_reason?: string;
|
|
668
|
-
job_kind: 'script' | 'preview' | 'dependencies' | 'flow' | 'flowdependencies' | 'appdependencies' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent';
|
|
1064
|
+
job_kind: 'script' | 'preview' | 'dependencies' | 'flow' | 'flowdependencies' | 'appdependencies' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent' | 'unassigned_script' | 'unassigned_flow' | 'unassigned_singlestepflow';
|
|
669
1065
|
schedule_path?: string;
|
|
670
1066
|
/**
|
|
671
1067
|
* The user (u/userfoo) or group (g/groupfoo) whom
|
|
@@ -723,7 +1119,7 @@ export type ExportableCompletedJob = {
|
|
|
723
1119
|
raw_lock?: string;
|
|
724
1120
|
canceled_by?: string;
|
|
725
1121
|
canceled_reason?: string;
|
|
726
|
-
job_kind: 'script' | 'preview' | 'dependencies' | 'flow' | 'flowdependencies' | 'appdependencies' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript';
|
|
1122
|
+
job_kind: 'script' | 'preview' | 'dependencies' | 'flow' | 'flowdependencies' | 'appdependencies' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent' | 'unassigned_script' | 'unassigned_flow' | 'unassigned_singlestepflow';
|
|
727
1123
|
/**
|
|
728
1124
|
* Trigger path for the job (replaces schedule_path)
|
|
729
1125
|
*/
|
|
@@ -768,7 +1164,6 @@ export type ExportableCompletedJob = {
|
|
|
768
1164
|
*/
|
|
769
1165
|
status?: string;
|
|
770
1166
|
};
|
|
771
|
-
export type job_kind2 = 'script' | 'preview' | 'dependencies' | 'flow' | 'flowdependencies' | 'appdependencies' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript';
|
|
772
1167
|
export type trigger_kind = 'webhook' | 'http' | 'websocket' | 'kafka' | 'email' | 'nats' | 'schedule' | 'app' | 'ui' | 'postgres' | 'sqs' | 'gcp';
|
|
773
1168
|
/**
|
|
774
1169
|
* Queued job with full data for export/import operations
|
|
@@ -796,7 +1191,7 @@ export type ExportableQueuedJob = {
|
|
|
796
1191
|
raw_lock?: string;
|
|
797
1192
|
canceled_by?: string;
|
|
798
1193
|
canceled_reason?: string;
|
|
799
|
-
job_kind: 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript';
|
|
1194
|
+
job_kind: 'script' | 'preview' | 'dependencies' | 'flowdependencies' | 'appdependencies' | 'flow' | 'flowpreview' | 'script_hub' | 'identity' | 'deploymentcallback' | 'singlestepflow' | 'flowscript' | 'flownode' | 'appscript' | 'aiagent' | 'unassigned_script' | 'unassigned_flow' | 'unassigned_singlestepflow';
|
|
800
1195
|
/**
|
|
801
1196
|
* Trigger path for the job (replaces schedule_path)
|
|
802
1197
|
*/
|
|
@@ -1055,6 +1450,14 @@ export type Preview = {
|
|
|
1055
1450
|
lock?: string;
|
|
1056
1451
|
};
|
|
1057
1452
|
export type kind2 = 'code' | 'identity' | 'http';
|
|
1453
|
+
export type PreviewInline = {
|
|
1454
|
+
/**
|
|
1455
|
+
* The code to run
|
|
1456
|
+
*/
|
|
1457
|
+
content: string;
|
|
1458
|
+
args: ScriptArgs;
|
|
1459
|
+
language: ScriptLang;
|
|
1460
|
+
};
|
|
1058
1461
|
export type WorkflowTask = {
|
|
1059
1462
|
args: ScriptArgs;
|
|
1060
1463
|
};
|
|
@@ -1374,6 +1777,14 @@ export type EditSchedule = {
|
|
|
1374
1777
|
*/
|
|
1375
1778
|
dynamic_skip?: string;
|
|
1376
1779
|
};
|
|
1780
|
+
/**
|
|
1781
|
+
* job trigger kind (schedule, http, websocket...)
|
|
1782
|
+
*/
|
|
1783
|
+
export type JobTriggerKind = 'webhook' | 'default_email' | 'email' | 'schedule' | 'http' | 'websocket' | 'postgres' | 'kafka' | 'nats' | 'mqtt' | 'sqs' | 'gcp';
|
|
1784
|
+
/**
|
|
1785
|
+
* job trigger mode
|
|
1786
|
+
*/
|
|
1787
|
+
export type TriggerMode = 'enabled' | 'disabled' | 'suspended';
|
|
1377
1788
|
export type TriggerExtraProperty = {
|
|
1378
1789
|
path: string;
|
|
1379
1790
|
script_path: string;
|
|
@@ -1385,7 +1796,7 @@ export type TriggerExtraProperty = {
|
|
|
1385
1796
|
edited_by: string;
|
|
1386
1797
|
edited_at: string;
|
|
1387
1798
|
is_flow: boolean;
|
|
1388
|
-
|
|
1799
|
+
mode: TriggerMode;
|
|
1389
1800
|
};
|
|
1390
1801
|
export type AuthenticationMethod = 'none' | 'windmill' | 'api_key' | 'basic_http' | 'custom_script' | 'signature';
|
|
1391
1802
|
export type RunnableKind = 'script' | 'flow';
|
|
@@ -1471,7 +1882,7 @@ export type NewHttpTrigger = {
|
|
|
1471
1882
|
authentication_method: AuthenticationMethod;
|
|
1472
1883
|
is_static_website: boolean;
|
|
1473
1884
|
wrap_body?: boolean;
|
|
1474
|
-
|
|
1885
|
+
mode?: TriggerMode;
|
|
1475
1886
|
raw_string?: boolean;
|
|
1476
1887
|
error_handler_path?: string;
|
|
1477
1888
|
error_handler_args?: ScriptArgs;
|
|
@@ -1544,7 +1955,7 @@ export type NewWebsocketTrigger = {
|
|
|
1544
1955
|
script_path: string;
|
|
1545
1956
|
is_flow: boolean;
|
|
1546
1957
|
url: string;
|
|
1547
|
-
|
|
1958
|
+
mode?: TriggerMode;
|
|
1548
1959
|
filters: Array<{
|
|
1549
1960
|
key: string;
|
|
1550
1961
|
value: unknown;
|
|
@@ -1621,7 +2032,7 @@ export type NewMqttTrigger = {
|
|
|
1621
2032
|
path: string;
|
|
1622
2033
|
script_path: string;
|
|
1623
2034
|
is_flow: boolean;
|
|
1624
|
-
|
|
2035
|
+
mode?: TriggerMode;
|
|
1625
2036
|
error_handler_path?: string;
|
|
1626
2037
|
error_handler_args?: ScriptArgs;
|
|
1627
2038
|
retry?: Retry;
|
|
@@ -1636,7 +2047,7 @@ export type EditMqttTrigger = {
|
|
|
1636
2047
|
path: string;
|
|
1637
2048
|
script_path: string;
|
|
1638
2049
|
is_flow: boolean;
|
|
1639
|
-
|
|
2050
|
+
mode?: TriggerMode;
|
|
1640
2051
|
error_handler_path?: string;
|
|
1641
2052
|
error_handler_args?: ScriptArgs;
|
|
1642
2053
|
retry?: Retry;
|
|
@@ -1675,7 +2086,7 @@ export type GcpTriggerData = {
|
|
|
1675
2086
|
path: string;
|
|
1676
2087
|
script_path: string;
|
|
1677
2088
|
is_flow: boolean;
|
|
1678
|
-
|
|
2089
|
+
mode?: TriggerMode;
|
|
1679
2090
|
auto_acknowledge_msg?: boolean;
|
|
1680
2091
|
/**
|
|
1681
2092
|
* Time in seconds within which the message must be acknowledged. If not provided, defaults to the subscription's acknowledgment deadline (600 seconds).
|
|
@@ -1705,19 +2116,17 @@ export type SqsTrigger = TriggerExtraProperty & {
|
|
|
1705
2116
|
retry?: Retry;
|
|
1706
2117
|
};
|
|
1707
2118
|
export type LoggedWizardStatus = 'OK' | 'SKIP' | 'FAIL';
|
|
1708
|
-
export type
|
|
2119
|
+
export type CustomInstanceDbLogs = {
|
|
1709
2120
|
super_admin?: LoggedWizardStatus;
|
|
1710
2121
|
database_credentials?: LoggedWizardStatus;
|
|
1711
2122
|
valid_dbname?: LoggedWizardStatus;
|
|
1712
|
-
/**
|
|
1713
|
-
* Created database status log
|
|
1714
|
-
*/
|
|
1715
2123
|
created_database?: LoggedWizardStatus;
|
|
1716
2124
|
db_connect?: LoggedWizardStatus;
|
|
1717
2125
|
grant_permissions?: LoggedWizardStatus;
|
|
1718
2126
|
};
|
|
1719
|
-
export type
|
|
1720
|
-
|
|
2127
|
+
export type CustomInstanceDbTag = 'ducklake' | 'datatable';
|
|
2128
|
+
export type CustomInstanceDb = {
|
|
2129
|
+
logs: CustomInstanceDbLogs;
|
|
1721
2130
|
/**
|
|
1722
2131
|
* Whether the operation completed successfully
|
|
1723
2132
|
*/
|
|
@@ -1726,6 +2135,7 @@ export type DucklakeInstanceCatalogDbStatus = {
|
|
|
1726
2135
|
* Error message if the operation failed
|
|
1727
2136
|
*/
|
|
1728
2137
|
error?: (string) | null;
|
|
2138
|
+
tag?: CustomInstanceDbTag;
|
|
1729
2139
|
};
|
|
1730
2140
|
export type NewSqsTrigger = {
|
|
1731
2141
|
queue_url: string;
|
|
@@ -1735,7 +2145,7 @@ export type NewSqsTrigger = {
|
|
|
1735
2145
|
path: string;
|
|
1736
2146
|
script_path: string;
|
|
1737
2147
|
is_flow: boolean;
|
|
1738
|
-
|
|
2148
|
+
mode?: TriggerMode;
|
|
1739
2149
|
error_handler_path?: string;
|
|
1740
2150
|
error_handler_args?: ScriptArgs;
|
|
1741
2151
|
retry?: Retry;
|
|
@@ -1748,7 +2158,7 @@ export type EditSqsTrigger = {
|
|
|
1748
2158
|
path: string;
|
|
1749
2159
|
script_path: string;
|
|
1750
2160
|
is_flow: boolean;
|
|
1751
|
-
|
|
2161
|
+
mode?: TriggerMode;
|
|
1752
2162
|
error_handler_path?: string;
|
|
1753
2163
|
error_handler_args?: ScriptArgs;
|
|
1754
2164
|
retry?: Retry;
|
|
@@ -1796,7 +2206,7 @@ export type NewPostgresTrigger = {
|
|
|
1796
2206
|
path: string;
|
|
1797
2207
|
script_path: string;
|
|
1798
2208
|
is_flow: boolean;
|
|
1799
|
-
|
|
2209
|
+
mode?: TriggerMode;
|
|
1800
2210
|
postgres_resource_path: string;
|
|
1801
2211
|
publication?: PublicationData;
|
|
1802
2212
|
error_handler_path?: string;
|
|
@@ -1809,7 +2219,7 @@ export type EditPostgresTrigger = {
|
|
|
1809
2219
|
path: string;
|
|
1810
2220
|
script_path: string;
|
|
1811
2221
|
is_flow: boolean;
|
|
1812
|
-
|
|
2222
|
+
mode?: TriggerMode;
|
|
1813
2223
|
postgres_resource_path: string;
|
|
1814
2224
|
publication?: PublicationData;
|
|
1815
2225
|
error_handler_path?: string;
|
|
@@ -1834,7 +2244,7 @@ export type NewKafkaTrigger = {
|
|
|
1834
2244
|
kafka_resource_path: string;
|
|
1835
2245
|
group_id: string;
|
|
1836
2246
|
topics: Array<(string)>;
|
|
1837
|
-
|
|
2247
|
+
mode?: TriggerMode;
|
|
1838
2248
|
error_handler_path?: string;
|
|
1839
2249
|
error_handler_args?: ScriptArgs;
|
|
1840
2250
|
retry?: Retry;
|
|
@@ -1872,7 +2282,7 @@ export type NewNatsTrigger = {
|
|
|
1872
2282
|
stream_name?: string;
|
|
1873
2283
|
consumer_name?: string;
|
|
1874
2284
|
subjects: Array<(string)>;
|
|
1875
|
-
|
|
2285
|
+
mode?: TriggerMode;
|
|
1876
2286
|
error_handler_path?: string;
|
|
1877
2287
|
error_handler_args?: ScriptArgs;
|
|
1878
2288
|
retry?: Retry;
|
|
@@ -1906,7 +2316,7 @@ export type NewEmailTrigger = {
|
|
|
1906
2316
|
error_handler_path?: string;
|
|
1907
2317
|
error_handler_args?: ScriptArgs;
|
|
1908
2318
|
retry?: Retry;
|
|
1909
|
-
|
|
2319
|
+
mode?: TriggerMode;
|
|
1910
2320
|
};
|
|
1911
2321
|
export type EditEmailTrigger = {
|
|
1912
2322
|
path: string;
|
|
@@ -2230,6 +2640,16 @@ export type DucklakeSettings = {
|
|
|
2230
2640
|
};
|
|
2231
2641
|
};
|
|
2232
2642
|
};
|
|
2643
|
+
export type DataTableSettings = {
|
|
2644
|
+
datatables: {
|
|
2645
|
+
[key: string]: {
|
|
2646
|
+
database: {
|
|
2647
|
+
resource_type: 'postgresql' | 'instance';
|
|
2648
|
+
resource_path?: string;
|
|
2649
|
+
};
|
|
2650
|
+
};
|
|
2651
|
+
};
|
|
2652
|
+
};
|
|
2233
2653
|
export type DynamicInputData = {
|
|
2234
2654
|
/**
|
|
2235
2655
|
* Name of the function to execute for dynamic select
|
|
@@ -2553,7 +2973,7 @@ export type TeamsChannel = {
|
|
|
2553
2973
|
};
|
|
2554
2974
|
export type AssetUsageKind = 'script' | 'flow';
|
|
2555
2975
|
export type AssetUsageAccessType = 'r' | 'w' | 'rw';
|
|
2556
|
-
export type AssetKind = 's3object' | 'resource' | 'ducklake';
|
|
2976
|
+
export type AssetKind = 's3object' | 'resource' | 'ducklake' | 'datatable';
|
|
2557
2977
|
export type Asset = {
|
|
2558
2978
|
path: string;
|
|
2559
2979
|
kind: AssetKind;
|
|
@@ -2588,7 +3008,7 @@ export type ParameterPerPage = number;
|
|
|
2588
3008
|
/**
|
|
2589
3009
|
* trigger kind (schedule, http, websocket...)
|
|
2590
3010
|
*/
|
|
2591
|
-
export type ParameterJobTriggerKind =
|
|
3011
|
+
export type ParameterJobTriggerKind = JobTriggerKind;
|
|
2592
3012
|
/**
|
|
2593
3013
|
* order by desc order (default true)
|
|
2594
3014
|
*/
|
|
@@ -2650,6 +3070,10 @@ export type ParameterScriptStartPath = string;
|
|
|
2650
3070
|
* mask to filter by schedule path
|
|
2651
3071
|
*/
|
|
2652
3072
|
export type ParameterSchedulePath = string;
|
|
3073
|
+
/**
|
|
3074
|
+
* mask to filter by trigger path
|
|
3075
|
+
*/
|
|
3076
|
+
export type ParameterTriggerPath = string;
|
|
2653
3077
|
/**
|
|
2654
3078
|
* mask to filter exact matching path
|
|
2655
3079
|
*/
|
|
@@ -3011,16 +3435,22 @@ export type ExistsUsernameData = {
|
|
|
3011
3435
|
};
|
|
3012
3436
|
};
|
|
3013
3437
|
export type ExistsUsernameResponse = (boolean);
|
|
3014
|
-
export type
|
|
3015
|
-
[key: string]:
|
|
3438
|
+
export type RefreshCustomInstanceUserPwdResponse = ({
|
|
3439
|
+
[key: string]: unknown;
|
|
3016
3440
|
});
|
|
3017
|
-
export type
|
|
3441
|
+
export type ListCustomInstanceDbsResponse = ({
|
|
3442
|
+
[key: string]: CustomInstanceDb;
|
|
3443
|
+
});
|
|
3444
|
+
export type SetupCustomInstanceDbData = {
|
|
3018
3445
|
/**
|
|
3019
3446
|
* The name of the database to create
|
|
3020
3447
|
*/
|
|
3021
3448
|
name: string;
|
|
3449
|
+
requestBody: {
|
|
3450
|
+
tag?: CustomInstanceDbTag;
|
|
3451
|
+
};
|
|
3022
3452
|
};
|
|
3023
|
-
export type
|
|
3453
|
+
export type SetupCustomInstanceDbResponse = (CustomInstanceDb);
|
|
3024
3454
|
export type GetGlobalData = {
|
|
3025
3455
|
key: string;
|
|
3026
3456
|
};
|
|
@@ -3134,6 +3564,7 @@ export type RefreshUserTokenData = {
|
|
|
3134
3564
|
export type RefreshUserTokenResponse = (string);
|
|
3135
3565
|
export type GetTutorialProgressResponse = ({
|
|
3136
3566
|
progress?: number;
|
|
3567
|
+
skipped_all?: boolean;
|
|
3137
3568
|
});
|
|
3138
3569
|
export type UpdateTutorialProgressData = {
|
|
3139
3570
|
/**
|
|
@@ -3141,6 +3572,7 @@ export type UpdateTutorialProgressData = {
|
|
|
3141
3572
|
*/
|
|
3142
3573
|
requestBody: {
|
|
3143
3574
|
progress?: number;
|
|
3575
|
+
skipped_all?: boolean;
|
|
3144
3576
|
};
|
|
3145
3577
|
};
|
|
3146
3578
|
export type UpdateTutorialProgressResponse = (string);
|
|
@@ -3371,6 +3803,7 @@ export type GetSettingsResponse = ({
|
|
|
3371
3803
|
error_handler_muted_on_cancel: boolean;
|
|
3372
3804
|
large_file_storage?: LargeFileStorage;
|
|
3373
3805
|
ducklake?: DucklakeSettings;
|
|
3806
|
+
datatable?: DataTableSettings;
|
|
3374
3807
|
git_sync?: WorkspaceGitSyncSettings;
|
|
3375
3808
|
deploy_ui?: WorkspaceDeployUISettings;
|
|
3376
3809
|
default_app?: string;
|
|
@@ -3635,6 +4068,10 @@ export type ListDucklakesData = {
|
|
|
3635
4068
|
workspace: string;
|
|
3636
4069
|
};
|
|
3637
4070
|
export type ListDucklakesResponse = (Array<(string)>);
|
|
4071
|
+
export type ListDataTablesData = {
|
|
4072
|
+
workspace: string;
|
|
4073
|
+
};
|
|
4074
|
+
export type ListDataTablesResponse = (Array<(string)>);
|
|
3638
4075
|
export type EditDucklakeConfigData = {
|
|
3639
4076
|
/**
|
|
3640
4077
|
* Ducklake settings
|
|
@@ -3645,6 +4082,16 @@ export type EditDucklakeConfigData = {
|
|
|
3645
4082
|
workspace: string;
|
|
3646
4083
|
};
|
|
3647
4084
|
export type EditDucklakeConfigResponse = (unknown);
|
|
4085
|
+
export type EditDataTableConfigData = {
|
|
4086
|
+
/**
|
|
4087
|
+
* DataTable settings
|
|
4088
|
+
*/
|
|
4089
|
+
requestBody: {
|
|
4090
|
+
settings: DataTableSettings;
|
|
4091
|
+
};
|
|
4092
|
+
workspace: string;
|
|
4093
|
+
};
|
|
4094
|
+
export type EditDataTableConfigResponse = (unknown);
|
|
3648
4095
|
export type EditWorkspaceGitSyncConfigData = {
|
|
3649
4096
|
/**
|
|
3650
4097
|
* Workspace Git sync settings
|
|
@@ -3820,6 +4267,7 @@ export type ListTokensData = {
|
|
|
3820
4267
|
export type ListTokensResponse = (Array<TruncatedToken>);
|
|
3821
4268
|
export type GetOidcTokenData = {
|
|
3822
4269
|
audience: string;
|
|
4270
|
+
expiresIn?: number;
|
|
3823
4271
|
workspace: string;
|
|
3824
4272
|
};
|
|
3825
4273
|
export type GetOidcTokenResponse = (string);
|
|
@@ -6181,6 +6629,14 @@ export type RunScriptPreviewData = {
|
|
|
6181
6629
|
workspace: string;
|
|
6182
6630
|
};
|
|
6183
6631
|
export type RunScriptPreviewResponse = (string);
|
|
6632
|
+
export type RunScriptPreviewInlineData = {
|
|
6633
|
+
/**
|
|
6634
|
+
* preview
|
|
6635
|
+
*/
|
|
6636
|
+
requestBody: PreviewInline;
|
|
6637
|
+
workspace: string;
|
|
6638
|
+
};
|
|
6639
|
+
export type RunScriptPreviewInlineResponse = (unknown);
|
|
6184
6640
|
export type RunScriptPreviewAndWaitResultData = {
|
|
6185
6641
|
/**
|
|
6186
6642
|
* preview
|
|
@@ -6347,6 +6803,14 @@ export type ListQueueData = {
|
|
|
6347
6803
|
* filter on jobs with a given tag/worker group
|
|
6348
6804
|
*/
|
|
6349
6805
|
tag?: string;
|
|
6806
|
+
/**
|
|
6807
|
+
* trigger kind (schedule, http, websocket...)
|
|
6808
|
+
*/
|
|
6809
|
+
triggerKind?: JobTriggerKind;
|
|
6810
|
+
/**
|
|
6811
|
+
* mask to filter by trigger path
|
|
6812
|
+
*/
|
|
6813
|
+
triggerPath?: string;
|
|
6350
6814
|
/**
|
|
6351
6815
|
* worker this job was ran on
|
|
6352
6816
|
*/
|
|
@@ -6609,6 +7073,48 @@ export type CancelSelectionData = {
|
|
|
6609
7073
|
workspace: string;
|
|
6610
7074
|
};
|
|
6611
7075
|
export type CancelSelectionResponse = (Array<(string)>);
|
|
7076
|
+
export type ResumeSuspendedTriggerJobsData = {
|
|
7077
|
+
/**
|
|
7078
|
+
* Optional list of job IDs to reassign
|
|
7079
|
+
*/
|
|
7080
|
+
requestBody?: {
|
|
7081
|
+
/**
|
|
7082
|
+
* Optional list of specific job UUIDs to reassign. If not provided, all suspended jobs for the trigger will be reassigned.
|
|
7083
|
+
*/
|
|
7084
|
+
job_ids?: Array<(string)>;
|
|
7085
|
+
};
|
|
7086
|
+
/**
|
|
7087
|
+
* The kind of trigger
|
|
7088
|
+
*/
|
|
7089
|
+
triggerKind: JobTriggerKind;
|
|
7090
|
+
/**
|
|
7091
|
+
* The path of the trigger (can contain forward slashes)
|
|
7092
|
+
*/
|
|
7093
|
+
triggerPath: string;
|
|
7094
|
+
workspace: string;
|
|
7095
|
+
};
|
|
7096
|
+
export type ResumeSuspendedTriggerJobsResponse = (string);
|
|
7097
|
+
export type CancelSuspendedTriggerJobsData = {
|
|
7098
|
+
/**
|
|
7099
|
+
* Optional list of job IDs to cancel
|
|
7100
|
+
*/
|
|
7101
|
+
requestBody?: {
|
|
7102
|
+
/**
|
|
7103
|
+
* Optional list of specific job UUIDs to cancel. If not provided, all suspended jobs for the trigger will be canceled.
|
|
7104
|
+
*/
|
|
7105
|
+
job_ids?: Array<(string)>;
|
|
7106
|
+
};
|
|
7107
|
+
/**
|
|
7108
|
+
* The kind of trigger
|
|
7109
|
+
*/
|
|
7110
|
+
triggerKind: JobTriggerKind;
|
|
7111
|
+
/**
|
|
7112
|
+
* The path of the trigger (can contain forward slashes)
|
|
7113
|
+
*/
|
|
7114
|
+
triggerPath: string;
|
|
7115
|
+
workspace: string;
|
|
7116
|
+
};
|
|
7117
|
+
export type CancelSuspendedTriggerJobsResponse = (string);
|
|
6612
7118
|
export type ListCompletedJobsData = {
|
|
6613
7119
|
/**
|
|
6614
7120
|
* allow wildcards (*) in the filter of label, tag, worker
|
|
@@ -6868,7 +7374,7 @@ export type ListJobsData = {
|
|
|
6868
7374
|
/**
|
|
6869
7375
|
* trigger kind (schedule, http, websocket...)
|
|
6870
7376
|
*/
|
|
6871
|
-
triggerKind?:
|
|
7377
|
+
triggerKind?: JobTriggerKind;
|
|
6872
7378
|
/**
|
|
6873
7379
|
* worker this job was ran on
|
|
6874
7380
|
*/
|
|
@@ -7370,14 +7876,14 @@ export type ExistsRouteData = {
|
|
|
7370
7876
|
workspace: string;
|
|
7371
7877
|
};
|
|
7372
7878
|
export type ExistsRouteResponse = (boolean);
|
|
7373
|
-
export type
|
|
7879
|
+
export type SetHttpTriggerModeData = {
|
|
7374
7880
|
path: string;
|
|
7375
7881
|
requestBody: {
|
|
7376
|
-
|
|
7882
|
+
mode: TriggerMode;
|
|
7377
7883
|
};
|
|
7378
7884
|
workspace: string;
|
|
7379
7885
|
};
|
|
7380
|
-
export type
|
|
7886
|
+
export type SetHttpTriggerModeResponse = (string);
|
|
7381
7887
|
export type CreateWebsocketTriggerData = {
|
|
7382
7888
|
/**
|
|
7383
7889
|
* new websocket trigger
|
|
@@ -7428,17 +7934,17 @@ export type ExistsWebsocketTriggerData = {
|
|
|
7428
7934
|
workspace: string;
|
|
7429
7935
|
};
|
|
7430
7936
|
export type ExistsWebsocketTriggerResponse = (boolean);
|
|
7431
|
-
export type
|
|
7937
|
+
export type SetWebsocketTriggerModeData = {
|
|
7432
7938
|
path: string;
|
|
7433
7939
|
/**
|
|
7434
7940
|
* updated websocket trigger enable
|
|
7435
7941
|
*/
|
|
7436
7942
|
requestBody: {
|
|
7437
|
-
|
|
7943
|
+
mode: TriggerMode;
|
|
7438
7944
|
};
|
|
7439
7945
|
workspace: string;
|
|
7440
7946
|
};
|
|
7441
|
-
export type
|
|
7947
|
+
export type SetWebsocketTriggerModeResponse = (string);
|
|
7442
7948
|
export type TestWebsocketConnectionData = {
|
|
7443
7949
|
/**
|
|
7444
7950
|
* test websocket connection
|
|
@@ -7501,17 +8007,17 @@ export type ExistsKafkaTriggerData = {
|
|
|
7501
8007
|
workspace: string;
|
|
7502
8008
|
};
|
|
7503
8009
|
export type ExistsKafkaTriggerResponse = (boolean);
|
|
7504
|
-
export type
|
|
8010
|
+
export type SetKafkaTriggerModeData = {
|
|
7505
8011
|
path: string;
|
|
7506
8012
|
/**
|
|
7507
8013
|
* updated kafka trigger enable
|
|
7508
8014
|
*/
|
|
7509
8015
|
requestBody: {
|
|
7510
|
-
|
|
8016
|
+
mode: TriggerMode;
|
|
7511
8017
|
};
|
|
7512
8018
|
workspace: string;
|
|
7513
8019
|
};
|
|
7514
|
-
export type
|
|
8020
|
+
export type SetKafkaTriggerModeResponse = (string);
|
|
7515
8021
|
export type TestKafkaConnectionData = {
|
|
7516
8022
|
/**
|
|
7517
8023
|
* test kafka connection
|
|
@@ -7574,17 +8080,17 @@ export type ExistsNatsTriggerData = {
|
|
|
7574
8080
|
workspace: string;
|
|
7575
8081
|
};
|
|
7576
8082
|
export type ExistsNatsTriggerResponse = (boolean);
|
|
7577
|
-
export type
|
|
8083
|
+
export type SetNatsTriggerModeData = {
|
|
7578
8084
|
path: string;
|
|
7579
8085
|
/**
|
|
7580
8086
|
* updated nats trigger enable
|
|
7581
8087
|
*/
|
|
7582
8088
|
requestBody: {
|
|
7583
|
-
|
|
8089
|
+
mode: TriggerMode;
|
|
7584
8090
|
};
|
|
7585
8091
|
workspace: string;
|
|
7586
8092
|
};
|
|
7587
|
-
export type
|
|
8093
|
+
export type SetNatsTriggerModeResponse = (string);
|
|
7588
8094
|
export type TestNatsConnectionData = {
|
|
7589
8095
|
/**
|
|
7590
8096
|
* test nats connection
|
|
@@ -7647,17 +8153,17 @@ export type ExistsSqsTriggerData = {
|
|
|
7647
8153
|
workspace: string;
|
|
7648
8154
|
};
|
|
7649
8155
|
export type ExistsSqsTriggerResponse = (boolean);
|
|
7650
|
-
export type
|
|
8156
|
+
export type SetSqsTriggerModeData = {
|
|
7651
8157
|
path: string;
|
|
7652
8158
|
/**
|
|
7653
8159
|
* updated sqs trigger enable
|
|
7654
8160
|
*/
|
|
7655
8161
|
requestBody: {
|
|
7656
|
-
|
|
8162
|
+
mode: TriggerMode;
|
|
7657
8163
|
};
|
|
7658
8164
|
workspace: string;
|
|
7659
8165
|
};
|
|
7660
|
-
export type
|
|
8166
|
+
export type SetSqsTriggerModeResponse = (string);
|
|
7661
8167
|
export type TestSqsConnectionData = {
|
|
7662
8168
|
/**
|
|
7663
8169
|
* test sqs connection
|
|
@@ -7720,17 +8226,17 @@ export type ExistsMqttTriggerData = {
|
|
|
7720
8226
|
workspace: string;
|
|
7721
8227
|
};
|
|
7722
8228
|
export type ExistsMqttTriggerResponse = (boolean);
|
|
7723
|
-
export type
|
|
8229
|
+
export type SetMqttTriggerModeData = {
|
|
7724
8230
|
path: string;
|
|
7725
8231
|
/**
|
|
7726
8232
|
* updated mqtt trigger enable
|
|
7727
8233
|
*/
|
|
7728
8234
|
requestBody: {
|
|
7729
|
-
|
|
8235
|
+
mode: TriggerMode;
|
|
7730
8236
|
};
|
|
7731
8237
|
workspace: string;
|
|
7732
8238
|
};
|
|
7733
|
-
export type
|
|
8239
|
+
export type SetMqttTriggerModeResponse = (string);
|
|
7734
8240
|
export type TestMqttConnectionData = {
|
|
7735
8241
|
/**
|
|
7736
8242
|
* test mqtt connection
|
|
@@ -7793,17 +8299,17 @@ export type ExistsGcpTriggerData = {
|
|
|
7793
8299
|
workspace: string;
|
|
7794
8300
|
};
|
|
7795
8301
|
export type ExistsGcpTriggerResponse = (boolean);
|
|
7796
|
-
export type
|
|
8302
|
+
export type SetGcpTriggerModeData = {
|
|
7797
8303
|
path: string;
|
|
7798
8304
|
/**
|
|
7799
8305
|
* updated gcp trigger enable
|
|
7800
8306
|
*/
|
|
7801
8307
|
requestBody: {
|
|
7802
|
-
|
|
8308
|
+
mode: TriggerMode;
|
|
7803
8309
|
};
|
|
7804
8310
|
workspace: string;
|
|
7805
8311
|
};
|
|
7806
|
-
export type
|
|
8312
|
+
export type SetGcpTriggerModeResponse = (string);
|
|
7807
8313
|
export type TestGcpConnectionData = {
|
|
7808
8314
|
/**
|
|
7809
8315
|
* test gcp connection
|
|
@@ -7984,17 +8490,17 @@ export type ExistsPostgresTriggerData = {
|
|
|
7984
8490
|
workspace: string;
|
|
7985
8491
|
};
|
|
7986
8492
|
export type ExistsPostgresTriggerResponse = (boolean);
|
|
7987
|
-
export type
|
|
8493
|
+
export type SetPostgresTriggerModeData = {
|
|
7988
8494
|
path: string;
|
|
7989
8495
|
/**
|
|
7990
8496
|
* updated postgres trigger enable
|
|
7991
8497
|
*/
|
|
7992
8498
|
requestBody: {
|
|
7993
|
-
|
|
8499
|
+
mode: TriggerMode;
|
|
7994
8500
|
};
|
|
7995
8501
|
workspace: string;
|
|
7996
8502
|
};
|
|
7997
|
-
export type
|
|
8503
|
+
export type SetPostgresTriggerModeResponse = (string);
|
|
7998
8504
|
export type TestPostgresConnectionData = {
|
|
7999
8505
|
/**
|
|
8000
8506
|
* test postgres connection
|
|
@@ -8067,14 +8573,14 @@ export type ExistsEmailLocalPartData = {
|
|
|
8067
8573
|
workspace: string;
|
|
8068
8574
|
};
|
|
8069
8575
|
export type ExistsEmailLocalPartResponse = (boolean);
|
|
8070
|
-
export type
|
|
8576
|
+
export type SetEmailTriggerModeData = {
|
|
8071
8577
|
path: string;
|
|
8072
8578
|
requestBody: {
|
|
8073
|
-
|
|
8579
|
+
mode: TriggerMode;
|
|
8074
8580
|
};
|
|
8075
8581
|
workspace: string;
|
|
8076
8582
|
};
|
|
8077
|
-
export type
|
|
8583
|
+
export type SetEmailTriggerModeResponse = (string);
|
|
8078
8584
|
export type ListInstanceGroupsResponse = (Array<InstanceGroup>);
|
|
8079
8585
|
export type ListInstanceGroupsWithWorkspacesResponse = (Array<InstanceGroupWithWorkspaces>);
|
|
8080
8586
|
export type GetInstanceGroupData = {
|
|
@@ -9067,7 +9573,7 @@ export type ListExtendedJobsData = {
|
|
|
9067
9573
|
/**
|
|
9068
9574
|
* trigger kind (schedule, http, websocket...)
|
|
9069
9575
|
*/
|
|
9070
|
-
triggerKind?:
|
|
9576
|
+
triggerKind?: JobTriggerKind;
|
|
9071
9577
|
workspace: string;
|
|
9072
9578
|
};
|
|
9073
9579
|
export type ListExtendedJobsResponse = (ExtendedJobs);
|