windmill-cli 1.589.3 → 1.591.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 +167 -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 +55 -21
- 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 +82 -16
- package/types/gen/services.gen.d.ts.map +1 -1
- package/types/gen/types.gen.d.ts +582 -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 +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 +582 -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
|
@@ -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
|
*/
|
|
@@ -2759,6 +3183,20 @@ export type ParameterRunnableKind = 'script' | 'flow';
|
|
|
2759
3183
|
export type BackendVersionResponse = (string);
|
|
2760
3184
|
export type BackendUptodateResponse = (string);
|
|
2761
3185
|
export type GetLicenseIdResponse = (string);
|
|
3186
|
+
export type QueryDocumentationData = {
|
|
3187
|
+
/**
|
|
3188
|
+
* query to send to the AI documentation assistant
|
|
3189
|
+
*/
|
|
3190
|
+
requestBody: {
|
|
3191
|
+
/**
|
|
3192
|
+
* The documentation query to send to the AI assistant
|
|
3193
|
+
*/
|
|
3194
|
+
query: string;
|
|
3195
|
+
};
|
|
3196
|
+
};
|
|
3197
|
+
export type QueryDocumentationResponse = ({
|
|
3198
|
+
[key: string]: unknown;
|
|
3199
|
+
});
|
|
2762
3200
|
export type GetOpenApiYamlResponse = (string);
|
|
2763
3201
|
export type GetAuditLogData = {
|
|
2764
3202
|
id: number;
|
|
@@ -3011,16 +3449,22 @@ export type ExistsUsernameData = {
|
|
|
3011
3449
|
};
|
|
3012
3450
|
};
|
|
3013
3451
|
export type ExistsUsernameResponse = (boolean);
|
|
3014
|
-
export type
|
|
3015
|
-
[key: string]:
|
|
3452
|
+
export type RefreshCustomInstanceUserPwdResponse = ({
|
|
3453
|
+
[key: string]: unknown;
|
|
3454
|
+
});
|
|
3455
|
+
export type ListCustomInstanceDbsResponse = ({
|
|
3456
|
+
[key: string]: CustomInstanceDb;
|
|
3016
3457
|
});
|
|
3017
|
-
export type
|
|
3458
|
+
export type SetupCustomInstanceDbData = {
|
|
3018
3459
|
/**
|
|
3019
3460
|
* The name of the database to create
|
|
3020
3461
|
*/
|
|
3021
3462
|
name: string;
|
|
3463
|
+
requestBody: {
|
|
3464
|
+
tag?: CustomInstanceDbTag;
|
|
3465
|
+
};
|
|
3022
3466
|
};
|
|
3023
|
-
export type
|
|
3467
|
+
export type SetupCustomInstanceDbResponse = (CustomInstanceDb);
|
|
3024
3468
|
export type GetGlobalData = {
|
|
3025
3469
|
key: string;
|
|
3026
3470
|
};
|
|
@@ -3134,6 +3578,7 @@ export type RefreshUserTokenData = {
|
|
|
3134
3578
|
export type RefreshUserTokenResponse = (string);
|
|
3135
3579
|
export type GetTutorialProgressResponse = ({
|
|
3136
3580
|
progress?: number;
|
|
3581
|
+
skipped_all?: boolean;
|
|
3137
3582
|
});
|
|
3138
3583
|
export type UpdateTutorialProgressData = {
|
|
3139
3584
|
/**
|
|
@@ -3141,6 +3586,7 @@ export type UpdateTutorialProgressData = {
|
|
|
3141
3586
|
*/
|
|
3142
3587
|
requestBody: {
|
|
3143
3588
|
progress?: number;
|
|
3589
|
+
skipped_all?: boolean;
|
|
3144
3590
|
};
|
|
3145
3591
|
};
|
|
3146
3592
|
export type UpdateTutorialProgressResponse = (string);
|
|
@@ -3371,6 +3817,7 @@ export type GetSettingsResponse = ({
|
|
|
3371
3817
|
error_handler_muted_on_cancel: boolean;
|
|
3372
3818
|
large_file_storage?: LargeFileStorage;
|
|
3373
3819
|
ducklake?: DucklakeSettings;
|
|
3820
|
+
datatable?: DataTableSettings;
|
|
3374
3821
|
git_sync?: WorkspaceGitSyncSettings;
|
|
3375
3822
|
deploy_ui?: WorkspaceDeployUISettings;
|
|
3376
3823
|
default_app?: string;
|
|
@@ -3635,6 +4082,10 @@ export type ListDucklakesData = {
|
|
|
3635
4082
|
workspace: string;
|
|
3636
4083
|
};
|
|
3637
4084
|
export type ListDucklakesResponse = (Array<(string)>);
|
|
4085
|
+
export type ListDataTablesData = {
|
|
4086
|
+
workspace: string;
|
|
4087
|
+
};
|
|
4088
|
+
export type ListDataTablesResponse = (Array<(string)>);
|
|
3638
4089
|
export type EditDucklakeConfigData = {
|
|
3639
4090
|
/**
|
|
3640
4091
|
* Ducklake settings
|
|
@@ -3645,6 +4096,16 @@ export type EditDucklakeConfigData = {
|
|
|
3645
4096
|
workspace: string;
|
|
3646
4097
|
};
|
|
3647
4098
|
export type EditDucklakeConfigResponse = (unknown);
|
|
4099
|
+
export type EditDataTableConfigData = {
|
|
4100
|
+
/**
|
|
4101
|
+
* DataTable settings
|
|
4102
|
+
*/
|
|
4103
|
+
requestBody: {
|
|
4104
|
+
settings: DataTableSettings;
|
|
4105
|
+
};
|
|
4106
|
+
workspace: string;
|
|
4107
|
+
};
|
|
4108
|
+
export type EditDataTableConfigResponse = (unknown);
|
|
3648
4109
|
export type EditWorkspaceGitSyncConfigData = {
|
|
3649
4110
|
/**
|
|
3650
4111
|
* Workspace Git sync settings
|
|
@@ -3820,6 +4281,7 @@ export type ListTokensData = {
|
|
|
3820
4281
|
export type ListTokensResponse = (Array<TruncatedToken>);
|
|
3821
4282
|
export type GetOidcTokenData = {
|
|
3822
4283
|
audience: string;
|
|
4284
|
+
expiresIn?: number;
|
|
3823
4285
|
workspace: string;
|
|
3824
4286
|
};
|
|
3825
4287
|
export type GetOidcTokenResponse = (string);
|
|
@@ -6181,6 +6643,14 @@ export type RunScriptPreviewData = {
|
|
|
6181
6643
|
workspace: string;
|
|
6182
6644
|
};
|
|
6183
6645
|
export type RunScriptPreviewResponse = (string);
|
|
6646
|
+
export type RunScriptPreviewInlineData = {
|
|
6647
|
+
/**
|
|
6648
|
+
* preview
|
|
6649
|
+
*/
|
|
6650
|
+
requestBody: PreviewInline;
|
|
6651
|
+
workspace: string;
|
|
6652
|
+
};
|
|
6653
|
+
export type RunScriptPreviewInlineResponse = (unknown);
|
|
6184
6654
|
export type RunScriptPreviewAndWaitResultData = {
|
|
6185
6655
|
/**
|
|
6186
6656
|
* preview
|
|
@@ -6347,6 +6817,14 @@ export type ListQueueData = {
|
|
|
6347
6817
|
* filter on jobs with a given tag/worker group
|
|
6348
6818
|
*/
|
|
6349
6819
|
tag?: string;
|
|
6820
|
+
/**
|
|
6821
|
+
* trigger kind (schedule, http, websocket...)
|
|
6822
|
+
*/
|
|
6823
|
+
triggerKind?: JobTriggerKind;
|
|
6824
|
+
/**
|
|
6825
|
+
* mask to filter by trigger path
|
|
6826
|
+
*/
|
|
6827
|
+
triggerPath?: string;
|
|
6350
6828
|
/**
|
|
6351
6829
|
* worker this job was ran on
|
|
6352
6830
|
*/
|
|
@@ -6609,6 +7087,48 @@ export type CancelSelectionData = {
|
|
|
6609
7087
|
workspace: string;
|
|
6610
7088
|
};
|
|
6611
7089
|
export type CancelSelectionResponse = (Array<(string)>);
|
|
7090
|
+
export type ResumeSuspendedTriggerJobsData = {
|
|
7091
|
+
/**
|
|
7092
|
+
* Optional list of job IDs to reassign
|
|
7093
|
+
*/
|
|
7094
|
+
requestBody?: {
|
|
7095
|
+
/**
|
|
7096
|
+
* Optional list of specific job UUIDs to reassign. If not provided, all suspended jobs for the trigger will be reassigned.
|
|
7097
|
+
*/
|
|
7098
|
+
job_ids?: Array<(string)>;
|
|
7099
|
+
};
|
|
7100
|
+
/**
|
|
7101
|
+
* The kind of trigger
|
|
7102
|
+
*/
|
|
7103
|
+
triggerKind: JobTriggerKind;
|
|
7104
|
+
/**
|
|
7105
|
+
* The path of the trigger (can contain forward slashes)
|
|
7106
|
+
*/
|
|
7107
|
+
triggerPath: string;
|
|
7108
|
+
workspace: string;
|
|
7109
|
+
};
|
|
7110
|
+
export type ResumeSuspendedTriggerJobsResponse = (string);
|
|
7111
|
+
export type CancelSuspendedTriggerJobsData = {
|
|
7112
|
+
/**
|
|
7113
|
+
* Optional list of job IDs to cancel
|
|
7114
|
+
*/
|
|
7115
|
+
requestBody?: {
|
|
7116
|
+
/**
|
|
7117
|
+
* Optional list of specific job UUIDs to cancel. If not provided, all suspended jobs for the trigger will be canceled.
|
|
7118
|
+
*/
|
|
7119
|
+
job_ids?: Array<(string)>;
|
|
7120
|
+
};
|
|
7121
|
+
/**
|
|
7122
|
+
* The kind of trigger
|
|
7123
|
+
*/
|
|
7124
|
+
triggerKind: JobTriggerKind;
|
|
7125
|
+
/**
|
|
7126
|
+
* The path of the trigger (can contain forward slashes)
|
|
7127
|
+
*/
|
|
7128
|
+
triggerPath: string;
|
|
7129
|
+
workspace: string;
|
|
7130
|
+
};
|
|
7131
|
+
export type CancelSuspendedTriggerJobsResponse = (string);
|
|
6612
7132
|
export type ListCompletedJobsData = {
|
|
6613
7133
|
/**
|
|
6614
7134
|
* allow wildcards (*) in the filter of label, tag, worker
|
|
@@ -6868,7 +7388,7 @@ export type ListJobsData = {
|
|
|
6868
7388
|
/**
|
|
6869
7389
|
* trigger kind (schedule, http, websocket...)
|
|
6870
7390
|
*/
|
|
6871
|
-
triggerKind?:
|
|
7391
|
+
triggerKind?: JobTriggerKind;
|
|
6872
7392
|
/**
|
|
6873
7393
|
* worker this job was ran on
|
|
6874
7394
|
*/
|
|
@@ -7370,14 +7890,14 @@ export type ExistsRouteData = {
|
|
|
7370
7890
|
workspace: string;
|
|
7371
7891
|
};
|
|
7372
7892
|
export type ExistsRouteResponse = (boolean);
|
|
7373
|
-
export type
|
|
7893
|
+
export type SetHttpTriggerModeData = {
|
|
7374
7894
|
path: string;
|
|
7375
7895
|
requestBody: {
|
|
7376
|
-
|
|
7896
|
+
mode: TriggerMode;
|
|
7377
7897
|
};
|
|
7378
7898
|
workspace: string;
|
|
7379
7899
|
};
|
|
7380
|
-
export type
|
|
7900
|
+
export type SetHttpTriggerModeResponse = (string);
|
|
7381
7901
|
export type CreateWebsocketTriggerData = {
|
|
7382
7902
|
/**
|
|
7383
7903
|
* new websocket trigger
|
|
@@ -7428,17 +7948,17 @@ export type ExistsWebsocketTriggerData = {
|
|
|
7428
7948
|
workspace: string;
|
|
7429
7949
|
};
|
|
7430
7950
|
export type ExistsWebsocketTriggerResponse = (boolean);
|
|
7431
|
-
export type
|
|
7951
|
+
export type SetWebsocketTriggerModeData = {
|
|
7432
7952
|
path: string;
|
|
7433
7953
|
/**
|
|
7434
7954
|
* updated websocket trigger enable
|
|
7435
7955
|
*/
|
|
7436
7956
|
requestBody: {
|
|
7437
|
-
|
|
7957
|
+
mode: TriggerMode;
|
|
7438
7958
|
};
|
|
7439
7959
|
workspace: string;
|
|
7440
7960
|
};
|
|
7441
|
-
export type
|
|
7961
|
+
export type SetWebsocketTriggerModeResponse = (string);
|
|
7442
7962
|
export type TestWebsocketConnectionData = {
|
|
7443
7963
|
/**
|
|
7444
7964
|
* test websocket connection
|
|
@@ -7501,17 +8021,17 @@ export type ExistsKafkaTriggerData = {
|
|
|
7501
8021
|
workspace: string;
|
|
7502
8022
|
};
|
|
7503
8023
|
export type ExistsKafkaTriggerResponse = (boolean);
|
|
7504
|
-
export type
|
|
8024
|
+
export type SetKafkaTriggerModeData = {
|
|
7505
8025
|
path: string;
|
|
7506
8026
|
/**
|
|
7507
8027
|
* updated kafka trigger enable
|
|
7508
8028
|
*/
|
|
7509
8029
|
requestBody: {
|
|
7510
|
-
|
|
8030
|
+
mode: TriggerMode;
|
|
7511
8031
|
};
|
|
7512
8032
|
workspace: string;
|
|
7513
8033
|
};
|
|
7514
|
-
export type
|
|
8034
|
+
export type SetKafkaTriggerModeResponse = (string);
|
|
7515
8035
|
export type TestKafkaConnectionData = {
|
|
7516
8036
|
/**
|
|
7517
8037
|
* test kafka connection
|
|
@@ -7574,17 +8094,17 @@ export type ExistsNatsTriggerData = {
|
|
|
7574
8094
|
workspace: string;
|
|
7575
8095
|
};
|
|
7576
8096
|
export type ExistsNatsTriggerResponse = (boolean);
|
|
7577
|
-
export type
|
|
8097
|
+
export type SetNatsTriggerModeData = {
|
|
7578
8098
|
path: string;
|
|
7579
8099
|
/**
|
|
7580
8100
|
* updated nats trigger enable
|
|
7581
8101
|
*/
|
|
7582
8102
|
requestBody: {
|
|
7583
|
-
|
|
8103
|
+
mode: TriggerMode;
|
|
7584
8104
|
};
|
|
7585
8105
|
workspace: string;
|
|
7586
8106
|
};
|
|
7587
|
-
export type
|
|
8107
|
+
export type SetNatsTriggerModeResponse = (string);
|
|
7588
8108
|
export type TestNatsConnectionData = {
|
|
7589
8109
|
/**
|
|
7590
8110
|
* test nats connection
|
|
@@ -7647,17 +8167,17 @@ export type ExistsSqsTriggerData = {
|
|
|
7647
8167
|
workspace: string;
|
|
7648
8168
|
};
|
|
7649
8169
|
export type ExistsSqsTriggerResponse = (boolean);
|
|
7650
|
-
export type
|
|
8170
|
+
export type SetSqsTriggerModeData = {
|
|
7651
8171
|
path: string;
|
|
7652
8172
|
/**
|
|
7653
8173
|
* updated sqs trigger enable
|
|
7654
8174
|
*/
|
|
7655
8175
|
requestBody: {
|
|
7656
|
-
|
|
8176
|
+
mode: TriggerMode;
|
|
7657
8177
|
};
|
|
7658
8178
|
workspace: string;
|
|
7659
8179
|
};
|
|
7660
|
-
export type
|
|
8180
|
+
export type SetSqsTriggerModeResponse = (string);
|
|
7661
8181
|
export type TestSqsConnectionData = {
|
|
7662
8182
|
/**
|
|
7663
8183
|
* test sqs connection
|
|
@@ -7720,17 +8240,17 @@ export type ExistsMqttTriggerData = {
|
|
|
7720
8240
|
workspace: string;
|
|
7721
8241
|
};
|
|
7722
8242
|
export type ExistsMqttTriggerResponse = (boolean);
|
|
7723
|
-
export type
|
|
8243
|
+
export type SetMqttTriggerModeData = {
|
|
7724
8244
|
path: string;
|
|
7725
8245
|
/**
|
|
7726
8246
|
* updated mqtt trigger enable
|
|
7727
8247
|
*/
|
|
7728
8248
|
requestBody: {
|
|
7729
|
-
|
|
8249
|
+
mode: TriggerMode;
|
|
7730
8250
|
};
|
|
7731
8251
|
workspace: string;
|
|
7732
8252
|
};
|
|
7733
|
-
export type
|
|
8253
|
+
export type SetMqttTriggerModeResponse = (string);
|
|
7734
8254
|
export type TestMqttConnectionData = {
|
|
7735
8255
|
/**
|
|
7736
8256
|
* test mqtt connection
|
|
@@ -7793,17 +8313,17 @@ export type ExistsGcpTriggerData = {
|
|
|
7793
8313
|
workspace: string;
|
|
7794
8314
|
};
|
|
7795
8315
|
export type ExistsGcpTriggerResponse = (boolean);
|
|
7796
|
-
export type
|
|
8316
|
+
export type SetGcpTriggerModeData = {
|
|
7797
8317
|
path: string;
|
|
7798
8318
|
/**
|
|
7799
8319
|
* updated gcp trigger enable
|
|
7800
8320
|
*/
|
|
7801
8321
|
requestBody: {
|
|
7802
|
-
|
|
8322
|
+
mode: TriggerMode;
|
|
7803
8323
|
};
|
|
7804
8324
|
workspace: string;
|
|
7805
8325
|
};
|
|
7806
|
-
export type
|
|
8326
|
+
export type SetGcpTriggerModeResponse = (string);
|
|
7807
8327
|
export type TestGcpConnectionData = {
|
|
7808
8328
|
/**
|
|
7809
8329
|
* test gcp connection
|
|
@@ -7984,17 +8504,17 @@ export type ExistsPostgresTriggerData = {
|
|
|
7984
8504
|
workspace: string;
|
|
7985
8505
|
};
|
|
7986
8506
|
export type ExistsPostgresTriggerResponse = (boolean);
|
|
7987
|
-
export type
|
|
8507
|
+
export type SetPostgresTriggerModeData = {
|
|
7988
8508
|
path: string;
|
|
7989
8509
|
/**
|
|
7990
8510
|
* updated postgres trigger enable
|
|
7991
8511
|
*/
|
|
7992
8512
|
requestBody: {
|
|
7993
|
-
|
|
8513
|
+
mode: TriggerMode;
|
|
7994
8514
|
};
|
|
7995
8515
|
workspace: string;
|
|
7996
8516
|
};
|
|
7997
|
-
export type
|
|
8517
|
+
export type SetPostgresTriggerModeResponse = (string);
|
|
7998
8518
|
export type TestPostgresConnectionData = {
|
|
7999
8519
|
/**
|
|
8000
8520
|
* test postgres connection
|
|
@@ -8067,14 +8587,14 @@ export type ExistsEmailLocalPartData = {
|
|
|
8067
8587
|
workspace: string;
|
|
8068
8588
|
};
|
|
8069
8589
|
export type ExistsEmailLocalPartResponse = (boolean);
|
|
8070
|
-
export type
|
|
8590
|
+
export type SetEmailTriggerModeData = {
|
|
8071
8591
|
path: string;
|
|
8072
8592
|
requestBody: {
|
|
8073
|
-
|
|
8593
|
+
mode: TriggerMode;
|
|
8074
8594
|
};
|
|
8075
8595
|
workspace: string;
|
|
8076
8596
|
};
|
|
8077
|
-
export type
|
|
8597
|
+
export type SetEmailTriggerModeResponse = (string);
|
|
8078
8598
|
export type ListInstanceGroupsResponse = (Array<InstanceGroup>);
|
|
8079
8599
|
export type ListInstanceGroupsWithWorkspacesResponse = (Array<InstanceGroupWithWorkspaces>);
|
|
8080
8600
|
export type GetInstanceGroupData = {
|
|
@@ -9067,7 +9587,7 @@ export type ListExtendedJobsData = {
|
|
|
9067
9587
|
/**
|
|
9068
9588
|
* trigger kind (schedule, http, websocket...)
|
|
9069
9589
|
*/
|
|
9070
|
-
triggerKind?:
|
|
9590
|
+
triggerKind?: JobTriggerKind;
|
|
9071
9591
|
workspace: string;
|
|
9072
9592
|
};
|
|
9073
9593
|
export type ListExtendedJobsResponse = (ExtendedJobs);
|