@uniformdev/automations-sdk 20.75.1-alpha.16 → 20.76.2
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/dist/ai/index.d.mts +1 -1
- package/dist/api/index.d.mts +137 -137
- package/dist/index.d.mts +26 -26
- package/package.json +4 -4
package/dist/ai/index.d.mts
CHANGED
package/dist/api/index.d.mts
CHANGED
|
@@ -11,16 +11,16 @@ interface paths$2 {
|
|
|
11
11
|
};
|
|
12
12
|
/**
|
|
13
13
|
* @deprecated
|
|
14
|
-
*
|
|
14
|
+
* Returns the log entries for a single automation run.
|
|
15
15
|
*
|
|
16
16
|
* This is experimental functionality that is subject to change without notice.
|
|
17
17
|
*/
|
|
18
18
|
get: {
|
|
19
19
|
parameters: {
|
|
20
20
|
query: {
|
|
21
|
-
/**
|
|
21
|
+
/** The project ID. */
|
|
22
22
|
projectId: string;
|
|
23
|
-
/**
|
|
23
|
+
/** The automation run ID. */
|
|
24
24
|
runId: string;
|
|
25
25
|
};
|
|
26
26
|
header?: never;
|
|
@@ -29,28 +29,28 @@ interface paths$2 {
|
|
|
29
29
|
};
|
|
30
30
|
requestBody?: never;
|
|
31
31
|
responses: {
|
|
32
|
-
/**
|
|
32
|
+
/** 200 response */
|
|
33
33
|
200: {
|
|
34
34
|
headers: {
|
|
35
35
|
[name: string]: unknown;
|
|
36
36
|
};
|
|
37
37
|
content: {
|
|
38
38
|
"application/json": {
|
|
39
|
-
/**
|
|
39
|
+
/** Log entries for the run. */
|
|
40
40
|
logs: {
|
|
41
41
|
/**
|
|
42
|
-
*
|
|
43
|
-
|
|
42
|
+
* Severity of the log entry.
|
|
43
|
+
|
|
44
44
|
*/
|
|
45
45
|
level: "info" | "warning" | "error";
|
|
46
|
-
/**
|
|
46
|
+
/** Log message text. */
|
|
47
47
|
message: string;
|
|
48
48
|
/**
|
|
49
49
|
* Format: date-time
|
|
50
|
-
*
|
|
50
|
+
* When the log entry was recorded.
|
|
51
51
|
*/
|
|
52
52
|
createdAt: string;
|
|
53
|
-
/**
|
|
53
|
+
/** Unique identifier for the log entry. */
|
|
54
54
|
id: string;
|
|
55
55
|
}[];
|
|
56
56
|
};
|
|
@@ -59,7 +59,7 @@ interface paths$2 {
|
|
|
59
59
|
400: components$2["responses"]["BadRequestError"];
|
|
60
60
|
401: components$2["responses"]["UnauthorizedError"];
|
|
61
61
|
403: components$2["responses"]["ForbiddenError"];
|
|
62
|
-
/**
|
|
62
|
+
/** Run not found in this project. */
|
|
63
63
|
404: {
|
|
64
64
|
headers: {
|
|
65
65
|
[name: string]: unknown;
|
|
@@ -73,7 +73,7 @@ interface paths$2 {
|
|
|
73
73
|
put?: never;
|
|
74
74
|
post?: never;
|
|
75
75
|
delete?: never;
|
|
76
|
-
/**
|
|
76
|
+
/** Handles preflight requests. This endpoint allows CORS. */
|
|
77
77
|
options: {
|
|
78
78
|
parameters: {
|
|
79
79
|
query?: never;
|
|
@@ -83,7 +83,7 @@ interface paths$2 {
|
|
|
83
83
|
};
|
|
84
84
|
requestBody?: never;
|
|
85
85
|
responses: {
|
|
86
|
-
/**
|
|
86
|
+
/** ok */
|
|
87
87
|
204: {
|
|
88
88
|
headers: {
|
|
89
89
|
[name: string]: unknown;
|
|
@@ -100,12 +100,12 @@ interface paths$2 {
|
|
|
100
100
|
interface components$2 {
|
|
101
101
|
schemas: {
|
|
102
102
|
Error: {
|
|
103
|
-
/**
|
|
103
|
+
/** Error message(s) that occurred while processing the request */
|
|
104
104
|
errorMessage?: string[] | string;
|
|
105
105
|
};
|
|
106
106
|
};
|
|
107
107
|
responses: {
|
|
108
|
-
/**
|
|
108
|
+
/** Request input validation failed */
|
|
109
109
|
BadRequestError: {
|
|
110
110
|
headers: {
|
|
111
111
|
[name: string]: unknown;
|
|
@@ -114,7 +114,7 @@ interface components$2 {
|
|
|
114
114
|
"application/json": components$2["schemas"]["Error"];
|
|
115
115
|
};
|
|
116
116
|
};
|
|
117
|
-
/**
|
|
117
|
+
/** API key or token was not valid */
|
|
118
118
|
UnauthorizedError: {
|
|
119
119
|
headers: {
|
|
120
120
|
[name: string]: unknown;
|
|
@@ -123,7 +123,7 @@ interface components$2 {
|
|
|
123
123
|
"application/json": components$2["schemas"]["Error"];
|
|
124
124
|
};
|
|
125
125
|
};
|
|
126
|
-
/**
|
|
126
|
+
/** Permission was denied */
|
|
127
127
|
ForbiddenError: {
|
|
128
128
|
headers: {
|
|
129
129
|
[name: string]: unknown;
|
|
@@ -132,14 +132,14 @@ interface components$2 {
|
|
|
132
132
|
"application/json": components$2["schemas"]["Error"];
|
|
133
133
|
};
|
|
134
134
|
};
|
|
135
|
-
/**
|
|
135
|
+
/** Too many requests in allowed time period */
|
|
136
136
|
RateLimitError: {
|
|
137
137
|
headers: {
|
|
138
138
|
[name: string]: unknown;
|
|
139
139
|
};
|
|
140
140
|
content?: never;
|
|
141
141
|
};
|
|
142
|
-
/**
|
|
142
|
+
/** Execution error occurred */
|
|
143
143
|
InternalServerError: {
|
|
144
144
|
headers: {
|
|
145
145
|
[name: string]: unknown;
|
|
@@ -163,22 +163,22 @@ interface paths$1 {
|
|
|
163
163
|
};
|
|
164
164
|
/**
|
|
165
165
|
* @deprecated
|
|
166
|
-
*
|
|
166
|
+
* Lists automation runs for a project, optionally filtered by automation and status.
|
|
167
167
|
*
|
|
168
168
|
* This is experimental functionality that is subject to change without notice.
|
|
169
169
|
*/
|
|
170
170
|
get: {
|
|
171
171
|
parameters: {
|
|
172
172
|
query: {
|
|
173
|
-
/**
|
|
173
|
+
/** The project ID. */
|
|
174
174
|
projectId: string;
|
|
175
|
-
/**
|
|
175
|
+
/** Filter to runs of a single automation. */
|
|
176
176
|
publicId?: string;
|
|
177
|
-
/**
|
|
177
|
+
/** Comma-separated list of statuses to include. Statuses: running, success, rejected, unauthorized, failure, timeout, cycleAborted. */
|
|
178
178
|
status?: string;
|
|
179
|
-
/**
|
|
179
|
+
/** Number of records to skip. */
|
|
180
180
|
offset?: number | null;
|
|
181
|
-
/**
|
|
181
|
+
/** Maximum number of records to return. */
|
|
182
182
|
limit?: number;
|
|
183
183
|
};
|
|
184
184
|
header?: never;
|
|
@@ -187,42 +187,42 @@ interface paths$1 {
|
|
|
187
187
|
};
|
|
188
188
|
requestBody?: never;
|
|
189
189
|
responses: {
|
|
190
|
-
/**
|
|
190
|
+
/** 200 response */
|
|
191
191
|
200: {
|
|
192
192
|
headers: {
|
|
193
193
|
[name: string]: unknown;
|
|
194
194
|
};
|
|
195
195
|
content: {
|
|
196
196
|
"application/json": {
|
|
197
|
-
/**
|
|
197
|
+
/** Matching automation runs. */
|
|
198
198
|
runs: {
|
|
199
|
-
/**
|
|
199
|
+
/** Unique identifier for the run. */
|
|
200
200
|
id: string;
|
|
201
|
-
/**
|
|
201
|
+
/** Public ID of the automation that was run. */
|
|
202
202
|
publicId: string;
|
|
203
|
-
/**
|
|
203
|
+
/** Name of the automation at run time. */
|
|
204
204
|
name: string;
|
|
205
205
|
/**
|
|
206
|
-
*
|
|
207
|
-
|
|
206
|
+
* Terminal or in-progress status of an automation run.
|
|
207
|
+
|
|
208
208
|
*/
|
|
209
209
|
status: "running" | "success" | "rejected" | "unauthorized" | "failure" | "timeout" | "cycleAborted";
|
|
210
|
-
/**
|
|
210
|
+
/** Input payload passed to the handler, or null for scheduled runs without input. */
|
|
211
211
|
input?: unknown;
|
|
212
212
|
/**
|
|
213
213
|
* Format: date-time
|
|
214
|
-
*
|
|
214
|
+
* When the run started.
|
|
215
215
|
*/
|
|
216
216
|
startedAt: string;
|
|
217
217
|
/**
|
|
218
218
|
* Format: date-time
|
|
219
|
-
*
|
|
219
|
+
* When the run finished, or null while still running.
|
|
220
220
|
*/
|
|
221
221
|
completedAt: string | null;
|
|
222
|
-
/**
|
|
222
|
+
/** Run duration in milliseconds, or null while still running. */
|
|
223
223
|
latencyMs: number | null;
|
|
224
224
|
}[];
|
|
225
|
-
/**
|
|
225
|
+
/** Total number of runs matching the filter. */
|
|
226
226
|
totalCount: number;
|
|
227
227
|
};
|
|
228
228
|
};
|
|
@@ -237,7 +237,7 @@ interface paths$1 {
|
|
|
237
237
|
put?: never;
|
|
238
238
|
/**
|
|
239
239
|
* @deprecated
|
|
240
|
-
*
|
|
240
|
+
* Triggers a one-off run of a scheduled automation, for testing.
|
|
241
241
|
*
|
|
242
242
|
* The run is identical to a real scheduled occurrence (same trigger context, no input, same machine
|
|
243
243
|
* identity) but is enqueued out of band: it does not advance the automation's schedule, and runs even
|
|
@@ -259,22 +259,22 @@ interface paths$1 {
|
|
|
259
259
|
requestBody: {
|
|
260
260
|
content: {
|
|
261
261
|
"application/json": {
|
|
262
|
-
/**
|
|
262
|
+
/** The project ID. */
|
|
263
263
|
projectId: string;
|
|
264
|
-
/**
|
|
264
|
+
/** The automation public ID. */
|
|
265
265
|
publicId: string;
|
|
266
266
|
};
|
|
267
267
|
};
|
|
268
268
|
};
|
|
269
269
|
responses: {
|
|
270
|
-
/**
|
|
270
|
+
/** 202 response */
|
|
271
271
|
202: {
|
|
272
272
|
headers: {
|
|
273
273
|
[name: string]: unknown;
|
|
274
274
|
};
|
|
275
275
|
content: {
|
|
276
276
|
"application/json": {
|
|
277
|
-
/**
|
|
277
|
+
/** ID of the enqueued run; poll the runs list to see its outcome. */
|
|
278
278
|
runId: string;
|
|
279
279
|
};
|
|
280
280
|
};
|
|
@@ -282,7 +282,7 @@ interface paths$1 {
|
|
|
282
282
|
400: components$1["responses"]["BadRequestError"];
|
|
283
283
|
401: components$1["responses"]["UnauthorizedError"];
|
|
284
284
|
403: components$1["responses"]["ForbiddenError"];
|
|
285
|
-
/**
|
|
285
|
+
/** Automation not found. */
|
|
286
286
|
404: {
|
|
287
287
|
headers: {
|
|
288
288
|
[name: string]: unknown;
|
|
@@ -294,7 +294,7 @@ interface paths$1 {
|
|
|
294
294
|
};
|
|
295
295
|
};
|
|
296
296
|
delete?: never;
|
|
297
|
-
/**
|
|
297
|
+
/** Handles preflight requests. This endpoint allows CORS. */
|
|
298
298
|
options: {
|
|
299
299
|
parameters: {
|
|
300
300
|
query?: never;
|
|
@@ -304,7 +304,7 @@ interface paths$1 {
|
|
|
304
304
|
};
|
|
305
305
|
requestBody?: never;
|
|
306
306
|
responses: {
|
|
307
|
-
/**
|
|
307
|
+
/** ok */
|
|
308
308
|
204: {
|
|
309
309
|
headers: {
|
|
310
310
|
[name: string]: unknown;
|
|
@@ -321,12 +321,12 @@ interface paths$1 {
|
|
|
321
321
|
interface components$1 {
|
|
322
322
|
schemas: {
|
|
323
323
|
Error: {
|
|
324
|
-
/**
|
|
324
|
+
/** Error message(s) that occurred while processing the request */
|
|
325
325
|
errorMessage?: string[] | string;
|
|
326
326
|
};
|
|
327
327
|
};
|
|
328
328
|
responses: {
|
|
329
|
-
/**
|
|
329
|
+
/** Request input validation failed */
|
|
330
330
|
BadRequestError: {
|
|
331
331
|
headers: {
|
|
332
332
|
[name: string]: unknown;
|
|
@@ -335,7 +335,7 @@ interface components$1 {
|
|
|
335
335
|
"application/json": components$1["schemas"]["Error"];
|
|
336
336
|
};
|
|
337
337
|
};
|
|
338
|
-
/**
|
|
338
|
+
/** API key or token was not valid */
|
|
339
339
|
UnauthorizedError: {
|
|
340
340
|
headers: {
|
|
341
341
|
[name: string]: unknown;
|
|
@@ -344,7 +344,7 @@ interface components$1 {
|
|
|
344
344
|
"application/json": components$1["schemas"]["Error"];
|
|
345
345
|
};
|
|
346
346
|
};
|
|
347
|
-
/**
|
|
347
|
+
/** Permission was denied */
|
|
348
348
|
ForbiddenError: {
|
|
349
349
|
headers: {
|
|
350
350
|
[name: string]: unknown;
|
|
@@ -353,14 +353,14 @@ interface components$1 {
|
|
|
353
353
|
"application/json": components$1["schemas"]["Error"];
|
|
354
354
|
};
|
|
355
355
|
};
|
|
356
|
-
/**
|
|
356
|
+
/** Too many requests in allowed time period */
|
|
357
357
|
RateLimitError: {
|
|
358
358
|
headers: {
|
|
359
359
|
[name: string]: unknown;
|
|
360
360
|
};
|
|
361
361
|
content?: never;
|
|
362
362
|
};
|
|
363
|
-
/**
|
|
363
|
+
/** Execution error occurred */
|
|
364
364
|
InternalServerError: {
|
|
365
365
|
headers: {
|
|
366
366
|
[name: string]: unknown;
|
|
@@ -384,16 +384,16 @@ interface paths {
|
|
|
384
384
|
};
|
|
385
385
|
/**
|
|
386
386
|
* @deprecated
|
|
387
|
-
*
|
|
387
|
+
* Lists the automations for a project.
|
|
388
388
|
*
|
|
389
389
|
* This is experimental functionality that is subject to change without notice.
|
|
390
390
|
*/
|
|
391
391
|
get: {
|
|
392
392
|
parameters: {
|
|
393
393
|
query: {
|
|
394
|
-
/**
|
|
394
|
+
/** The project ID. */
|
|
395
395
|
projectId: string;
|
|
396
|
-
/**
|
|
396
|
+
/** Comma-separated list of automation public IDs to return. Omit to return all. */
|
|
397
397
|
automationIDs?: string;
|
|
398
398
|
};
|
|
399
399
|
header?: never;
|
|
@@ -402,84 +402,84 @@ interface paths {
|
|
|
402
402
|
};
|
|
403
403
|
requestBody?: never;
|
|
404
404
|
responses: {
|
|
405
|
-
/**
|
|
405
|
+
/** 200 response */
|
|
406
406
|
200: {
|
|
407
407
|
headers: {
|
|
408
408
|
[name: string]: unknown;
|
|
409
409
|
};
|
|
410
410
|
content: {
|
|
411
411
|
"application/json": {
|
|
412
|
-
/**
|
|
412
|
+
/** Automations configured for the project. */
|
|
413
413
|
automations: {
|
|
414
|
-
/**
|
|
414
|
+
/** Stable public identifier for the automation. */
|
|
415
415
|
publicId: string;
|
|
416
|
-
/**
|
|
416
|
+
/** Display name of the automation. */
|
|
417
417
|
name: string;
|
|
418
|
-
/**
|
|
418
|
+
/** Optional description. */
|
|
419
419
|
description: string | null;
|
|
420
420
|
/**
|
|
421
|
-
*
|
|
422
|
-
|
|
421
|
+
* How the automation behaves: a bundled TypeScript handler, or Scout instructions.
|
|
422
|
+
|
|
423
423
|
*/
|
|
424
424
|
kind: "typescript" | "scout";
|
|
425
|
-
/**
|
|
425
|
+
/** The stored instructions for a `scout` automation; null for any other kind. */
|
|
426
426
|
instructions: string | null;
|
|
427
|
-
/**
|
|
427
|
+
/** The triggers this automation subscribes to. */
|
|
428
428
|
triggers: {
|
|
429
|
-
/**
|
|
429
|
+
/** How the automation is triggered. */
|
|
430
430
|
config: {
|
|
431
431
|
/**
|
|
432
|
-
*
|
|
433
|
-
|
|
432
|
+
* The internal webhook event name that triggers this automation.
|
|
433
|
+
|
|
434
434
|
*/
|
|
435
435
|
type: "asset.deleted" | "asset.published" | "composition.changed" | "composition.deleted" | "composition.published" | "composition.release.changed" | "composition.release.deleted" | "composition.release.published" | "composition.release.restored" | "entry.changed" | "entry.deleted" | "entry.published" | "entry.release.changed" | "entry.release.deleted" | "entry.release.published" | "entry.release.restored" | "manifest.published" | "notification.created" | "projectmap.delete" | "projectmap.node.delete" | "projectmap.node.insert" | "projectmap.node.update" | "projectmap.update" | "redirect.delete" | "redirect.insert" | "redirect.update" | "release.changed" | "release.deleted" | "release.launch_started" | "release.launched" | "workflow.transition";
|
|
436
|
-
/**
|
|
436
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
437
437
|
filter?: string;
|
|
438
438
|
} | {
|
|
439
439
|
/** @enum {string} */
|
|
440
440
|
type: "schedule";
|
|
441
|
-
/**
|
|
441
|
+
/** RFC 5545 recurrence rule for when the automation runs. */
|
|
442
442
|
rrule: string;
|
|
443
|
-
/**
|
|
443
|
+
/** IANA timezone used to evaluate the recurrence rule. */
|
|
444
444
|
timezone: string;
|
|
445
445
|
} | {
|
|
446
446
|
/** @enum {string} */
|
|
447
447
|
type: "incomingWebhook";
|
|
448
|
-
/**
|
|
448
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
449
449
|
filter?: string;
|
|
450
450
|
} | {
|
|
451
451
|
/** @enum {string} */
|
|
452
452
|
type: "aiTool";
|
|
453
|
-
/**
|
|
453
|
+
/** JSON Schema describing the AI tool arguments. */
|
|
454
454
|
inputSchema: {
|
|
455
455
|
[key: string]: unknown;
|
|
456
456
|
};
|
|
457
457
|
};
|
|
458
458
|
/**
|
|
459
459
|
* Format: date-time
|
|
460
|
-
*
|
|
460
|
+
* Next upcoming run for this trigger; null for non-schedule triggers.
|
|
461
461
|
*/
|
|
462
462
|
nextRunAt: string | null;
|
|
463
463
|
}[];
|
|
464
|
-
/**
|
|
464
|
+
/** Whether the automation is enabled. */
|
|
465
465
|
enabled: boolean;
|
|
466
466
|
/**
|
|
467
467
|
* Format: date-time
|
|
468
|
-
*
|
|
468
|
+
* When the automation code was last deployed.
|
|
469
469
|
*/
|
|
470
470
|
lastDeployedAt: string;
|
|
471
|
-
/**
|
|
471
|
+
/** User ID of the last deployer. */
|
|
472
472
|
lastDeployedBy: string;
|
|
473
473
|
/**
|
|
474
474
|
* Format: date-time
|
|
475
|
-
*
|
|
475
|
+
* When the automation was first created.
|
|
476
476
|
*/
|
|
477
477
|
createdAt: string;
|
|
478
|
-
/**
|
|
478
|
+
/** User ID of the creator. */
|
|
479
479
|
createdBy: string;
|
|
480
|
-
/**
|
|
480
|
+
/** Machine identity for the automation, or null if it has none. */
|
|
481
481
|
identity: {
|
|
482
|
-
/**
|
|
482
|
+
/** Role public IDs granted to the automation identity, keyed by project ID. */
|
|
483
483
|
projects: {
|
|
484
484
|
[key: string]: string[];
|
|
485
485
|
};
|
|
@@ -497,7 +497,7 @@ interface paths {
|
|
|
497
497
|
};
|
|
498
498
|
/**
|
|
499
499
|
* @deprecated
|
|
500
|
-
*
|
|
500
|
+
* Deploys (creates or updates) an automation.
|
|
501
501
|
*
|
|
502
502
|
* Set `kind` to `typescript` to deploy a bundled handler module, or to `scout` to have the automation run the Scout agent against stored natural-language instructions on each trigger.
|
|
503
503
|
*
|
|
@@ -513,120 +513,120 @@ interface paths {
|
|
|
513
513
|
requestBody: {
|
|
514
514
|
content: {
|
|
515
515
|
"application/json": {
|
|
516
|
-
/**
|
|
516
|
+
/** The project ID. */
|
|
517
517
|
projectId: string;
|
|
518
|
-
/**
|
|
518
|
+
/** Stable public identifier for the automation. */
|
|
519
519
|
publicId: string;
|
|
520
|
-
/**
|
|
520
|
+
/** Display name of the automation. */
|
|
521
521
|
name: string;
|
|
522
|
-
/**
|
|
522
|
+
/** For automations triggered as an AI tool, this is used to determine when an LLM should call the automation. For other triggers, this is for your reference and optional. */
|
|
523
523
|
description?: string;
|
|
524
|
-
/**
|
|
524
|
+
/** The triggers this automation subscribes to. */
|
|
525
525
|
triggers: ({
|
|
526
526
|
/**
|
|
527
|
-
*
|
|
528
|
-
|
|
527
|
+
* The internal webhook event name that triggers this automation.
|
|
528
|
+
|
|
529
529
|
*/
|
|
530
530
|
type: "asset.deleted" | "asset.published" | "composition.changed" | "composition.deleted" | "composition.published" | "composition.release.changed" | "composition.release.deleted" | "composition.release.published" | "composition.release.restored" | "entry.changed" | "entry.deleted" | "entry.published" | "entry.release.changed" | "entry.release.deleted" | "entry.release.published" | "entry.release.restored" | "manifest.published" | "notification.created" | "projectmap.delete" | "projectmap.node.delete" | "projectmap.node.insert" | "projectmap.node.update" | "projectmap.update" | "redirect.delete" | "redirect.insert" | "redirect.update" | "release.changed" | "release.deleted" | "release.launch_started" | "release.launched" | "workflow.transition";
|
|
531
|
-
/**
|
|
531
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
532
532
|
filter?: string;
|
|
533
533
|
} | {
|
|
534
534
|
/** @enum {string} */
|
|
535
535
|
type: "schedule";
|
|
536
|
-
/**
|
|
536
|
+
/** RFC 5545 recurrence rule for when the automation runs. */
|
|
537
537
|
rrule: string;
|
|
538
|
-
/**
|
|
538
|
+
/** IANA timezone used to evaluate the recurrence rule. */
|
|
539
539
|
timezone: string;
|
|
540
540
|
} | {
|
|
541
541
|
/** @enum {string} */
|
|
542
542
|
type: "incomingWebhook";
|
|
543
|
-
/**
|
|
543
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
544
544
|
filter?: string;
|
|
545
545
|
} | {
|
|
546
546
|
/** @enum {string} */
|
|
547
547
|
type: "aiTool";
|
|
548
|
-
/**
|
|
548
|
+
/** JSON Schema describing the AI tool arguments. */
|
|
549
549
|
inputSchema: {
|
|
550
550
|
[key: string]: unknown;
|
|
551
551
|
};
|
|
552
552
|
})[];
|
|
553
|
-
/**
|
|
553
|
+
/** Role grants for the automation identity. The caller must hold each requested role (or be a team admin). When omitted, the automation will not receive Uniform API access credentials. */
|
|
554
554
|
permissions?: {
|
|
555
|
-
/**
|
|
555
|
+
/** Role grant(s) on the project the automation is deployed to. */
|
|
556
556
|
role: string | string[];
|
|
557
|
-
/**
|
|
557
|
+
/** Additional project role grants keyed by project ID for cross-project access within the same team. */
|
|
558
558
|
projects?: {
|
|
559
559
|
[key: string]: string | string[];
|
|
560
560
|
};
|
|
561
561
|
};
|
|
562
562
|
/**
|
|
563
|
-
*
|
|
564
|
-
|
|
563
|
+
* Runs a bundled TypeScript handler module.
|
|
564
|
+
|
|
565
565
|
*/
|
|
566
566
|
kind: "typescript";
|
|
567
|
-
/**
|
|
567
|
+
/** Bundled JavaScript module for the automation handler. */
|
|
568
568
|
code: string;
|
|
569
|
-
/**
|
|
569
|
+
/** Target date for runtime compatibility. Runtime changes after this date may not apply to this automation. */
|
|
570
570
|
compatibilityDate?: string;
|
|
571
571
|
} | {
|
|
572
|
-
/**
|
|
572
|
+
/** The project ID. */
|
|
573
573
|
projectId: string;
|
|
574
|
-
/**
|
|
574
|
+
/** Stable public identifier for the automation. */
|
|
575
575
|
publicId: string;
|
|
576
|
-
/**
|
|
576
|
+
/** Display name of the automation. */
|
|
577
577
|
name: string;
|
|
578
|
-
/**
|
|
578
|
+
/** For automations triggered as an AI tool, this is used to determine when an LLM should call the automation. For other triggers, this is for your reference and optional. */
|
|
579
579
|
description?: string;
|
|
580
|
-
/**
|
|
580
|
+
/** The triggers this automation subscribes to. */
|
|
581
581
|
triggers: ({
|
|
582
582
|
/**
|
|
583
|
-
*
|
|
584
|
-
|
|
583
|
+
* The internal webhook event name that triggers this automation.
|
|
584
|
+
|
|
585
585
|
*/
|
|
586
586
|
type: "asset.deleted" | "asset.published" | "composition.changed" | "composition.deleted" | "composition.published" | "composition.release.changed" | "composition.release.deleted" | "composition.release.published" | "composition.release.restored" | "entry.changed" | "entry.deleted" | "entry.published" | "entry.release.changed" | "entry.release.deleted" | "entry.release.published" | "entry.release.restored" | "manifest.published" | "notification.created" | "projectmap.delete" | "projectmap.node.delete" | "projectmap.node.insert" | "projectmap.node.update" | "projectmap.update" | "redirect.delete" | "redirect.insert" | "redirect.update" | "release.changed" | "release.deleted" | "release.launch_started" | "release.launched" | "workflow.transition";
|
|
587
|
-
/**
|
|
587
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
588
588
|
filter?: string;
|
|
589
589
|
} | {
|
|
590
590
|
/** @enum {string} */
|
|
591
591
|
type: "schedule";
|
|
592
|
-
/**
|
|
592
|
+
/** RFC 5545 recurrence rule for when the automation runs. */
|
|
593
593
|
rrule: string;
|
|
594
|
-
/**
|
|
594
|
+
/** IANA timezone used to evaluate the recurrence rule. */
|
|
595
595
|
timezone: string;
|
|
596
596
|
} | {
|
|
597
597
|
/** @enum {string} */
|
|
598
598
|
type: "incomingWebhook";
|
|
599
|
-
/**
|
|
599
|
+
/** Optional CEL boolean expression evaluated against { input, trigger }; the automation runs only when it is true. */
|
|
600
600
|
filter?: string;
|
|
601
601
|
} | {
|
|
602
602
|
/** @enum {string} */
|
|
603
603
|
type: "aiTool";
|
|
604
|
-
/**
|
|
604
|
+
/** JSON Schema describing the AI tool arguments. */
|
|
605
605
|
inputSchema: {
|
|
606
606
|
[key: string]: unknown;
|
|
607
607
|
};
|
|
608
608
|
})[];
|
|
609
|
-
/**
|
|
609
|
+
/** Role grants for the automation identity. The caller must hold each requested role (or be a team admin). Required: a Scout automation acts solely through its machine identity, so without a role grant it has no authority to act. */
|
|
610
610
|
permissions: {
|
|
611
|
-
/**
|
|
611
|
+
/** Role grant(s) on the project the automation is deployed to. */
|
|
612
612
|
role: string | string[];
|
|
613
|
-
/**
|
|
613
|
+
/** Additional project role grants keyed by project ID for cross-project access within the same team. */
|
|
614
614
|
projects?: {
|
|
615
615
|
[key: string]: string | string[];
|
|
616
616
|
};
|
|
617
617
|
};
|
|
618
618
|
/**
|
|
619
|
-
*
|
|
620
|
-
|
|
619
|
+
* Runs the Scout agent headlessly against stored instructions.
|
|
620
|
+
|
|
621
621
|
*/
|
|
622
622
|
kind: "scout";
|
|
623
|
-
/**
|
|
623
|
+
/** The instructions Scout runs on each trigger. */
|
|
624
624
|
instructions: string;
|
|
625
625
|
};
|
|
626
626
|
};
|
|
627
627
|
};
|
|
628
628
|
responses: {
|
|
629
|
-
/**
|
|
629
|
+
/** Deploy successful */
|
|
630
630
|
204: {
|
|
631
631
|
headers: {
|
|
632
632
|
[name: string]: unknown;
|
|
@@ -643,7 +643,7 @@ interface paths {
|
|
|
643
643
|
post?: never;
|
|
644
644
|
/**
|
|
645
645
|
* @deprecated
|
|
646
|
-
*
|
|
646
|
+
* Deletes an automation and its run history.
|
|
647
647
|
*
|
|
648
648
|
* This is experimental functionality that is subject to change without notice.
|
|
649
649
|
*/
|
|
@@ -657,15 +657,15 @@ interface paths {
|
|
|
657
657
|
requestBody: {
|
|
658
658
|
content: {
|
|
659
659
|
"application/json": {
|
|
660
|
-
/**
|
|
660
|
+
/** The project ID. */
|
|
661
661
|
projectId: string;
|
|
662
|
-
/**
|
|
662
|
+
/** The automation public ID. */
|
|
663
663
|
publicId: string;
|
|
664
664
|
};
|
|
665
665
|
};
|
|
666
666
|
};
|
|
667
667
|
responses: {
|
|
668
|
-
/**
|
|
668
|
+
/** Delete successful */
|
|
669
669
|
204: {
|
|
670
670
|
headers: {
|
|
671
671
|
[name: string]: unknown;
|
|
@@ -675,7 +675,7 @@ interface paths {
|
|
|
675
675
|
400: components["responses"]["BadRequestError"];
|
|
676
676
|
401: components["responses"]["UnauthorizedError"];
|
|
677
677
|
403: components["responses"]["ForbiddenError"];
|
|
678
|
-
/**
|
|
678
|
+
/** Automation not found */
|
|
679
679
|
404: {
|
|
680
680
|
headers: {
|
|
681
681
|
[name: string]: unknown;
|
|
@@ -686,7 +686,7 @@ interface paths {
|
|
|
686
686
|
500: components["responses"]["InternalServerError"];
|
|
687
687
|
};
|
|
688
688
|
};
|
|
689
|
-
/**
|
|
689
|
+
/** Handles preflight requests. This endpoint allows CORS. */
|
|
690
690
|
options: {
|
|
691
691
|
parameters: {
|
|
692
692
|
query?: never;
|
|
@@ -696,7 +696,7 @@ interface paths {
|
|
|
696
696
|
};
|
|
697
697
|
requestBody?: never;
|
|
698
698
|
responses: {
|
|
699
|
-
/**
|
|
699
|
+
/** ok */
|
|
700
700
|
204: {
|
|
701
701
|
headers: {
|
|
702
702
|
[name: string]: unknown;
|
|
@@ -708,7 +708,7 @@ interface paths {
|
|
|
708
708
|
head?: never;
|
|
709
709
|
/**
|
|
710
710
|
* @deprecated
|
|
711
|
-
*
|
|
711
|
+
* Toggles the enabled state of an automation. Disabled automations do not run when their trigger occurs.
|
|
712
712
|
*
|
|
713
713
|
* This is experimental functionality that is subject to change without notice.
|
|
714
714
|
*/
|
|
@@ -722,17 +722,17 @@ interface paths {
|
|
|
722
722
|
requestBody: {
|
|
723
723
|
content: {
|
|
724
724
|
"application/json": {
|
|
725
|
-
/**
|
|
725
|
+
/** The project ID. */
|
|
726
726
|
projectId: string;
|
|
727
|
-
/**
|
|
727
|
+
/** The automation public ID. */
|
|
728
728
|
publicId: string;
|
|
729
|
-
/**
|
|
729
|
+
/** Whether the automation should be enabled. */
|
|
730
730
|
enabled: boolean;
|
|
731
731
|
};
|
|
732
732
|
};
|
|
733
733
|
};
|
|
734
734
|
responses: {
|
|
735
|
-
/**
|
|
735
|
+
/** Toggle successful */
|
|
736
736
|
204: {
|
|
737
737
|
headers: {
|
|
738
738
|
[name: string]: unknown;
|
|
@@ -742,7 +742,7 @@ interface paths {
|
|
|
742
742
|
400: components["responses"]["BadRequestError"];
|
|
743
743
|
401: components["responses"]["UnauthorizedError"];
|
|
744
744
|
403: components["responses"]["ForbiddenError"];
|
|
745
|
-
/**
|
|
745
|
+
/** Automation not found */
|
|
746
746
|
404: {
|
|
747
747
|
headers: {
|
|
748
748
|
[name: string]: unknown;
|
|
@@ -759,12 +759,12 @@ interface paths {
|
|
|
759
759
|
interface components {
|
|
760
760
|
schemas: {
|
|
761
761
|
Error: {
|
|
762
|
-
/**
|
|
762
|
+
/** Error message(s) that occurred while processing the request */
|
|
763
763
|
errorMessage?: string[] | string;
|
|
764
764
|
};
|
|
765
765
|
};
|
|
766
766
|
responses: {
|
|
767
|
-
/**
|
|
767
|
+
/** Request input validation failed */
|
|
768
768
|
BadRequestError: {
|
|
769
769
|
headers: {
|
|
770
770
|
[name: string]: unknown;
|
|
@@ -773,7 +773,7 @@ interface components {
|
|
|
773
773
|
"application/json": components["schemas"]["Error"];
|
|
774
774
|
};
|
|
775
775
|
};
|
|
776
|
-
/**
|
|
776
|
+
/** API key or token was not valid */
|
|
777
777
|
UnauthorizedError: {
|
|
778
778
|
headers: {
|
|
779
779
|
[name: string]: unknown;
|
|
@@ -782,7 +782,7 @@ interface components {
|
|
|
782
782
|
"application/json": components["schemas"]["Error"];
|
|
783
783
|
};
|
|
784
784
|
};
|
|
785
|
-
/**
|
|
785
|
+
/** Permission was denied */
|
|
786
786
|
ForbiddenError: {
|
|
787
787
|
headers: {
|
|
788
788
|
[name: string]: unknown;
|
|
@@ -791,14 +791,14 @@ interface components {
|
|
|
791
791
|
"application/json": components["schemas"]["Error"];
|
|
792
792
|
};
|
|
793
793
|
};
|
|
794
|
-
/**
|
|
794
|
+
/** Too many requests in allowed time period */
|
|
795
795
|
RateLimitError: {
|
|
796
796
|
headers: {
|
|
797
797
|
[name: string]: unknown;
|
|
798
798
|
};
|
|
799
799
|
content?: never;
|
|
800
800
|
};
|
|
801
|
-
/**
|
|
801
|
+
/** Execution error occurred */
|
|
802
802
|
InternalServerError: {
|
|
803
803
|
headers: {
|
|
804
804
|
[name: string]: unknown;
|
package/dist/index.d.mts
CHANGED
|
@@ -438,18 +438,18 @@ interface paths {
|
|
|
438
438
|
};
|
|
439
439
|
/**
|
|
440
440
|
* @deprecated
|
|
441
|
-
*
|
|
441
|
+
* Lists the current user's notifications. Results are cursor-paginated newest-first and may be scoped to the current team. Omit teamId to list every notification for the caller.
|
|
442
442
|
*/
|
|
443
443
|
get: {
|
|
444
444
|
parameters: {
|
|
445
445
|
query?: {
|
|
446
|
-
/**
|
|
446
|
+
/** Opaque cursor returned by the previous response. Omit to read the newest page of notifications. */
|
|
447
447
|
cursor?: string;
|
|
448
|
-
/**
|
|
448
|
+
/** When true, only unread notifications are returned. */
|
|
449
449
|
unreadOnly?: boolean | null;
|
|
450
|
-
/**
|
|
450
|
+
/** Optional team scope. Use teamId to limit results to one team. */
|
|
451
451
|
teamId?: string;
|
|
452
|
-
/**
|
|
452
|
+
/** Maximum number of notifications to return. Defaults to 50. */
|
|
453
453
|
limit?: number;
|
|
454
454
|
};
|
|
455
455
|
header?: never;
|
|
@@ -458,7 +458,7 @@ interface paths {
|
|
|
458
458
|
};
|
|
459
459
|
requestBody?: never;
|
|
460
460
|
responses: {
|
|
461
|
-
/**
|
|
461
|
+
/** OK */
|
|
462
462
|
200: {
|
|
463
463
|
headers: {
|
|
464
464
|
[name: string]: unknown;
|
|
@@ -468,8 +468,8 @@ interface paths {
|
|
|
468
468
|
notifications: {
|
|
469
469
|
id: string;
|
|
470
470
|
/**
|
|
471
|
-
*
|
|
472
|
-
|
|
471
|
+
* The notification content type. Currently, only text notifications are supported.
|
|
472
|
+
|
|
473
473
|
*/
|
|
474
474
|
type: "text";
|
|
475
475
|
teamId: string;
|
|
@@ -527,7 +527,7 @@ interface paths {
|
|
|
527
527
|
put?: never;
|
|
528
528
|
/**
|
|
529
529
|
* @deprecated
|
|
530
|
-
*
|
|
530
|
+
* Creates a project-scoped notification for recipients who belong to the project's team. The caller must have access to the project. A missing or inaccessible project returns 404.
|
|
531
531
|
*/
|
|
532
532
|
post: {
|
|
533
533
|
parameters: {
|
|
@@ -541,9 +541,9 @@ interface paths {
|
|
|
541
541
|
"application/json": {
|
|
542
542
|
recipients: string[];
|
|
543
543
|
/**
|
|
544
|
-
*
|
|
545
|
-
* @
|
|
546
|
-
|
|
544
|
+
* The notification content type. Currently, only text notifications are supported.
|
|
545
|
+
* @defaultValue text
|
|
546
|
+
|
|
547
547
|
*/
|
|
548
548
|
type?: "text";
|
|
549
549
|
summary: {
|
|
@@ -577,7 +577,7 @@ interface paths {
|
|
|
577
577
|
};
|
|
578
578
|
};
|
|
579
579
|
responses: {
|
|
580
|
-
/**
|
|
580
|
+
/** Created */
|
|
581
581
|
201: {
|
|
582
582
|
headers: {
|
|
583
583
|
[name: string]: unknown;
|
|
@@ -586,8 +586,8 @@ interface paths {
|
|
|
586
586
|
"application/json": {
|
|
587
587
|
id: string;
|
|
588
588
|
/**
|
|
589
|
-
*
|
|
590
|
-
|
|
589
|
+
* The notification content type. Currently, only text notifications are supported.
|
|
590
|
+
|
|
591
591
|
*/
|
|
592
592
|
type: "text";
|
|
593
593
|
teamId: string;
|
|
@@ -635,7 +635,7 @@ interface paths {
|
|
|
635
635
|
400: components["responses"]["BadRequestError"];
|
|
636
636
|
401: components["responses"]["UnauthorizedError"];
|
|
637
637
|
403: components["responses"]["ForbiddenError"];
|
|
638
|
-
/**
|
|
638
|
+
/** Project not found or inaccessible to the caller */
|
|
639
639
|
404: {
|
|
640
640
|
headers: {
|
|
641
641
|
[name: string]: unknown;
|
|
@@ -647,7 +647,7 @@ interface paths {
|
|
|
647
647
|
};
|
|
648
648
|
};
|
|
649
649
|
delete?: never;
|
|
650
|
-
/**
|
|
650
|
+
/** Handles preflight requests. This endpoint allows CORS. */
|
|
651
651
|
options: {
|
|
652
652
|
parameters: {
|
|
653
653
|
query?: never;
|
|
@@ -657,7 +657,7 @@ interface paths {
|
|
|
657
657
|
};
|
|
658
658
|
requestBody?: never;
|
|
659
659
|
responses: {
|
|
660
|
-
/**
|
|
660
|
+
/** ok */
|
|
661
661
|
204: {
|
|
662
662
|
headers: {
|
|
663
663
|
[name: string]: unknown;
|
|
@@ -669,7 +669,7 @@ interface paths {
|
|
|
669
669
|
head?: never;
|
|
670
670
|
/**
|
|
671
671
|
* @deprecated
|
|
672
|
-
*
|
|
672
|
+
* Updates read state for the current user's notifications. Use target: ids to update specific notifications, or target: all to mark all notifications as read. Read-all may be scoped to a team.
|
|
673
673
|
*/
|
|
674
674
|
patch: {
|
|
675
675
|
parameters: {
|
|
@@ -693,7 +693,7 @@ interface paths {
|
|
|
693
693
|
};
|
|
694
694
|
};
|
|
695
695
|
responses: {
|
|
696
|
-
/**
|
|
696
|
+
/** No Content */
|
|
697
697
|
204: {
|
|
698
698
|
headers: {
|
|
699
699
|
[name: string]: unknown;
|
|
@@ -715,12 +715,12 @@ interface paths {
|
|
|
715
715
|
interface components {
|
|
716
716
|
schemas: {
|
|
717
717
|
Error: {
|
|
718
|
-
/**
|
|
718
|
+
/** Error message(s) that occurred while processing the request */
|
|
719
719
|
errorMessage?: string[] | string;
|
|
720
720
|
};
|
|
721
721
|
};
|
|
722
722
|
responses: {
|
|
723
|
-
/**
|
|
723
|
+
/** Request input validation failed */
|
|
724
724
|
BadRequestError: {
|
|
725
725
|
headers: {
|
|
726
726
|
[name: string]: unknown;
|
|
@@ -729,7 +729,7 @@ interface components {
|
|
|
729
729
|
"application/json": components["schemas"]["Error"];
|
|
730
730
|
};
|
|
731
731
|
};
|
|
732
|
-
/**
|
|
732
|
+
/** API key or token was not valid */
|
|
733
733
|
UnauthorizedError: {
|
|
734
734
|
headers: {
|
|
735
735
|
[name: string]: unknown;
|
|
@@ -738,7 +738,7 @@ interface components {
|
|
|
738
738
|
"application/json": components["schemas"]["Error"];
|
|
739
739
|
};
|
|
740
740
|
};
|
|
741
|
-
/**
|
|
741
|
+
/** Permission was denied */
|
|
742
742
|
ForbiddenError: {
|
|
743
743
|
headers: {
|
|
744
744
|
[name: string]: unknown;
|
|
@@ -747,14 +747,14 @@ interface components {
|
|
|
747
747
|
"application/json": components["schemas"]["Error"];
|
|
748
748
|
};
|
|
749
749
|
};
|
|
750
|
-
/**
|
|
750
|
+
/** Too many requests in allowed time period */
|
|
751
751
|
RateLimitError: {
|
|
752
752
|
headers: {
|
|
753
753
|
[name: string]: unknown;
|
|
754
754
|
};
|
|
755
755
|
content?: never;
|
|
756
756
|
};
|
|
757
|
-
/**
|
|
757
|
+
/** Execution error occurred */
|
|
758
758
|
InternalServerError: {
|
|
759
759
|
headers: {
|
|
760
760
|
[name: string]: unknown;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@uniformdev/automations-sdk",
|
|
3
|
-
"version": "20.
|
|
3
|
+
"version": "20.76.2",
|
|
4
4
|
"description": "Uniform Automations SDK",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"exports": {
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@standard-schema/spec": "^1.1.0",
|
|
43
|
-
"@uniformdev/context": "20.
|
|
44
|
-
"@uniformdev/webhooks": "20.
|
|
43
|
+
"@uniformdev/context": "20.76.2",
|
|
44
|
+
"@uniformdev/webhooks": "20.76.2"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"ai": "^6.0.0",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"publishConfig": {
|
|
63
63
|
"access": "public"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "d977f0afc2aa754b18053d9455e007712e712dbb"
|
|
66
66
|
}
|