@superartifacts/sdk 0.0.0-stage → 0.1.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/LICENSE +21 -0
- package/README.md +149 -2
- package/dist/index.cjs +785 -0
- package/dist/index.d.cts +2389 -0
- package/dist/index.d.ts +2389 -0
- package/dist/index.js +742 -0
- package/package.json +58 -4
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,2389 @@
|
|
|
1
|
+
declare const VERSION = "0.1.0";
|
|
2
|
+
interface ClientOptions {
|
|
3
|
+
/** Defaults to the SUPERARTIFACTS_API_KEY environment variable. */
|
|
4
|
+
apiKey?: string;
|
|
5
|
+
baseUrl?: string;
|
|
6
|
+
/** Milliseconds per attempt. */
|
|
7
|
+
timeout?: number;
|
|
8
|
+
maxRetries?: number;
|
|
9
|
+
fetch?: typeof globalThis.fetch;
|
|
10
|
+
/** The API refuses browsers, so this only helps behind your own proxy. */
|
|
11
|
+
dangerouslyAllowBrowser?: boolean;
|
|
12
|
+
}
|
|
13
|
+
interface RequestOptions {
|
|
14
|
+
/** Every POST gets a fresh one. `false` sends none, and a failed POST is then not retried. */
|
|
15
|
+
idempotencyKey?: string | false;
|
|
16
|
+
timeout?: number;
|
|
17
|
+
signal?: AbortSignal;
|
|
18
|
+
headers?: Record<string, string>;
|
|
19
|
+
}
|
|
20
|
+
/** One operation of the API, as the generated layer describes it. */
|
|
21
|
+
interface Operation {
|
|
22
|
+
method: string;
|
|
23
|
+
path: string;
|
|
24
|
+
/** The path names travel in the path and these in the query; the rest is the body. */
|
|
25
|
+
query: readonly string[];
|
|
26
|
+
/** A destructive DELETE repeats this path name as `?confirm=`. */
|
|
27
|
+
confirm?: string;
|
|
28
|
+
}
|
|
29
|
+
type Body<Op> = Op extends {
|
|
30
|
+
requestBody?: {
|
|
31
|
+
content: {
|
|
32
|
+
'application/json': infer B;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
} ? B : object;
|
|
36
|
+
type Path<Op> = Op extends {
|
|
37
|
+
parameters: {
|
|
38
|
+
path: infer P;
|
|
39
|
+
};
|
|
40
|
+
} ? P : object;
|
|
41
|
+
type Query<Op> = Op extends {
|
|
42
|
+
parameters: {
|
|
43
|
+
query?: infer Q;
|
|
44
|
+
};
|
|
45
|
+
} ? [NonNullable<Q>] extends [never] ? object : NonNullable<Q> : object;
|
|
46
|
+
/** Path, query and body fields of an operation, in one object. */
|
|
47
|
+
type Params<Op> = Path<Op> & Query<Op> & Body<Op>;
|
|
48
|
+
type Result<Op> = Op extends {
|
|
49
|
+
responses: {
|
|
50
|
+
200: {
|
|
51
|
+
content: {
|
|
52
|
+
'application/json': infer R;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
} ? R : unknown;
|
|
57
|
+
declare class Core {
|
|
58
|
+
#private;
|
|
59
|
+
constructor(options?: ClientOptions);
|
|
60
|
+
/** Call one operation with its fields in one object. The generated resources all land here. */
|
|
61
|
+
call(operation: Operation, params?: object, options?: RequestOptions): Promise<Record<string, unknown>>;
|
|
62
|
+
/**
|
|
63
|
+
* PUT staged bytes, one file at a time. The URL is the credential, so no key goes with
|
|
64
|
+
* it, and it takes the same bytes twice, so it is always safe to repeat.
|
|
65
|
+
*/
|
|
66
|
+
putFiles(targets: readonly {
|
|
67
|
+
url: string;
|
|
68
|
+
}[], files: readonly Blob[], options?: RequestOptions): Promise<void>;
|
|
69
|
+
/** One request with the retry rules. A 429 ran nothing, so it repeats whatever `repeatable` says. */
|
|
70
|
+
protected send(url: URL | string, init: RequestInit, repeatable: boolean, options?: RequestOptions): Promise<Record<string, unknown>>;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/** Anything this SDK throws for a failed call. `status` is 0 when no answer arrived. */
|
|
74
|
+
declare class SuperArtifactsError extends Error {
|
|
75
|
+
readonly status: number;
|
|
76
|
+
/** Stable and machine-readable; `message` is for a person. */
|
|
77
|
+
readonly code: string;
|
|
78
|
+
/** Seconds the API asked to wait. */
|
|
79
|
+
readonly retryAfter?: number;
|
|
80
|
+
/** Everything else the API said, e.g. `fix` or `approvalUrl`. */
|
|
81
|
+
readonly details: Record<string, unknown>;
|
|
82
|
+
constructor(status: number, code: string, message: string, retryAfter?: number, details?: Record<string, unknown>, options?: ErrorOptions);
|
|
83
|
+
}
|
|
84
|
+
declare class InvalidArgumentsError extends SuperArtifactsError {
|
|
85
|
+
}
|
|
86
|
+
declare class AuthenticationError extends SuperArtifactsError {
|
|
87
|
+
}
|
|
88
|
+
declare class PlanLimitError extends SuperArtifactsError {
|
|
89
|
+
}
|
|
90
|
+
declare class PermissionError extends SuperArtifactsError {
|
|
91
|
+
}
|
|
92
|
+
declare class ScopeRequiredError extends SuperArtifactsError {
|
|
93
|
+
}
|
|
94
|
+
declare class NotFoundError extends SuperArtifactsError {
|
|
95
|
+
}
|
|
96
|
+
declare class ConflictError extends SuperArtifactsError {
|
|
97
|
+
}
|
|
98
|
+
declare class PayloadTooLargeError extends SuperArtifactsError {
|
|
99
|
+
}
|
|
100
|
+
declare class RateLimitError extends SuperArtifactsError {
|
|
101
|
+
}
|
|
102
|
+
declare class InternalError extends SuperArtifactsError {
|
|
103
|
+
}
|
|
104
|
+
/** The request never got an answer. */
|
|
105
|
+
declare class ConnectionError extends SuperArtifactsError {
|
|
106
|
+
}
|
|
107
|
+
declare class TimeoutError extends SuperArtifactsError {
|
|
108
|
+
}
|
|
109
|
+
/** The error for an HTTP refusal. `text` may be anything: a proxy's HTML page is not `{error}`. */
|
|
110
|
+
declare function errorFor(status: number, text: string, retryAfterHeader: string | null): SuperArtifactsError;
|
|
111
|
+
|
|
112
|
+
interface components {
|
|
113
|
+
schemas: {
|
|
114
|
+
Error: {
|
|
115
|
+
error: {
|
|
116
|
+
/** @description Stable, machine-readable. */
|
|
117
|
+
code: string;
|
|
118
|
+
/** @description For a person. */
|
|
119
|
+
message: string;
|
|
120
|
+
fix?: string;
|
|
121
|
+
retryAfterSeconds?: number;
|
|
122
|
+
} & {
|
|
123
|
+
[key: string]: unknown;
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
responses: {
|
|
128
|
+
/** @description A refusal. 400 invalid arguments, 401 no or bad key, 402 plan limit, 403 forbidden or read-only key, 404 not found, 409 conflict, 413 body over 1 MiB, 429 rate limited (see Retry-After). */
|
|
129
|
+
Error: {
|
|
130
|
+
headers: {
|
|
131
|
+
/** @description On 429: seconds to wait. */
|
|
132
|
+
'Retry-After'?: number;
|
|
133
|
+
[name: string]: unknown;
|
|
134
|
+
};
|
|
135
|
+
content: {
|
|
136
|
+
'application/json': components['schemas']['Error'];
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
parameters: never;
|
|
141
|
+
requestBodies: never;
|
|
142
|
+
headers: never;
|
|
143
|
+
pathItems: never;
|
|
144
|
+
}
|
|
145
|
+
interface operations {
|
|
146
|
+
whoami: {
|
|
147
|
+
parameters: {
|
|
148
|
+
query?: never;
|
|
149
|
+
header?: never;
|
|
150
|
+
path?: never;
|
|
151
|
+
cookie?: never;
|
|
152
|
+
};
|
|
153
|
+
requestBody?: never;
|
|
154
|
+
responses: {
|
|
155
|
+
/** @description Who this key publishes as */
|
|
156
|
+
200: {
|
|
157
|
+
headers: {
|
|
158
|
+
[name: string]: unknown;
|
|
159
|
+
};
|
|
160
|
+
content: {
|
|
161
|
+
'application/json': {
|
|
162
|
+
[key: string]: unknown;
|
|
163
|
+
};
|
|
164
|
+
};
|
|
165
|
+
};
|
|
166
|
+
default: components['responses']['Error'];
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
getHelp: {
|
|
170
|
+
parameters: {
|
|
171
|
+
query?: {
|
|
172
|
+
topic?: 'tools' | 'data' | 'templates' | 'collections' | 'projects' | 'batch';
|
|
173
|
+
};
|
|
174
|
+
header?: never;
|
|
175
|
+
path?: never;
|
|
176
|
+
cookie?: never;
|
|
177
|
+
};
|
|
178
|
+
requestBody?: never;
|
|
179
|
+
responses: {
|
|
180
|
+
/** @description How the operations fit together */
|
|
181
|
+
200: {
|
|
182
|
+
headers: {
|
|
183
|
+
[name: string]: unknown;
|
|
184
|
+
};
|
|
185
|
+
content: {
|
|
186
|
+
'application/json': {
|
|
187
|
+
[key: string]: unknown;
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
};
|
|
191
|
+
default: components['responses']['Error'];
|
|
192
|
+
};
|
|
193
|
+
};
|
|
194
|
+
listArtifacts: {
|
|
195
|
+
parameters: {
|
|
196
|
+
query?: never;
|
|
197
|
+
header?: never;
|
|
198
|
+
path?: never;
|
|
199
|
+
cookie?: never;
|
|
200
|
+
};
|
|
201
|
+
requestBody?: never;
|
|
202
|
+
responses: {
|
|
203
|
+
/** @description List your artifacts, newest first */
|
|
204
|
+
200: {
|
|
205
|
+
headers: {
|
|
206
|
+
[name: string]: unknown;
|
|
207
|
+
};
|
|
208
|
+
content: {
|
|
209
|
+
'application/json': {
|
|
210
|
+
[key: string]: unknown;
|
|
211
|
+
};
|
|
212
|
+
};
|
|
213
|
+
};
|
|
214
|
+
default: components['responses']['Error'];
|
|
215
|
+
};
|
|
216
|
+
};
|
|
217
|
+
publishArtifact: {
|
|
218
|
+
parameters: {
|
|
219
|
+
query?: never;
|
|
220
|
+
header?: never;
|
|
221
|
+
path?: never;
|
|
222
|
+
cookie?: never;
|
|
223
|
+
};
|
|
224
|
+
requestBody: {
|
|
225
|
+
content: {
|
|
226
|
+
'application/json': {
|
|
227
|
+
/** @description Kebab-case, 3–63 chars, under your key’s handle: it updates one there you are Editor on. Another workspace’s artifact: publish from its dashboard. */
|
|
228
|
+
slug: string;
|
|
229
|
+
/** @description One sentence on why; shown in the gallery. */
|
|
230
|
+
prompt: string;
|
|
231
|
+
/** @description Complete self-contained index.html. */
|
|
232
|
+
html?: string;
|
|
233
|
+
/** @description Filled slots for `template`'s runtime, by slot name; `json` slots are schema-checked. */
|
|
234
|
+
values?: Record<string, unknown>;
|
|
235
|
+
/** @description Instead of `slug`/`values`: several pages of one `template`. */
|
|
236
|
+
instances?: {
|
|
237
|
+
slug: string;
|
|
238
|
+
values: Record<string, unknown>;
|
|
239
|
+
title?: string;
|
|
240
|
+
}[];
|
|
241
|
+
/** @description The template built from (provenance); required with `values` or `instances`. */
|
|
242
|
+
template?: {
|
|
243
|
+
slug: string;
|
|
244
|
+
version?: number;
|
|
245
|
+
};
|
|
246
|
+
/** @description Under 60 chars. Default: page <title>. */
|
|
247
|
+
title?: string;
|
|
248
|
+
/** @description Link-preview sentence, under 200 chars. Default: `prompt`. */
|
|
249
|
+
description?: string;
|
|
250
|
+
/**
|
|
251
|
+
* @description Default `page`. `dashboard` labels a page of mostly live data.
|
|
252
|
+
* @enum {string}
|
|
253
|
+
*/
|
|
254
|
+
kind?: 'page' | 'slideshow' | 'survey' | 'tracker' | 'video' | 'tool' | 'dashboard';
|
|
255
|
+
/** @description Gallery grouping label, not a content collection. */
|
|
256
|
+
collection?: string;
|
|
257
|
+
/**
|
|
258
|
+
* @description From version 1. Default: the workspace default; public is set after.
|
|
259
|
+
* @enum {string}
|
|
260
|
+
*/
|
|
261
|
+
visibility?: 'private' | 'organization';
|
|
262
|
+
/** @description Data policy v1. Visitors submit to a sheet (perUser single, upsert, a field per question), a log (many, append-only) or a shared doc (shared, key). CMS rows: `collections`. See super_help data. */
|
|
263
|
+
policy?: Record<string, unknown>;
|
|
264
|
+
/** @description With `values`: overrides the declaration's `dataset.key`. */
|
|
265
|
+
dataset?: string;
|
|
266
|
+
/** @description With `values`: the dataset key this one succeeds. */
|
|
267
|
+
continues?: string;
|
|
268
|
+
/** @description uploadId from super_upload; its files ship with the page. */
|
|
269
|
+
uploads?: string;
|
|
270
|
+
/** @description With `uploads`: the staged JSON file to read `values` from. */
|
|
271
|
+
valuesFile?: string;
|
|
272
|
+
/** @description With `html`: small assets. ≤200, 5 MiB each, 10 MiB total, decoded. */
|
|
273
|
+
files?: {
|
|
274
|
+
/** @description Relative, no leading slash. */
|
|
275
|
+
path: string;
|
|
276
|
+
/** @description Base64 of the bytes. */
|
|
277
|
+
content: string;
|
|
278
|
+
/** @description Default: from the extension. */
|
|
279
|
+
contentType?: string;
|
|
280
|
+
/** @description Hex digest of the decoded bytes. */
|
|
281
|
+
sha256?: string;
|
|
282
|
+
}[];
|
|
283
|
+
};
|
|
284
|
+
};
|
|
285
|
+
};
|
|
286
|
+
responses: {
|
|
287
|
+
/** @description Publish an artifact, or a new version of one */
|
|
288
|
+
200: {
|
|
289
|
+
headers: {
|
|
290
|
+
[name: string]: unknown;
|
|
291
|
+
};
|
|
292
|
+
content: {
|
|
293
|
+
'application/json': {
|
|
294
|
+
[key: string]: unknown;
|
|
295
|
+
};
|
|
296
|
+
};
|
|
297
|
+
};
|
|
298
|
+
default: components['responses']['Error'];
|
|
299
|
+
};
|
|
300
|
+
};
|
|
301
|
+
getArtifact: {
|
|
302
|
+
parameters: {
|
|
303
|
+
query?: never;
|
|
304
|
+
header?: never;
|
|
305
|
+
path: {
|
|
306
|
+
/** @description Artifact id or slug. */
|
|
307
|
+
artifact: string;
|
|
308
|
+
};
|
|
309
|
+
cookie?: never;
|
|
310
|
+
};
|
|
311
|
+
requestBody?: never;
|
|
312
|
+
responses: {
|
|
313
|
+
/** @description One artifact: its versions, published version and declaration */
|
|
314
|
+
200: {
|
|
315
|
+
headers: {
|
|
316
|
+
[name: string]: unknown;
|
|
317
|
+
};
|
|
318
|
+
content: {
|
|
319
|
+
'application/json': {
|
|
320
|
+
[key: string]: unknown;
|
|
321
|
+
};
|
|
322
|
+
};
|
|
323
|
+
};
|
|
324
|
+
default: components['responses']['Error'];
|
|
325
|
+
};
|
|
326
|
+
};
|
|
327
|
+
deleteArtifact: {
|
|
328
|
+
parameters: {
|
|
329
|
+
query: {
|
|
330
|
+
/** @description Repeat the artifact: deleting is permanent. */
|
|
331
|
+
confirm: string;
|
|
332
|
+
};
|
|
333
|
+
header?: never;
|
|
334
|
+
path: {
|
|
335
|
+
/** @description Artifact id or slug. */
|
|
336
|
+
artifact: string;
|
|
337
|
+
};
|
|
338
|
+
cookie?: never;
|
|
339
|
+
};
|
|
340
|
+
requestBody?: never;
|
|
341
|
+
responses: {
|
|
342
|
+
/** @description Delete an artifact with every version, permanently */
|
|
343
|
+
200: {
|
|
344
|
+
headers: {
|
|
345
|
+
[name: string]: unknown;
|
|
346
|
+
};
|
|
347
|
+
content: {
|
|
348
|
+
'application/json': {
|
|
349
|
+
[key: string]: unknown;
|
|
350
|
+
};
|
|
351
|
+
};
|
|
352
|
+
};
|
|
353
|
+
default: components['responses']['Error'];
|
|
354
|
+
};
|
|
355
|
+
};
|
|
356
|
+
updateArtifact: {
|
|
357
|
+
parameters: {
|
|
358
|
+
query?: never;
|
|
359
|
+
header?: never;
|
|
360
|
+
path: {
|
|
361
|
+
/** @description Artifact id or slug. */
|
|
362
|
+
artifact: string;
|
|
363
|
+
};
|
|
364
|
+
cookie?: never;
|
|
365
|
+
};
|
|
366
|
+
requestBody?: {
|
|
367
|
+
content: {
|
|
368
|
+
'application/json': {
|
|
369
|
+
/**
|
|
370
|
+
* @description private: Restricted (default). organization: anyone at the workspace. public: anyone with the link.
|
|
371
|
+
* @enum {string}
|
|
372
|
+
*/
|
|
373
|
+
visibility?: 'private' | 'organization' | 'public';
|
|
374
|
+
/** @description Gallery grouping label, ≤ 60 chars. Empty clears it. */
|
|
375
|
+
collection?: string;
|
|
376
|
+
/** @description The name a stream’s `revealAt` waits for; from then on that stream reads as public. */
|
|
377
|
+
phase?: string;
|
|
378
|
+
notifyOnSubmission?: boolean;
|
|
379
|
+
};
|
|
380
|
+
};
|
|
381
|
+
};
|
|
382
|
+
responses: {
|
|
383
|
+
/** @description Change visibility, gallery label, live phase or submission email */
|
|
384
|
+
200: {
|
|
385
|
+
headers: {
|
|
386
|
+
[name: string]: unknown;
|
|
387
|
+
};
|
|
388
|
+
content: {
|
|
389
|
+
'application/json': {
|
|
390
|
+
[key: string]: unknown;
|
|
391
|
+
};
|
|
392
|
+
};
|
|
393
|
+
};
|
|
394
|
+
default: components['responses']['Error'];
|
|
395
|
+
};
|
|
396
|
+
};
|
|
397
|
+
readArtifactFile: {
|
|
398
|
+
parameters: {
|
|
399
|
+
query?: {
|
|
400
|
+
path?: string;
|
|
401
|
+
version?: number;
|
|
402
|
+
};
|
|
403
|
+
header?: never;
|
|
404
|
+
path: {
|
|
405
|
+
/** @description Artifact id or slug. */
|
|
406
|
+
artifact: string;
|
|
407
|
+
};
|
|
408
|
+
cookie?: never;
|
|
409
|
+
};
|
|
410
|
+
requestBody?: never;
|
|
411
|
+
responses: {
|
|
412
|
+
/** @description Read one file of a version as text (default: the published index.html) */
|
|
413
|
+
200: {
|
|
414
|
+
headers: {
|
|
415
|
+
[name: string]: unknown;
|
|
416
|
+
};
|
|
417
|
+
content: {
|
|
418
|
+
'application/json': {
|
|
419
|
+
[key: string]: unknown;
|
|
420
|
+
};
|
|
421
|
+
};
|
|
422
|
+
};
|
|
423
|
+
default: components['responses']['Error'];
|
|
424
|
+
};
|
|
425
|
+
};
|
|
426
|
+
openArtifact: {
|
|
427
|
+
parameters: {
|
|
428
|
+
query?: never;
|
|
429
|
+
header?: never;
|
|
430
|
+
path: {
|
|
431
|
+
/** @description Artifact id or slug. */
|
|
432
|
+
artifact: string;
|
|
433
|
+
};
|
|
434
|
+
cookie?: never;
|
|
435
|
+
};
|
|
436
|
+
requestBody?: {
|
|
437
|
+
content: {
|
|
438
|
+
'application/json': {
|
|
439
|
+
version?: number;
|
|
440
|
+
};
|
|
441
|
+
};
|
|
442
|
+
};
|
|
443
|
+
responses: {
|
|
444
|
+
/** @description A ten-minute viewer URL for an artifact, private included */
|
|
445
|
+
200: {
|
|
446
|
+
headers: {
|
|
447
|
+
[name: string]: unknown;
|
|
448
|
+
};
|
|
449
|
+
content: {
|
|
450
|
+
'application/json': {
|
|
451
|
+
[key: string]: unknown;
|
|
452
|
+
};
|
|
453
|
+
};
|
|
454
|
+
};
|
|
455
|
+
default: components['responses']['Error'];
|
|
456
|
+
};
|
|
457
|
+
};
|
|
458
|
+
serveVersion: {
|
|
459
|
+
parameters: {
|
|
460
|
+
query?: never;
|
|
461
|
+
header?: never;
|
|
462
|
+
path: {
|
|
463
|
+
/** @description Artifact id or slug. */
|
|
464
|
+
artifact: string;
|
|
465
|
+
version: number;
|
|
466
|
+
};
|
|
467
|
+
cookie?: never;
|
|
468
|
+
};
|
|
469
|
+
requestBody?: never;
|
|
470
|
+
responses: {
|
|
471
|
+
/** @description Serve an existing version again */
|
|
472
|
+
200: {
|
|
473
|
+
headers: {
|
|
474
|
+
[name: string]: unknown;
|
|
475
|
+
};
|
|
476
|
+
content: {
|
|
477
|
+
'application/json': {
|
|
478
|
+
[key: string]: unknown;
|
|
479
|
+
};
|
|
480
|
+
};
|
|
481
|
+
};
|
|
482
|
+
default: components['responses']['Error'];
|
|
483
|
+
};
|
|
484
|
+
};
|
|
485
|
+
startLiveRoom: {
|
|
486
|
+
parameters: {
|
|
487
|
+
query?: never;
|
|
488
|
+
header?: never;
|
|
489
|
+
path: {
|
|
490
|
+
/** @description Artifact id or slug. */
|
|
491
|
+
artifact: string;
|
|
492
|
+
};
|
|
493
|
+
cookie?: never;
|
|
494
|
+
};
|
|
495
|
+
requestBody?: never;
|
|
496
|
+
responses: {
|
|
497
|
+
/** @description Turn an artifact's live room on */
|
|
498
|
+
200: {
|
|
499
|
+
headers: {
|
|
500
|
+
[name: string]: unknown;
|
|
501
|
+
};
|
|
502
|
+
content: {
|
|
503
|
+
'application/json': {
|
|
504
|
+
[key: string]: unknown;
|
|
505
|
+
};
|
|
506
|
+
};
|
|
507
|
+
};
|
|
508
|
+
default: components['responses']['Error'];
|
|
509
|
+
};
|
|
510
|
+
};
|
|
511
|
+
stopLiveRoom: {
|
|
512
|
+
parameters: {
|
|
513
|
+
query?: never;
|
|
514
|
+
header?: never;
|
|
515
|
+
path: {
|
|
516
|
+
/** @description Artifact id or slug. */
|
|
517
|
+
artifact: string;
|
|
518
|
+
};
|
|
519
|
+
cookie?: never;
|
|
520
|
+
};
|
|
521
|
+
requestBody?: never;
|
|
522
|
+
responses: {
|
|
523
|
+
/** @description Turn an artifact's live room off, disconnecting every visitor */
|
|
524
|
+
200: {
|
|
525
|
+
headers: {
|
|
526
|
+
[name: string]: unknown;
|
|
527
|
+
};
|
|
528
|
+
content: {
|
|
529
|
+
'application/json': {
|
|
530
|
+
[key: string]: unknown;
|
|
531
|
+
};
|
|
532
|
+
};
|
|
533
|
+
};
|
|
534
|
+
default: components['responses']['Error'];
|
|
535
|
+
};
|
|
536
|
+
};
|
|
537
|
+
stageUploads: {
|
|
538
|
+
parameters: {
|
|
539
|
+
query?: never;
|
|
540
|
+
header?: never;
|
|
541
|
+
path?: never;
|
|
542
|
+
cookie?: never;
|
|
543
|
+
};
|
|
544
|
+
requestBody: {
|
|
545
|
+
content: {
|
|
546
|
+
'application/json': {
|
|
547
|
+
files: {
|
|
548
|
+
path: string;
|
|
549
|
+
/** @description Exact size. */
|
|
550
|
+
bytes: number;
|
|
551
|
+
/** @description Hex; checked on upload. */
|
|
552
|
+
sha256?: string;
|
|
553
|
+
/** @description Default: from the extension. */
|
|
554
|
+
contentType?: string;
|
|
555
|
+
}[];
|
|
556
|
+
};
|
|
557
|
+
};
|
|
558
|
+
};
|
|
559
|
+
responses: {
|
|
560
|
+
/** @description Stage big files for a publish; PUT each to its URL */
|
|
561
|
+
200: {
|
|
562
|
+
headers: {
|
|
563
|
+
[name: string]: unknown;
|
|
564
|
+
};
|
|
565
|
+
content: {
|
|
566
|
+
'application/json': {
|
|
567
|
+
[key: string]: unknown;
|
|
568
|
+
};
|
|
569
|
+
};
|
|
570
|
+
};
|
|
571
|
+
default: components['responses']['Error'];
|
|
572
|
+
};
|
|
573
|
+
};
|
|
574
|
+
listArtifactRows: {
|
|
575
|
+
parameters: {
|
|
576
|
+
query?: {
|
|
577
|
+
/** @description ANDed 'field op value' clauses: 'reps >= 5', 'day in mon,tue', 'note is set'. Ops: = != > >= < <= contains in, is set, is unset. System: _version _at _status _visitor. */
|
|
578
|
+
filter?: string[];
|
|
579
|
+
/** @description ISO-8601 instant or window (7d, 24h). Or a version (v2) when addressing one artifact. */
|
|
580
|
+
since?: string;
|
|
581
|
+
until?: string;
|
|
582
|
+
/** @description By collection time. */
|
|
583
|
+
sort?: 'newest' | 'oldest';
|
|
584
|
+
/** @description Per artifact. Default 50. */
|
|
585
|
+
limit?: number;
|
|
586
|
+
/** @description The previous cursor.next. */
|
|
587
|
+
cursor?: string;
|
|
588
|
+
fields?: string[];
|
|
589
|
+
};
|
|
590
|
+
header?: never;
|
|
591
|
+
path: {
|
|
592
|
+
/** @description Artifact id or slug. */
|
|
593
|
+
artifact: string;
|
|
594
|
+
};
|
|
595
|
+
cookie?: never;
|
|
596
|
+
};
|
|
597
|
+
requestBody?: never;
|
|
598
|
+
responses: {
|
|
599
|
+
/** @description Rows visitors submitted to one artifact, newest first */
|
|
600
|
+
200: {
|
|
601
|
+
headers: {
|
|
602
|
+
[name: string]: unknown;
|
|
603
|
+
};
|
|
604
|
+
content: {
|
|
605
|
+
'application/json': {
|
|
606
|
+
[key: string]: unknown;
|
|
607
|
+
};
|
|
608
|
+
};
|
|
609
|
+
};
|
|
610
|
+
default: components['responses']['Error'];
|
|
611
|
+
};
|
|
612
|
+
};
|
|
613
|
+
writeArtifactRows: {
|
|
614
|
+
parameters: {
|
|
615
|
+
query?: never;
|
|
616
|
+
header?: never;
|
|
617
|
+
path: {
|
|
618
|
+
/** @description Artifact id or slug. */
|
|
619
|
+
artifact: string;
|
|
620
|
+
};
|
|
621
|
+
cookie?: never;
|
|
622
|
+
};
|
|
623
|
+
requestBody?: {
|
|
624
|
+
content: {
|
|
625
|
+
'application/json': {
|
|
626
|
+
stream?: string;
|
|
627
|
+
rows?: Record<string, unknown>[];
|
|
628
|
+
ops?: Record<string, unknown>[];
|
|
629
|
+
atomic?: boolean;
|
|
630
|
+
};
|
|
631
|
+
};
|
|
632
|
+
};
|
|
633
|
+
responses: {
|
|
634
|
+
/** @description Write rows into an artifact you may edit */
|
|
635
|
+
200: {
|
|
636
|
+
headers: {
|
|
637
|
+
[name: string]: unknown;
|
|
638
|
+
};
|
|
639
|
+
content: {
|
|
640
|
+
'application/json': {
|
|
641
|
+
[key: string]: unknown;
|
|
642
|
+
};
|
|
643
|
+
};
|
|
644
|
+
};
|
|
645
|
+
default: components['responses']['Error'];
|
|
646
|
+
};
|
|
647
|
+
};
|
|
648
|
+
listRows: {
|
|
649
|
+
parameters: {
|
|
650
|
+
query?: {
|
|
651
|
+
dataset?: string;
|
|
652
|
+
/** @description The gallery grouping label set at publish, case-sensitive. Not a content collection. */
|
|
653
|
+
collection?: string;
|
|
654
|
+
/** @description ANDed 'field op value' clauses: 'reps >= 5', 'day in mon,tue', 'note is set'. Ops: = != > >= < <= contains in, is set, is unset. System: _version _at _status _visitor. */
|
|
655
|
+
filter?: string[];
|
|
656
|
+
/** @description ISO-8601 instant or window (7d, 24h). Or a version (v2) when addressing one artifact. */
|
|
657
|
+
since?: string;
|
|
658
|
+
until?: string;
|
|
659
|
+
/** @description By collection time. */
|
|
660
|
+
sort?: 'newest' | 'oldest';
|
|
661
|
+
/** @description Per artifact. Default 50. */
|
|
662
|
+
limit?: number;
|
|
663
|
+
/** @description The previous cursor.next. */
|
|
664
|
+
cursor?: string;
|
|
665
|
+
fields?: string[];
|
|
666
|
+
};
|
|
667
|
+
header?: never;
|
|
668
|
+
path?: never;
|
|
669
|
+
cookie?: never;
|
|
670
|
+
};
|
|
671
|
+
requestBody?: never;
|
|
672
|
+
responses: {
|
|
673
|
+
/** @description Rows submitted to a dataset or a gallery label */
|
|
674
|
+
200: {
|
|
675
|
+
headers: {
|
|
676
|
+
[name: string]: unknown;
|
|
677
|
+
};
|
|
678
|
+
content: {
|
|
679
|
+
'application/json': {
|
|
680
|
+
[key: string]: unknown;
|
|
681
|
+
};
|
|
682
|
+
};
|
|
683
|
+
};
|
|
684
|
+
default: components['responses']['Error'];
|
|
685
|
+
};
|
|
686
|
+
};
|
|
687
|
+
queryData: {
|
|
688
|
+
parameters: {
|
|
689
|
+
query?: never;
|
|
690
|
+
header?: never;
|
|
691
|
+
path?: never;
|
|
692
|
+
cookie?: never;
|
|
693
|
+
};
|
|
694
|
+
requestBody?: {
|
|
695
|
+
content: {
|
|
696
|
+
'application/json': {
|
|
697
|
+
/** @description The union of the forms given. */
|
|
698
|
+
scope?: {
|
|
699
|
+
series?: string;
|
|
700
|
+
datasets?: string[];
|
|
701
|
+
/** @description All must match. */
|
|
702
|
+
tags?: string[];
|
|
703
|
+
};
|
|
704
|
+
/** @description Catalog measure names, not field names. */
|
|
705
|
+
measures?: string[];
|
|
706
|
+
/** @enum {string} */
|
|
707
|
+
agg?: 'sum' | 'avg' | 'min' | 'max' | 'count' | 'last';
|
|
708
|
+
/** @description Derived columns, in order; operands name a measure or an earlier `as`. */
|
|
709
|
+
compute?: {
|
|
710
|
+
as: string;
|
|
711
|
+
/** @enum {string} */
|
|
712
|
+
expr: 'a * b' | 'a / b' | 'a + b';
|
|
713
|
+
operands: string[];
|
|
714
|
+
unit?: string;
|
|
715
|
+
}[];
|
|
716
|
+
/** @description ANDed 'field op value' clauses: 'reps >= 5', 'day in mon,tue', 'note is set'. Ops: = != > >= < <= in. Catalog fields only. */
|
|
717
|
+
filter?: string[];
|
|
718
|
+
/** @description One of dataset, day, week, month, visitor, or "field:{name}". */
|
|
719
|
+
group_by?: (string | ('dataset' | 'day' | 'week' | 'month' | 'visitor') | unknown)[];
|
|
720
|
+
/** @description ISO-8601 instant or window (7d, 24h). */
|
|
721
|
+
since?: string;
|
|
722
|
+
until?: string;
|
|
723
|
+
limit?: number;
|
|
724
|
+
/** @description One artifact's per-field distributions instead of a scoped query. */
|
|
725
|
+
distributions?: {
|
|
726
|
+
/** @description Artifact id or slug. */
|
|
727
|
+
artifact: string;
|
|
728
|
+
version?: number;
|
|
729
|
+
/** @description A choice, boolean or integer field. */
|
|
730
|
+
group_by?: string;
|
|
731
|
+
/** @enum {string} */
|
|
732
|
+
bucket?: 'day' | 'week';
|
|
733
|
+
};
|
|
734
|
+
};
|
|
735
|
+
};
|
|
736
|
+
};
|
|
737
|
+
responses: {
|
|
738
|
+
/** @description Aggregate what was collected: numbers, never rows */
|
|
739
|
+
200: {
|
|
740
|
+
headers: {
|
|
741
|
+
[name: string]: unknown;
|
|
742
|
+
};
|
|
743
|
+
content: {
|
|
744
|
+
'application/json': {
|
|
745
|
+
[key: string]: unknown;
|
|
746
|
+
};
|
|
747
|
+
};
|
|
748
|
+
};
|
|
749
|
+
default: components['responses']['Error'];
|
|
750
|
+
};
|
|
751
|
+
};
|
|
752
|
+
getSchema: {
|
|
753
|
+
parameters: {
|
|
754
|
+
query?: {
|
|
755
|
+
series?: string;
|
|
756
|
+
/** @description All must match. */
|
|
757
|
+
tags?: string[];
|
|
758
|
+
/** @description Artifact id or slug. */
|
|
759
|
+
artifact?: string;
|
|
760
|
+
/** @description Alone: 2+ ids or slugs; their fields side by side, conflicts named. */
|
|
761
|
+
compare?: string[];
|
|
762
|
+
/** @description ISO-8601 instant or window (7d, 24h). */
|
|
763
|
+
since?: string;
|
|
764
|
+
/** @description Workspace handle. Omit for your own. */
|
|
765
|
+
workspace?: string;
|
|
766
|
+
};
|
|
767
|
+
header?: never;
|
|
768
|
+
path?: never;
|
|
769
|
+
cookie?: never;
|
|
770
|
+
};
|
|
771
|
+
requestBody?: never;
|
|
772
|
+
responses: {
|
|
773
|
+
/** @description The data catalog: datasets and content collections, or a comparison */
|
|
774
|
+
200: {
|
|
775
|
+
headers: {
|
|
776
|
+
[name: string]: unknown;
|
|
777
|
+
};
|
|
778
|
+
content: {
|
|
779
|
+
'application/json': {
|
|
780
|
+
[key: string]: unknown;
|
|
781
|
+
};
|
|
782
|
+
};
|
|
783
|
+
};
|
|
784
|
+
default: components['responses']['Error'];
|
|
785
|
+
};
|
|
786
|
+
};
|
|
787
|
+
defineCollection: {
|
|
788
|
+
parameters: {
|
|
789
|
+
query?: never;
|
|
790
|
+
header?: never;
|
|
791
|
+
path?: never;
|
|
792
|
+
cookie?: never;
|
|
793
|
+
};
|
|
794
|
+
requestBody?: {
|
|
795
|
+
content: {
|
|
796
|
+
'application/json': {
|
|
797
|
+
/** @description A content collection definition: creates one, or replaces the one with this key. */
|
|
798
|
+
define?: {
|
|
799
|
+
/** @description Lowercase letters, digits, underscores; starts with a letter. */
|
|
800
|
+
key: string;
|
|
801
|
+
/** @description 1–80 chars. */
|
|
802
|
+
name: string;
|
|
803
|
+
description?: string;
|
|
804
|
+
/** @description Labels an entry. Default: first text field. */
|
|
805
|
+
displayField?: string;
|
|
806
|
+
fields: {
|
|
807
|
+
name: string;
|
|
808
|
+
/** @description text long_text rich_text email url phone color integer decimal rating measurement boolean date datetime time choice multi_choice json reference reference_list */
|
|
809
|
+
type: string;
|
|
810
|
+
label?: string;
|
|
811
|
+
required?: boolean;
|
|
812
|
+
unique?: boolean;
|
|
813
|
+
/**
|
|
814
|
+
* @description contact: masked for non-owners. sensitive: encrypted, no sort/filter/search. secret: write-only credential.
|
|
815
|
+
* @enum {string}
|
|
816
|
+
*/
|
|
817
|
+
pii: 'none' | 'contact' | 'sensitive' | 'secret';
|
|
818
|
+
description?: string;
|
|
819
|
+
/** @description By type: minLength maxLength pattern; min max precision; scale; measure unit; after before; choices minChoices maxChoices; collection onDelete; maxItems; maxBytes. */
|
|
820
|
+
rules?: Record<string, unknown>;
|
|
821
|
+
}[];
|
|
822
|
+
};
|
|
823
|
+
/** @description Workspace handle. Omit for your own. */
|
|
824
|
+
workspace?: string;
|
|
825
|
+
};
|
|
826
|
+
};
|
|
827
|
+
};
|
|
828
|
+
responses: {
|
|
829
|
+
/** @description Create or replace a content collection */
|
|
830
|
+
200: {
|
|
831
|
+
headers: {
|
|
832
|
+
[name: string]: unknown;
|
|
833
|
+
};
|
|
834
|
+
content: {
|
|
835
|
+
'application/json': {
|
|
836
|
+
[key: string]: unknown;
|
|
837
|
+
};
|
|
838
|
+
};
|
|
839
|
+
};
|
|
840
|
+
default: components['responses']['Error'];
|
|
841
|
+
};
|
|
842
|
+
};
|
|
843
|
+
listEntries: {
|
|
844
|
+
parameters: {
|
|
845
|
+
query?: {
|
|
846
|
+
/** @description Workspace handle. Omit for your own. */
|
|
847
|
+
workspace?: string;
|
|
848
|
+
/** @description ANDed 'field op value' clauses: 'reps >= 5', 'day in mon,tue', 'note is set'. Ops: = != > >= < <= contains starts has in, is set, is empty. System: _created_at _updated_at _status _author. */
|
|
849
|
+
filter?: string[];
|
|
850
|
+
/** @description Case-insensitive, over text fields. */
|
|
851
|
+
search?: string;
|
|
852
|
+
/** @description Field or system column. Default _created_at. */
|
|
853
|
+
sort?: string;
|
|
854
|
+
direction?: 'asc' | 'desc';
|
|
855
|
+
page?: number;
|
|
856
|
+
limit?: number;
|
|
857
|
+
};
|
|
858
|
+
header?: never;
|
|
859
|
+
path: {
|
|
860
|
+
/** @description Content collection key (a content model), not a gallery label. */
|
|
861
|
+
collection: string;
|
|
862
|
+
};
|
|
863
|
+
cookie?: never;
|
|
864
|
+
};
|
|
865
|
+
requestBody?: never;
|
|
866
|
+
responses: {
|
|
867
|
+
/** @description One page of a content collection's entries */
|
|
868
|
+
200: {
|
|
869
|
+
headers: {
|
|
870
|
+
[name: string]: unknown;
|
|
871
|
+
};
|
|
872
|
+
content: {
|
|
873
|
+
'application/json': {
|
|
874
|
+
[key: string]: unknown;
|
|
875
|
+
};
|
|
876
|
+
};
|
|
877
|
+
};
|
|
878
|
+
default: components['responses']['Error'];
|
|
879
|
+
};
|
|
880
|
+
};
|
|
881
|
+
createEntries: {
|
|
882
|
+
parameters: {
|
|
883
|
+
query?: never;
|
|
884
|
+
header?: never;
|
|
885
|
+
path: {
|
|
886
|
+
/** @description Content collection key (a content model), not a gallery label. */
|
|
887
|
+
collection: string;
|
|
888
|
+
};
|
|
889
|
+
cookie?: never;
|
|
890
|
+
};
|
|
891
|
+
requestBody?: {
|
|
892
|
+
content: {
|
|
893
|
+
'application/json': {
|
|
894
|
+
/** @description Keyed by field name. An array writes a batch. */
|
|
895
|
+
values?: Record<string, unknown> | Record<string, unknown>[];
|
|
896
|
+
/**
|
|
897
|
+
* @description Written entries. Default published.
|
|
898
|
+
* @enum {string}
|
|
899
|
+
*/
|
|
900
|
+
status?: 'draft' | 'published' | 'archived';
|
|
901
|
+
/** @description Workspace handle. Omit for your own. */
|
|
902
|
+
workspace?: string;
|
|
903
|
+
};
|
|
904
|
+
};
|
|
905
|
+
};
|
|
906
|
+
responses: {
|
|
907
|
+
/** @description Create one entry, or a batch */
|
|
908
|
+
200: {
|
|
909
|
+
headers: {
|
|
910
|
+
[name: string]: unknown;
|
|
911
|
+
};
|
|
912
|
+
content: {
|
|
913
|
+
'application/json': {
|
|
914
|
+
[key: string]: unknown;
|
|
915
|
+
};
|
|
916
|
+
};
|
|
917
|
+
};
|
|
918
|
+
default: components['responses']['Error'];
|
|
919
|
+
};
|
|
920
|
+
};
|
|
921
|
+
useSecret: {
|
|
922
|
+
parameters: {
|
|
923
|
+
query?: never;
|
|
924
|
+
header?: never;
|
|
925
|
+
path: {
|
|
926
|
+
/** @description Content collection key (a content model), not a gallery label. */
|
|
927
|
+
collection: string;
|
|
928
|
+
/** @description The entry id. */
|
|
929
|
+
entry: string;
|
|
930
|
+
/** @description The `pii: secret` field whose value is sent. */
|
|
931
|
+
field: string;
|
|
932
|
+
};
|
|
933
|
+
cookie?: never;
|
|
934
|
+
};
|
|
935
|
+
requestBody: {
|
|
936
|
+
content: {
|
|
937
|
+
'application/json': {
|
|
938
|
+
/** @enum {string} */
|
|
939
|
+
method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
940
|
+
/** @description https only; its host must be the approved one. Redirects are returned, never followed. */
|
|
941
|
+
url: string;
|
|
942
|
+
/** @description Sent as given, except host, authorization, cookie, proxy-* and the grant’s own header. */
|
|
943
|
+
headers?: {
|
|
944
|
+
[key: string]: string;
|
|
945
|
+
};
|
|
946
|
+
/** @description ≤64 KiB. */
|
|
947
|
+
body?: string;
|
|
948
|
+
/** @description Where the value goes; asked for when no grant exists. The approved grant’s header wins. */
|
|
949
|
+
header?: {
|
|
950
|
+
/** @description e.g. authorization, x-api-key. */
|
|
951
|
+
name: string;
|
|
952
|
+
/** @description Prefix before the value, e.g. "Bearer ". May be empty. */
|
|
953
|
+
scheme?: string;
|
|
954
|
+
};
|
|
955
|
+
};
|
|
956
|
+
};
|
|
957
|
+
};
|
|
958
|
+
responses: {
|
|
959
|
+
/** @description Call an approved API with a stored secret you cannot read (workspace keys) */
|
|
960
|
+
200: {
|
|
961
|
+
headers: {
|
|
962
|
+
[name: string]: unknown;
|
|
963
|
+
};
|
|
964
|
+
content: {
|
|
965
|
+
'application/json': {
|
|
966
|
+
[key: string]: unknown;
|
|
967
|
+
};
|
|
968
|
+
};
|
|
969
|
+
};
|
|
970
|
+
default: components['responses']['Error'];
|
|
971
|
+
};
|
|
972
|
+
};
|
|
973
|
+
listTemplates: {
|
|
974
|
+
parameters: {
|
|
975
|
+
query?: {
|
|
976
|
+
/** @description What the person asked for, in their words. */
|
|
977
|
+
request?: string;
|
|
978
|
+
/** @description Default installed. */
|
|
979
|
+
scope?: 'installed' | 'marketplace';
|
|
980
|
+
/** @description A label, not a capability. */
|
|
981
|
+
kind?: 'page' | 'slideshow' | 'survey' | 'tracker' | 'video' | 'tool' | 'dashboard';
|
|
982
|
+
/** @description Default relevance with `request`, else rating. */
|
|
983
|
+
sort?: 'relevance' | 'rating' | 'uses' | 'installs' | 'recent';
|
|
984
|
+
/** @description Default 5. */
|
|
985
|
+
limit?: number;
|
|
986
|
+
/** @description Any of. */
|
|
987
|
+
jobs?: ('track' | 'collect' | 'present' | 'report' | 'monitor' | 'prove' | 'document' | 'explain' | 'plan' | 'decide' | 'review' | 'learn' | 'prototype' | 'announce' | 'compute' | 'curate' | 'coordinate' | 'play')[];
|
|
988
|
+
/** @description Any of. */
|
|
989
|
+
audience?: ('everyone' | 'engineering' | 'product' | 'design' | 'marketing' | 'sales' | 'ops' | 'people' | 'finance' | 'founders' | 'education' | 'personal' | 'community')[];
|
|
990
|
+
/** @description All of. `["runtime"]`: ships code. */
|
|
991
|
+
needs?: ('runtime' | 'data' | 'comments' | 'live')[];
|
|
992
|
+
/** @description fill: you send a document; write: you write the page; build: page and policy. */
|
|
993
|
+
cost?: 'fill' | 'write' | 'build';
|
|
994
|
+
/** @description Marketplace trust tier: Official, Verified or Community. */
|
|
995
|
+
tier?: 'all' | 'official' | 'verified' | 'community';
|
|
996
|
+
mine?: boolean;
|
|
997
|
+
};
|
|
998
|
+
header?: never;
|
|
999
|
+
path?: never;
|
|
1000
|
+
cookie?: never;
|
|
1001
|
+
};
|
|
1002
|
+
requestBody?: never;
|
|
1003
|
+
responses: {
|
|
1004
|
+
/** @description Find, rank or list templates */
|
|
1005
|
+
200: {
|
|
1006
|
+
headers: {
|
|
1007
|
+
[name: string]: unknown;
|
|
1008
|
+
};
|
|
1009
|
+
content: {
|
|
1010
|
+
'application/json': {
|
|
1011
|
+
[key: string]: unknown;
|
|
1012
|
+
};
|
|
1013
|
+
};
|
|
1014
|
+
};
|
|
1015
|
+
default: components['responses']['Error'];
|
|
1016
|
+
};
|
|
1017
|
+
};
|
|
1018
|
+
saveTemplate: {
|
|
1019
|
+
parameters: {
|
|
1020
|
+
query?: never;
|
|
1021
|
+
header?: never;
|
|
1022
|
+
path?: never;
|
|
1023
|
+
cookie?: never;
|
|
1024
|
+
};
|
|
1025
|
+
requestBody: {
|
|
1026
|
+
content: {
|
|
1027
|
+
'application/json': {
|
|
1028
|
+
/** @description Kebab-case, 3–64 chars. Permanent. */
|
|
1029
|
+
slug: string;
|
|
1030
|
+
title: string;
|
|
1031
|
+
description: string;
|
|
1032
|
+
/**
|
|
1033
|
+
* @description `dashboard`: a page that mostly shows live data — a label, not a capability.
|
|
1034
|
+
* @enum {string}
|
|
1035
|
+
*/
|
|
1036
|
+
kind?: 'page' | 'slideshow' | 'survey' | 'tracker' | 'video' | 'tool' | 'dashboard';
|
|
1037
|
+
/** @description What a person hires it for; the first is primary. Create default: from `kind`. */
|
|
1038
|
+
jobs?: ('track' | 'collect' | 'present' | 'report' | 'monitor' | 'prove' | 'document' | 'explain' | 'plan' | 'decide' | 'review' | 'learn' | 'prototype' | 'announce' | 'compute' | 'curate' | 'coordinate' | 'play')[];
|
|
1039
|
+
/** @description 1–3, or `everyone` alone (the default). */
|
|
1040
|
+
audience?: ('everyone' | 'engineering' | 'product' | 'design' | 'marketing' | 'sales' | 'ops' | 'people' | 'finance' | 'founders' | 'education' | 'personal' | 'community')[];
|
|
1041
|
+
/** @description Things to build from it; the build prompt draws on them. */
|
|
1042
|
+
useCases?: {
|
|
1043
|
+
title: string;
|
|
1044
|
+
prompt: string;
|
|
1045
|
+
}[];
|
|
1046
|
+
/**
|
|
1047
|
+
* @description After install: `scenarios` (default) offers three builds; `explainer` builds one from the sample; `interview` asks three questions first.
|
|
1048
|
+
* @enum {string}
|
|
1049
|
+
*/
|
|
1050
|
+
installArchetype?: 'scenarios' | 'explainer' | 'interview';
|
|
1051
|
+
/** @description Your note, appended to the build prompt as a suggestion. */
|
|
1052
|
+
installAfter?: string;
|
|
1053
|
+
/** @description The sample may appear on the public listing page. */
|
|
1054
|
+
samplePublic?: boolean;
|
|
1055
|
+
/**
|
|
1056
|
+
* @description Deprecated; read as `jobs` when `jobs` is absent.
|
|
1057
|
+
* @enum {string}
|
|
1058
|
+
*/
|
|
1059
|
+
category?: 'trackers' | 'surveys' | 'presentations' | 'dashboards' | 'documents' | 'tools' | 'games' | 'other';
|
|
1060
|
+
/** @description `slots`, `declaration` (every instance’s policy), optional `comments`, `keywords` (searched), `examplePrompts`. */
|
|
1061
|
+
spec: {
|
|
1062
|
+
/** @description The fill schema, an array: [{"name": "headline", "type": "text", "required": true, "max": 120}]. */
|
|
1063
|
+
slots?: {
|
|
1064
|
+
name: string;
|
|
1065
|
+
type: string;
|
|
1066
|
+
}[];
|
|
1067
|
+
};
|
|
1068
|
+
/** @description Optional notes for whoever fills it. */
|
|
1069
|
+
guidance?: string;
|
|
1070
|
+
/** @description A prompt a person copies to ask for one. */
|
|
1071
|
+
prompt?: string;
|
|
1072
|
+
/** @description `{"values": {…}}`, rendered in the preview. */
|
|
1073
|
+
sample?: Record<string, unknown>;
|
|
1074
|
+
/** @description Slug of your artifact to link as the demo (linked once public). "" clears it. */
|
|
1075
|
+
demo?: string;
|
|
1076
|
+
/** @description Runtime files, `index.html` required. Omitting them on a revision drops the runtime from that new draft version only. */
|
|
1077
|
+
files?: {
|
|
1078
|
+
path: string;
|
|
1079
|
+
/** @description UTF-8 text, base64-ed for you. Send `text` or `content`. */
|
|
1080
|
+
text?: string;
|
|
1081
|
+
/** @description Base64 of the bytes, for binaries. */
|
|
1082
|
+
content?: string;
|
|
1083
|
+
contentType?: string;
|
|
1084
|
+
}[];
|
|
1085
|
+
/** @description Extra artifacts each publish makes at {slug}-{role}, same values (e.g. a stage for a host). Bind the primary with `source: {artifact: "@primary", streams}`. Released: add, never remove. */
|
|
1086
|
+
companions?: {
|
|
1087
|
+
/** @description Kebab-case, unique, not "primary". */
|
|
1088
|
+
role: string;
|
|
1089
|
+
title: string;
|
|
1090
|
+
description?: string;
|
|
1091
|
+
/** @enum {string} */
|
|
1092
|
+
kind?: 'page' | 'slideshow' | 'survey' | 'tracker' | 'video' | 'tool' | 'dashboard';
|
|
1093
|
+
/**
|
|
1094
|
+
* @description Default inherit: the primary’s.
|
|
1095
|
+
* @enum {string}
|
|
1096
|
+
*/
|
|
1097
|
+
visibility?: 'inherit' | 'private' | 'public';
|
|
1098
|
+
/** @description This part’s policy, or omit. */
|
|
1099
|
+
declaration?: Record<string, unknown>;
|
|
1100
|
+
/** @description Slot names whose values this part gets. Default all. */
|
|
1101
|
+
slots?: string[];
|
|
1102
|
+
/** @description Runtime files, `index.html` required. Omitting them on a revision drops the runtime from that new draft version only. */
|
|
1103
|
+
files: {
|
|
1104
|
+
path: string;
|
|
1105
|
+
/** @description UTF-8 text, base64-ed for you. Send `text` or `content`. */
|
|
1106
|
+
text?: string;
|
|
1107
|
+
/** @description Base64 of the bytes, for binaries. */
|
|
1108
|
+
content?: string;
|
|
1109
|
+
contentType?: string;
|
|
1110
|
+
}[];
|
|
1111
|
+
}[];
|
|
1112
|
+
/** @description The version you revised. Present: revise. Absent: create. */
|
|
1113
|
+
expectedVersion?: number;
|
|
1114
|
+
/** @description Revisions: one line on why, for the changelog. */
|
|
1115
|
+
changeNote?: string;
|
|
1116
|
+
};
|
|
1117
|
+
};
|
|
1118
|
+
};
|
|
1119
|
+
responses: {
|
|
1120
|
+
/** @description Create or revise a template draft */
|
|
1121
|
+
200: {
|
|
1122
|
+
headers: {
|
|
1123
|
+
[name: string]: unknown;
|
|
1124
|
+
};
|
|
1125
|
+
content: {
|
|
1126
|
+
'application/json': {
|
|
1127
|
+
[key: string]: unknown;
|
|
1128
|
+
};
|
|
1129
|
+
};
|
|
1130
|
+
};
|
|
1131
|
+
default: components['responses']['Error'];
|
|
1132
|
+
};
|
|
1133
|
+
};
|
|
1134
|
+
getTemplate: {
|
|
1135
|
+
parameters: {
|
|
1136
|
+
query?: {
|
|
1137
|
+
/** @description Default: the released one. */
|
|
1138
|
+
version?: number;
|
|
1139
|
+
};
|
|
1140
|
+
header?: never;
|
|
1141
|
+
path: {
|
|
1142
|
+
slug: string;
|
|
1143
|
+
};
|
|
1144
|
+
cookie?: never;
|
|
1145
|
+
};
|
|
1146
|
+
requestBody?: never;
|
|
1147
|
+
responses: {
|
|
1148
|
+
/** @description One template in full, with its install prompt */
|
|
1149
|
+
200: {
|
|
1150
|
+
headers: {
|
|
1151
|
+
[name: string]: unknown;
|
|
1152
|
+
};
|
|
1153
|
+
content: {
|
|
1154
|
+
'application/json': {
|
|
1155
|
+
[key: string]: unknown;
|
|
1156
|
+
};
|
|
1157
|
+
};
|
|
1158
|
+
};
|
|
1159
|
+
default: components['responses']['Error'];
|
|
1160
|
+
};
|
|
1161
|
+
};
|
|
1162
|
+
getTemplateHistory: {
|
|
1163
|
+
parameters: {
|
|
1164
|
+
query?: never;
|
|
1165
|
+
header?: never;
|
|
1166
|
+
path: {
|
|
1167
|
+
slug: string;
|
|
1168
|
+
};
|
|
1169
|
+
cookie?: never;
|
|
1170
|
+
};
|
|
1171
|
+
requestBody?: never;
|
|
1172
|
+
responses: {
|
|
1173
|
+
/** @description A template's changelog */
|
|
1174
|
+
200: {
|
|
1175
|
+
headers: {
|
|
1176
|
+
[name: string]: unknown;
|
|
1177
|
+
};
|
|
1178
|
+
content: {
|
|
1179
|
+
'application/json': {
|
|
1180
|
+
[key: string]: unknown;
|
|
1181
|
+
};
|
|
1182
|
+
};
|
|
1183
|
+
};
|
|
1184
|
+
default: components['responses']['Error'];
|
|
1185
|
+
};
|
|
1186
|
+
};
|
|
1187
|
+
getTemplateFeedback: {
|
|
1188
|
+
parameters: {
|
|
1189
|
+
query?: never;
|
|
1190
|
+
header?: never;
|
|
1191
|
+
path: {
|
|
1192
|
+
slug: string;
|
|
1193
|
+
};
|
|
1194
|
+
cookie?: never;
|
|
1195
|
+
};
|
|
1196
|
+
requestBody?: never;
|
|
1197
|
+
responses: {
|
|
1198
|
+
/** @description Comments on a template's artifacts, as themes */
|
|
1199
|
+
200: {
|
|
1200
|
+
headers: {
|
|
1201
|
+
[name: string]: unknown;
|
|
1202
|
+
};
|
|
1203
|
+
content: {
|
|
1204
|
+
'application/json': {
|
|
1205
|
+
[key: string]: unknown;
|
|
1206
|
+
};
|
|
1207
|
+
};
|
|
1208
|
+
};
|
|
1209
|
+
default: components['responses']['Error'];
|
|
1210
|
+
};
|
|
1211
|
+
};
|
|
1212
|
+
actOnTemplate: {
|
|
1213
|
+
parameters: {
|
|
1214
|
+
query?: never;
|
|
1215
|
+
header?: never;
|
|
1216
|
+
path: {
|
|
1217
|
+
slug: string;
|
|
1218
|
+
};
|
|
1219
|
+
cookie?: never;
|
|
1220
|
+
};
|
|
1221
|
+
requestBody: {
|
|
1222
|
+
content: {
|
|
1223
|
+
'application/json': {
|
|
1224
|
+
/** @enum {string} */
|
|
1225
|
+
action: 'install' | 'uninstall' | 'rate' | 'report' | 'rollback' | 'request_verification';
|
|
1226
|
+
stars?: number;
|
|
1227
|
+
version?: number;
|
|
1228
|
+
/**
|
|
1229
|
+
* @description Report only.
|
|
1230
|
+
* @enum {string}
|
|
1231
|
+
*/
|
|
1232
|
+
kind?: 'spam' | 'harmful' | 'broken' | 'misleading' | 'pii' | 'copyright' | 'other';
|
|
1233
|
+
/** @description Report only. */
|
|
1234
|
+
reason?: string;
|
|
1235
|
+
/** @description Install only: true once the person agreed to this public template. Never set it unasked (`permission_required`). */
|
|
1236
|
+
confirmedByPerson?: boolean;
|
|
1237
|
+
};
|
|
1238
|
+
};
|
|
1239
|
+
};
|
|
1240
|
+
responses: {
|
|
1241
|
+
/** @description Install, uninstall, rate, report, roll back or request verification */
|
|
1242
|
+
200: {
|
|
1243
|
+
headers: {
|
|
1244
|
+
[name: string]: unknown;
|
|
1245
|
+
};
|
|
1246
|
+
content: {
|
|
1247
|
+
'application/json': {
|
|
1248
|
+
[key: string]: unknown;
|
|
1249
|
+
};
|
|
1250
|
+
};
|
|
1251
|
+
};
|
|
1252
|
+
default: components['responses']['Error'];
|
|
1253
|
+
};
|
|
1254
|
+
};
|
|
1255
|
+
releaseTemplate: {
|
|
1256
|
+
parameters: {
|
|
1257
|
+
query?: never;
|
|
1258
|
+
header?: never;
|
|
1259
|
+
path: {
|
|
1260
|
+
slug: string;
|
|
1261
|
+
};
|
|
1262
|
+
cookie?: never;
|
|
1263
|
+
};
|
|
1264
|
+
requestBody: {
|
|
1265
|
+
content: {
|
|
1266
|
+
'application/json': {
|
|
1267
|
+
version: number;
|
|
1268
|
+
/**
|
|
1269
|
+
* @description `unlisted` (default): by slug. `public`: marketplace. `workspace`: team shelf, members only.
|
|
1270
|
+
* @enum {string}
|
|
1271
|
+
*/
|
|
1272
|
+
visibility?: 'public' | 'unlisted' | 'workspace';
|
|
1273
|
+
/** @description Default false. Makes the demo artifact, and its data, public. */
|
|
1274
|
+
demoConsent?: boolean;
|
|
1275
|
+
/** @description true: show the sample on the public listing. Omit: unchanged. */
|
|
1276
|
+
sampleConsent?: boolean;
|
|
1277
|
+
};
|
|
1278
|
+
};
|
|
1279
|
+
};
|
|
1280
|
+
responses: {
|
|
1281
|
+
/** @description Release one version of your template */
|
|
1282
|
+
200: {
|
|
1283
|
+
headers: {
|
|
1284
|
+
[name: string]: unknown;
|
|
1285
|
+
};
|
|
1286
|
+
content: {
|
|
1287
|
+
'application/json': {
|
|
1288
|
+
[key: string]: unknown;
|
|
1289
|
+
};
|
|
1290
|
+
};
|
|
1291
|
+
};
|
|
1292
|
+
default: components['responses']['Error'];
|
|
1293
|
+
};
|
|
1294
|
+
};
|
|
1295
|
+
listProjects: {
|
|
1296
|
+
parameters: {
|
|
1297
|
+
query?: {
|
|
1298
|
+
/** @description Workspace handle. Omit for your own. */
|
|
1299
|
+
workspace?: string;
|
|
1300
|
+
};
|
|
1301
|
+
header?: never;
|
|
1302
|
+
path?: never;
|
|
1303
|
+
cookie?: never;
|
|
1304
|
+
};
|
|
1305
|
+
requestBody?: never;
|
|
1306
|
+
responses: {
|
|
1307
|
+
/** @description Your projects */
|
|
1308
|
+
200: {
|
|
1309
|
+
headers: {
|
|
1310
|
+
[name: string]: unknown;
|
|
1311
|
+
};
|
|
1312
|
+
content: {
|
|
1313
|
+
'application/json': {
|
|
1314
|
+
[key: string]: unknown;
|
|
1315
|
+
};
|
|
1316
|
+
};
|
|
1317
|
+
};
|
|
1318
|
+
default: components['responses']['Error'];
|
|
1319
|
+
};
|
|
1320
|
+
};
|
|
1321
|
+
createProject: {
|
|
1322
|
+
parameters: {
|
|
1323
|
+
query?: never;
|
|
1324
|
+
header?: never;
|
|
1325
|
+
path?: never;
|
|
1326
|
+
cookie?: never;
|
|
1327
|
+
};
|
|
1328
|
+
requestBody?: {
|
|
1329
|
+
content: {
|
|
1330
|
+
'application/json': {
|
|
1331
|
+
/** @description ≤ 120 chars. */
|
|
1332
|
+
title?: string;
|
|
1333
|
+
/** @description Artifact ids or slugs, in order. */
|
|
1334
|
+
artifacts?: string[];
|
|
1335
|
+
/** @description Heading over these artifacts. */
|
|
1336
|
+
groupLabel?: string;
|
|
1337
|
+
/**
|
|
1338
|
+
* @description organization: anyone at the workspace. Widening over private needs confirm.
|
|
1339
|
+
* @enum {string}
|
|
1340
|
+
*/
|
|
1341
|
+
visibility?: 'private' | 'organization' | 'public';
|
|
1342
|
+
/** @description See super_help projects. null: manual. */
|
|
1343
|
+
rule?: Record<string, unknown> | null;
|
|
1344
|
+
/** @description Needed to delete; also to add a private artifact to a shared project, or widen one holding private ones (`confirm_private`). */
|
|
1345
|
+
confirm?: boolean;
|
|
1346
|
+
/** @description Workspace handle. Omit for your own. */
|
|
1347
|
+
workspace?: string;
|
|
1348
|
+
};
|
|
1349
|
+
};
|
|
1350
|
+
};
|
|
1351
|
+
responses: {
|
|
1352
|
+
/** @description Create a project, optionally seeded with artifacts */
|
|
1353
|
+
200: {
|
|
1354
|
+
headers: {
|
|
1355
|
+
[name: string]: unknown;
|
|
1356
|
+
};
|
|
1357
|
+
content: {
|
|
1358
|
+
'application/json': {
|
|
1359
|
+
[key: string]: unknown;
|
|
1360
|
+
};
|
|
1361
|
+
};
|
|
1362
|
+
};
|
|
1363
|
+
default: components['responses']['Error'];
|
|
1364
|
+
};
|
|
1365
|
+
};
|
|
1366
|
+
getProject: {
|
|
1367
|
+
parameters: {
|
|
1368
|
+
query?: {
|
|
1369
|
+
/** @description Workspace handle. Omit for your own. */
|
|
1370
|
+
workspace?: string;
|
|
1371
|
+
};
|
|
1372
|
+
header?: never;
|
|
1373
|
+
path: {
|
|
1374
|
+
/** @description Project id, slug or exact title. */
|
|
1375
|
+
project: string;
|
|
1376
|
+
};
|
|
1377
|
+
cookie?: never;
|
|
1378
|
+
};
|
|
1379
|
+
requestBody?: never;
|
|
1380
|
+
responses: {
|
|
1381
|
+
/** @description One project and its items */
|
|
1382
|
+
200: {
|
|
1383
|
+
headers: {
|
|
1384
|
+
[name: string]: unknown;
|
|
1385
|
+
};
|
|
1386
|
+
content: {
|
|
1387
|
+
'application/json': {
|
|
1388
|
+
[key: string]: unknown;
|
|
1389
|
+
};
|
|
1390
|
+
};
|
|
1391
|
+
};
|
|
1392
|
+
default: components['responses']['Error'];
|
|
1393
|
+
};
|
|
1394
|
+
};
|
|
1395
|
+
deleteProject: {
|
|
1396
|
+
parameters: {
|
|
1397
|
+
query: {
|
|
1398
|
+
/** @description Repeat the project: deleting is permanent. */
|
|
1399
|
+
confirm: string;
|
|
1400
|
+
};
|
|
1401
|
+
header?: never;
|
|
1402
|
+
path: {
|
|
1403
|
+
/** @description Project id, slug or exact title. */
|
|
1404
|
+
project: string;
|
|
1405
|
+
};
|
|
1406
|
+
cookie?: never;
|
|
1407
|
+
};
|
|
1408
|
+
requestBody?: never;
|
|
1409
|
+
responses: {
|
|
1410
|
+
/** @description Delete a project; its artifacts stay */
|
|
1411
|
+
200: {
|
|
1412
|
+
headers: {
|
|
1413
|
+
[name: string]: unknown;
|
|
1414
|
+
};
|
|
1415
|
+
content: {
|
|
1416
|
+
'application/json': {
|
|
1417
|
+
[key: string]: unknown;
|
|
1418
|
+
};
|
|
1419
|
+
};
|
|
1420
|
+
};
|
|
1421
|
+
default: components['responses']['Error'];
|
|
1422
|
+
};
|
|
1423
|
+
};
|
|
1424
|
+
updateProject: {
|
|
1425
|
+
parameters: {
|
|
1426
|
+
query?: never;
|
|
1427
|
+
header?: never;
|
|
1428
|
+
path: {
|
|
1429
|
+
/** @description Project id, slug or exact title. */
|
|
1430
|
+
project: string;
|
|
1431
|
+
};
|
|
1432
|
+
cookie?: never;
|
|
1433
|
+
};
|
|
1434
|
+
requestBody?: {
|
|
1435
|
+
content: {
|
|
1436
|
+
'application/json': {
|
|
1437
|
+
/** @description ≤ 120 chars. */
|
|
1438
|
+
title?: string;
|
|
1439
|
+
/**
|
|
1440
|
+
* @description organization: anyone at the workspace. Widening over private needs confirm.
|
|
1441
|
+
* @enum {string}
|
|
1442
|
+
*/
|
|
1443
|
+
visibility?: 'private' | 'organization' | 'public';
|
|
1444
|
+
/** @description Every item once, in order: ids or slugs. */
|
|
1445
|
+
order?: string[];
|
|
1446
|
+
move?: {
|
|
1447
|
+
/** @description An artifact id or slug, or an item id. */
|
|
1448
|
+
artifact: string;
|
|
1449
|
+
/** @description New position; 1 is first. */
|
|
1450
|
+
to: number;
|
|
1451
|
+
};
|
|
1452
|
+
/** @description See super_help projects. null: manual. */
|
|
1453
|
+
rule?: Record<string, unknown> | null;
|
|
1454
|
+
/** @description groupLabels shown folded. Whole set. */
|
|
1455
|
+
collapsedGroups?: string[];
|
|
1456
|
+
/** @description Needed to delete; also to add a private artifact to a shared project, or widen one holding private ones (`confirm_private`). */
|
|
1457
|
+
confirm?: boolean;
|
|
1458
|
+
/** @description Workspace handle. Omit for your own. */
|
|
1459
|
+
workspace?: string;
|
|
1460
|
+
};
|
|
1461
|
+
};
|
|
1462
|
+
};
|
|
1463
|
+
responses: {
|
|
1464
|
+
/** @description Rename, set visibility, reorder, move, fold groups or set a rule */
|
|
1465
|
+
200: {
|
|
1466
|
+
headers: {
|
|
1467
|
+
[name: string]: unknown;
|
|
1468
|
+
};
|
|
1469
|
+
content: {
|
|
1470
|
+
'application/json': {
|
|
1471
|
+
[key: string]: unknown;
|
|
1472
|
+
};
|
|
1473
|
+
};
|
|
1474
|
+
};
|
|
1475
|
+
default: components['responses']['Error'];
|
|
1476
|
+
};
|
|
1477
|
+
};
|
|
1478
|
+
addProjectArtifacts: {
|
|
1479
|
+
parameters: {
|
|
1480
|
+
query?: never;
|
|
1481
|
+
header?: never;
|
|
1482
|
+
path: {
|
|
1483
|
+
/** @description Project id, slug or exact title. */
|
|
1484
|
+
project: string;
|
|
1485
|
+
};
|
|
1486
|
+
cookie?: never;
|
|
1487
|
+
};
|
|
1488
|
+
requestBody?: {
|
|
1489
|
+
content: {
|
|
1490
|
+
'application/json': {
|
|
1491
|
+
/** @description Artifact ids or slugs, in order. */
|
|
1492
|
+
artifacts?: string[];
|
|
1493
|
+
/** @description Heading over these artifacts. */
|
|
1494
|
+
groupLabel?: string;
|
|
1495
|
+
/** @description Needed to delete; also to add a private artifact to a shared project, or widen one holding private ones (`confirm_private`). */
|
|
1496
|
+
confirm?: boolean;
|
|
1497
|
+
/** @description Workspace handle. Omit for your own. */
|
|
1498
|
+
workspace?: string;
|
|
1499
|
+
};
|
|
1500
|
+
};
|
|
1501
|
+
};
|
|
1502
|
+
responses: {
|
|
1503
|
+
/** @description Add artifacts to a project */
|
|
1504
|
+
200: {
|
|
1505
|
+
headers: {
|
|
1506
|
+
[name: string]: unknown;
|
|
1507
|
+
};
|
|
1508
|
+
content: {
|
|
1509
|
+
'application/json': {
|
|
1510
|
+
[key: string]: unknown;
|
|
1511
|
+
};
|
|
1512
|
+
};
|
|
1513
|
+
};
|
|
1514
|
+
default: components['responses']['Error'];
|
|
1515
|
+
};
|
|
1516
|
+
};
|
|
1517
|
+
removeProjectArtifact: {
|
|
1518
|
+
parameters: {
|
|
1519
|
+
query?: never;
|
|
1520
|
+
header?: never;
|
|
1521
|
+
path: {
|
|
1522
|
+
/** @description Project id, slug or exact title. */
|
|
1523
|
+
project: string;
|
|
1524
|
+
/** @description An artifact id or slug, or an item id. */
|
|
1525
|
+
remove: string;
|
|
1526
|
+
};
|
|
1527
|
+
cookie?: never;
|
|
1528
|
+
};
|
|
1529
|
+
requestBody?: never;
|
|
1530
|
+
responses: {
|
|
1531
|
+
/** @description Remove one artifact (or item) from a project */
|
|
1532
|
+
200: {
|
|
1533
|
+
headers: {
|
|
1534
|
+
[name: string]: unknown;
|
|
1535
|
+
};
|
|
1536
|
+
content: {
|
|
1537
|
+
'application/json': {
|
|
1538
|
+
[key: string]: unknown;
|
|
1539
|
+
};
|
|
1540
|
+
};
|
|
1541
|
+
};
|
|
1542
|
+
default: components['responses']['Error'];
|
|
1543
|
+
};
|
|
1544
|
+
};
|
|
1545
|
+
shareArtifact: {
|
|
1546
|
+
parameters: {
|
|
1547
|
+
query?: never;
|
|
1548
|
+
header?: never;
|
|
1549
|
+
path: {
|
|
1550
|
+
/** @description Artifact id or slug. */
|
|
1551
|
+
artifact: string;
|
|
1552
|
+
};
|
|
1553
|
+
cookie?: never;
|
|
1554
|
+
};
|
|
1555
|
+
requestBody: {
|
|
1556
|
+
content: {
|
|
1557
|
+
'application/json': {
|
|
1558
|
+
emails: string[];
|
|
1559
|
+
/**
|
|
1560
|
+
* @description Default viewer; editor for a workspace. An editor's key restores (super_artifact_set version), writes (super_data_write), publishes by slug in its workspace.
|
|
1561
|
+
* @enum {string}
|
|
1562
|
+
*/
|
|
1563
|
+
role?: 'viewer' | 'commenter' | 'editor';
|
|
1564
|
+
};
|
|
1565
|
+
};
|
|
1566
|
+
};
|
|
1567
|
+
responses: {
|
|
1568
|
+
/** @description Give named people access to an artifact */
|
|
1569
|
+
200: {
|
|
1570
|
+
headers: {
|
|
1571
|
+
[name: string]: unknown;
|
|
1572
|
+
};
|
|
1573
|
+
content: {
|
|
1574
|
+
'application/json': {
|
|
1575
|
+
[key: string]: unknown;
|
|
1576
|
+
};
|
|
1577
|
+
};
|
|
1578
|
+
};
|
|
1579
|
+
default: components['responses']['Error'];
|
|
1580
|
+
};
|
|
1581
|
+
};
|
|
1582
|
+
shareProject: {
|
|
1583
|
+
parameters: {
|
|
1584
|
+
query?: never;
|
|
1585
|
+
header?: never;
|
|
1586
|
+
path: {
|
|
1587
|
+
/** @description Project id, slug or exact title. */
|
|
1588
|
+
project: string;
|
|
1589
|
+
};
|
|
1590
|
+
cookie?: never;
|
|
1591
|
+
};
|
|
1592
|
+
requestBody: {
|
|
1593
|
+
content: {
|
|
1594
|
+
'application/json': {
|
|
1595
|
+
emails: string[];
|
|
1596
|
+
/**
|
|
1597
|
+
* @description Default viewer; editor for a workspace. An editor's key restores (super_artifact_set version), writes (super_data_write), publishes by slug in its workspace.
|
|
1598
|
+
* @enum {string}
|
|
1599
|
+
*/
|
|
1600
|
+
role?: 'viewer' | 'commenter' | 'editor';
|
|
1601
|
+
/** @description Project only: true shares a project that holds private artifacts (`confirm_private`). */
|
|
1602
|
+
confirm?: boolean;
|
|
1603
|
+
};
|
|
1604
|
+
};
|
|
1605
|
+
};
|
|
1606
|
+
responses: {
|
|
1607
|
+
/** @description Give named people access to a project */
|
|
1608
|
+
200: {
|
|
1609
|
+
headers: {
|
|
1610
|
+
[name: string]: unknown;
|
|
1611
|
+
};
|
|
1612
|
+
content: {
|
|
1613
|
+
'application/json': {
|
|
1614
|
+
[key: string]: unknown;
|
|
1615
|
+
};
|
|
1616
|
+
};
|
|
1617
|
+
};
|
|
1618
|
+
default: components['responses']['Error'];
|
|
1619
|
+
};
|
|
1620
|
+
};
|
|
1621
|
+
shareWorkspace: {
|
|
1622
|
+
parameters: {
|
|
1623
|
+
query?: never;
|
|
1624
|
+
header?: never;
|
|
1625
|
+
path?: never;
|
|
1626
|
+
cookie?: never;
|
|
1627
|
+
};
|
|
1628
|
+
requestBody: {
|
|
1629
|
+
content: {
|
|
1630
|
+
'application/json': {
|
|
1631
|
+
emails: string[];
|
|
1632
|
+
/**
|
|
1633
|
+
* @description Default viewer; editor for a workspace. An editor's key restores (super_artifact_set version), writes (super_data_write), publishes by slug in its workspace.
|
|
1634
|
+
* @enum {string}
|
|
1635
|
+
*/
|
|
1636
|
+
role?: 'viewer' | 'commenter' | 'editor';
|
|
1637
|
+
/** @description A handle you administer, or "" for your own. */
|
|
1638
|
+
workspace?: string;
|
|
1639
|
+
};
|
|
1640
|
+
};
|
|
1641
|
+
};
|
|
1642
|
+
responses: {
|
|
1643
|
+
/** @description Invite editors to a workspace (returns accept links) */
|
|
1644
|
+
200: {
|
|
1645
|
+
headers: {
|
|
1646
|
+
[name: string]: unknown;
|
|
1647
|
+
};
|
|
1648
|
+
content: {
|
|
1649
|
+
'application/json': {
|
|
1650
|
+
[key: string]: unknown;
|
|
1651
|
+
};
|
|
1652
|
+
};
|
|
1653
|
+
};
|
|
1654
|
+
default: components['responses']['Error'];
|
|
1655
|
+
};
|
|
1656
|
+
};
|
|
1657
|
+
listComments: {
|
|
1658
|
+
parameters: {
|
|
1659
|
+
query?: {
|
|
1660
|
+
status?: 'all' | 'open' | 'resolved';
|
|
1661
|
+
/** @description A path inside the artifact, e.g. "/pricing". Not pagination. */
|
|
1662
|
+
page?: string;
|
|
1663
|
+
limit?: number;
|
|
1664
|
+
/** @description The previous cursor.next. */
|
|
1665
|
+
cursor?: string;
|
|
1666
|
+
};
|
|
1667
|
+
header?: never;
|
|
1668
|
+
path: {
|
|
1669
|
+
/** @description Artifact id or slug. */
|
|
1670
|
+
artifact: string;
|
|
1671
|
+
};
|
|
1672
|
+
cookie?: never;
|
|
1673
|
+
};
|
|
1674
|
+
requestBody?: never;
|
|
1675
|
+
responses: {
|
|
1676
|
+
/** @description Comment threads on an artifact, newest first */
|
|
1677
|
+
200: {
|
|
1678
|
+
headers: {
|
|
1679
|
+
[name: string]: unknown;
|
|
1680
|
+
};
|
|
1681
|
+
content: {
|
|
1682
|
+
'application/json': {
|
|
1683
|
+
[key: string]: unknown;
|
|
1684
|
+
};
|
|
1685
|
+
};
|
|
1686
|
+
};
|
|
1687
|
+
default: components['responses']['Error'];
|
|
1688
|
+
};
|
|
1689
|
+
};
|
|
1690
|
+
respondToComments: {
|
|
1691
|
+
parameters: {
|
|
1692
|
+
query?: never;
|
|
1693
|
+
header?: never;
|
|
1694
|
+
path: {
|
|
1695
|
+
/** @description Artifact id or slug. */
|
|
1696
|
+
artifact: string;
|
|
1697
|
+
};
|
|
1698
|
+
cookie?: never;
|
|
1699
|
+
};
|
|
1700
|
+
requestBody?: {
|
|
1701
|
+
content: {
|
|
1702
|
+
'application/json': {
|
|
1703
|
+
respond?: {
|
|
1704
|
+
/** @description Thread id, not a message id. */
|
|
1705
|
+
thread: string;
|
|
1706
|
+
/** @description A plain-text reply. */
|
|
1707
|
+
body?: string;
|
|
1708
|
+
/** @description true resolves, false reopens. */
|
|
1709
|
+
resolve?: boolean;
|
|
1710
|
+
}[];
|
|
1711
|
+
};
|
|
1712
|
+
};
|
|
1713
|
+
};
|
|
1714
|
+
responses: {
|
|
1715
|
+
/** @description Reply to and/or resolve threads, one outcome each */
|
|
1716
|
+
200: {
|
|
1717
|
+
headers: {
|
|
1718
|
+
[name: string]: unknown;
|
|
1719
|
+
};
|
|
1720
|
+
content: {
|
|
1721
|
+
'application/json': {
|
|
1722
|
+
[key: string]: unknown;
|
|
1723
|
+
};
|
|
1724
|
+
};
|
|
1725
|
+
};
|
|
1726
|
+
default: components['responses']['Error'];
|
|
1727
|
+
};
|
|
1728
|
+
};
|
|
1729
|
+
getCommentScreenshot: {
|
|
1730
|
+
parameters: {
|
|
1731
|
+
query?: never;
|
|
1732
|
+
header?: never;
|
|
1733
|
+
path: {
|
|
1734
|
+
/** @description Artifact id or slug. */
|
|
1735
|
+
artifact: string;
|
|
1736
|
+
/** @description A message id, not a thread id. */
|
|
1737
|
+
screenshot: string;
|
|
1738
|
+
};
|
|
1739
|
+
cookie?: never;
|
|
1740
|
+
};
|
|
1741
|
+
requestBody?: never;
|
|
1742
|
+
responses: {
|
|
1743
|
+
/** @description One message's screenshot, base64 in `image` */
|
|
1744
|
+
200: {
|
|
1745
|
+
headers: {
|
|
1746
|
+
[name: string]: unknown;
|
|
1747
|
+
};
|
|
1748
|
+
content: {
|
|
1749
|
+
'application/json': {
|
|
1750
|
+
[key: string]: unknown;
|
|
1751
|
+
};
|
|
1752
|
+
};
|
|
1753
|
+
};
|
|
1754
|
+
default: components['responses']['Error'];
|
|
1755
|
+
};
|
|
1756
|
+
};
|
|
1757
|
+
listMentions: {
|
|
1758
|
+
parameters: {
|
|
1759
|
+
query?: {
|
|
1760
|
+
/** @description Artifact id or slug. */
|
|
1761
|
+
artifact?: string;
|
|
1762
|
+
limit?: number;
|
|
1763
|
+
/** @description The previous cursor.next. */
|
|
1764
|
+
cursor?: string;
|
|
1765
|
+
};
|
|
1766
|
+
header?: never;
|
|
1767
|
+
path?: never;
|
|
1768
|
+
cookie?: never;
|
|
1769
|
+
};
|
|
1770
|
+
requestBody?: never;
|
|
1771
|
+
responses: {
|
|
1772
|
+
/** @description Where people @mentioned you; listing marks them seen */
|
|
1773
|
+
200: {
|
|
1774
|
+
headers: {
|
|
1775
|
+
[name: string]: unknown;
|
|
1776
|
+
};
|
|
1777
|
+
content: {
|
|
1778
|
+
'application/json': {
|
|
1779
|
+
[key: string]: unknown;
|
|
1780
|
+
};
|
|
1781
|
+
};
|
|
1782
|
+
};
|
|
1783
|
+
default: components['responses']['Error'];
|
|
1784
|
+
};
|
|
1785
|
+
};
|
|
1786
|
+
listSignatureRequests: {
|
|
1787
|
+
parameters: {
|
|
1788
|
+
query?: {
|
|
1789
|
+
/** @description Artifact id or slug. */
|
|
1790
|
+
artifact?: string;
|
|
1791
|
+
};
|
|
1792
|
+
header?: never;
|
|
1793
|
+
path?: never;
|
|
1794
|
+
cookie?: never;
|
|
1795
|
+
};
|
|
1796
|
+
requestBody?: never;
|
|
1797
|
+
responses: {
|
|
1798
|
+
/** @description An artifact's signature requests, newest first */
|
|
1799
|
+
200: {
|
|
1800
|
+
headers: {
|
|
1801
|
+
[name: string]: unknown;
|
|
1802
|
+
};
|
|
1803
|
+
content: {
|
|
1804
|
+
'application/json': {
|
|
1805
|
+
[key: string]: unknown;
|
|
1806
|
+
};
|
|
1807
|
+
};
|
|
1808
|
+
};
|
|
1809
|
+
default: components['responses']['Error'];
|
|
1810
|
+
};
|
|
1811
|
+
};
|
|
1812
|
+
requestSignatures: {
|
|
1813
|
+
parameters: {
|
|
1814
|
+
query?: never;
|
|
1815
|
+
header?: never;
|
|
1816
|
+
path?: never;
|
|
1817
|
+
cookie?: never;
|
|
1818
|
+
};
|
|
1819
|
+
requestBody?: {
|
|
1820
|
+
content: {
|
|
1821
|
+
'application/json': {
|
|
1822
|
+
/** @description Artifact id or slug. */
|
|
1823
|
+
artifact?: string;
|
|
1824
|
+
/** @description The version to sign. Default: the published one. */
|
|
1825
|
+
version?: number;
|
|
1826
|
+
signers?: {
|
|
1827
|
+
name: string;
|
|
1828
|
+
email: string;
|
|
1829
|
+
/** @description Their role in the agreement, e.g. "Tenant". */
|
|
1830
|
+
party?: string;
|
|
1831
|
+
}[];
|
|
1832
|
+
/** @description A note shown to every signer. */
|
|
1833
|
+
message?: string;
|
|
1834
|
+
};
|
|
1835
|
+
};
|
|
1836
|
+
};
|
|
1837
|
+
responses: {
|
|
1838
|
+
/** @description Ask named people to sign one version of an artifact */
|
|
1839
|
+
200: {
|
|
1840
|
+
headers: {
|
|
1841
|
+
[name: string]: unknown;
|
|
1842
|
+
};
|
|
1843
|
+
content: {
|
|
1844
|
+
'application/json': {
|
|
1845
|
+
[key: string]: unknown;
|
|
1846
|
+
};
|
|
1847
|
+
};
|
|
1848
|
+
};
|
|
1849
|
+
default: components['responses']['Error'];
|
|
1850
|
+
};
|
|
1851
|
+
};
|
|
1852
|
+
getSignatureRequest: {
|
|
1853
|
+
parameters: {
|
|
1854
|
+
query?: never;
|
|
1855
|
+
header?: never;
|
|
1856
|
+
path: {
|
|
1857
|
+
/** @description A signature request id, from request or status. */
|
|
1858
|
+
request: string;
|
|
1859
|
+
};
|
|
1860
|
+
cookie?: never;
|
|
1861
|
+
};
|
|
1862
|
+
requestBody?: never;
|
|
1863
|
+
responses: {
|
|
1864
|
+
/** @description One signature request and its signers */
|
|
1865
|
+
200: {
|
|
1866
|
+
headers: {
|
|
1867
|
+
[name: string]: unknown;
|
|
1868
|
+
};
|
|
1869
|
+
content: {
|
|
1870
|
+
'application/json': {
|
|
1871
|
+
[key: string]: unknown;
|
|
1872
|
+
};
|
|
1873
|
+
};
|
|
1874
|
+
};
|
|
1875
|
+
default: components['responses']['Error'];
|
|
1876
|
+
};
|
|
1877
|
+
};
|
|
1878
|
+
remindSigner: {
|
|
1879
|
+
parameters: {
|
|
1880
|
+
query?: never;
|
|
1881
|
+
header?: never;
|
|
1882
|
+
path: {
|
|
1883
|
+
/** @description A signature request id, from request or status. */
|
|
1884
|
+
request: string;
|
|
1885
|
+
};
|
|
1886
|
+
cookie?: never;
|
|
1887
|
+
};
|
|
1888
|
+
requestBody?: {
|
|
1889
|
+
content: {
|
|
1890
|
+
'application/json': {
|
|
1891
|
+
/** @description A signer id, from status. For remind. */
|
|
1892
|
+
signer?: string;
|
|
1893
|
+
};
|
|
1894
|
+
};
|
|
1895
|
+
};
|
|
1896
|
+
responses: {
|
|
1897
|
+
/** @description Email a signer their link again */
|
|
1898
|
+
200: {
|
|
1899
|
+
headers: {
|
|
1900
|
+
[name: string]: unknown;
|
|
1901
|
+
};
|
|
1902
|
+
content: {
|
|
1903
|
+
'application/json': {
|
|
1904
|
+
[key: string]: unknown;
|
|
1905
|
+
};
|
|
1906
|
+
};
|
|
1907
|
+
};
|
|
1908
|
+
default: components['responses']['Error'];
|
|
1909
|
+
};
|
|
1910
|
+
};
|
|
1911
|
+
withdrawSignatureRequest: {
|
|
1912
|
+
parameters: {
|
|
1913
|
+
query?: never;
|
|
1914
|
+
header?: never;
|
|
1915
|
+
path: {
|
|
1916
|
+
/** @description A signature request id, from request or status. */
|
|
1917
|
+
request: string;
|
|
1918
|
+
};
|
|
1919
|
+
cookie?: never;
|
|
1920
|
+
};
|
|
1921
|
+
requestBody?: never;
|
|
1922
|
+
responses: {
|
|
1923
|
+
/** @description Close an open signature request */
|
|
1924
|
+
200: {
|
|
1925
|
+
headers: {
|
|
1926
|
+
[name: string]: unknown;
|
|
1927
|
+
};
|
|
1928
|
+
content: {
|
|
1929
|
+
'application/json': {
|
|
1930
|
+
[key: string]: unknown;
|
|
1931
|
+
};
|
|
1932
|
+
};
|
|
1933
|
+
};
|
|
1934
|
+
default: components['responses']['Error'];
|
|
1935
|
+
};
|
|
1936
|
+
};
|
|
1937
|
+
}
|
|
1938
|
+
|
|
1939
|
+
declare const OPERATIONS: {
|
|
1940
|
+
readonly whoami: {
|
|
1941
|
+
readonly method: "GET";
|
|
1942
|
+
readonly path: "/v1/whoami";
|
|
1943
|
+
readonly query: readonly [];
|
|
1944
|
+
};
|
|
1945
|
+
readonly getHelp: {
|
|
1946
|
+
readonly method: "GET";
|
|
1947
|
+
readonly path: "/v1/help";
|
|
1948
|
+
readonly query: readonly ["topic"];
|
|
1949
|
+
};
|
|
1950
|
+
readonly listArtifacts: {
|
|
1951
|
+
readonly method: "GET";
|
|
1952
|
+
readonly path: "/v1/artifacts";
|
|
1953
|
+
readonly query: readonly [];
|
|
1954
|
+
};
|
|
1955
|
+
readonly publishArtifact: {
|
|
1956
|
+
readonly method: "POST";
|
|
1957
|
+
readonly path: "/v1/artifacts";
|
|
1958
|
+
readonly query: readonly [];
|
|
1959
|
+
};
|
|
1960
|
+
readonly getArtifact: {
|
|
1961
|
+
readonly method: "GET";
|
|
1962
|
+
readonly path: "/v1/artifacts/{artifact}";
|
|
1963
|
+
readonly query: readonly [];
|
|
1964
|
+
};
|
|
1965
|
+
readonly updateArtifact: {
|
|
1966
|
+
readonly method: "PATCH";
|
|
1967
|
+
readonly path: "/v1/artifacts/{artifact}";
|
|
1968
|
+
readonly query: readonly [];
|
|
1969
|
+
};
|
|
1970
|
+
readonly deleteArtifact: {
|
|
1971
|
+
readonly method: "DELETE";
|
|
1972
|
+
readonly path: "/v1/artifacts/{artifact}";
|
|
1973
|
+
readonly query: readonly [];
|
|
1974
|
+
readonly confirm: "artifact";
|
|
1975
|
+
};
|
|
1976
|
+
readonly readArtifactFile: {
|
|
1977
|
+
readonly method: "GET";
|
|
1978
|
+
readonly path: "/v1/artifacts/{artifact}/file";
|
|
1979
|
+
readonly query: readonly ["path", "version"];
|
|
1980
|
+
};
|
|
1981
|
+
readonly openArtifact: {
|
|
1982
|
+
readonly method: "POST";
|
|
1983
|
+
readonly path: "/v1/artifacts/{artifact}/open";
|
|
1984
|
+
readonly query: readonly [];
|
|
1985
|
+
};
|
|
1986
|
+
readonly serveVersion: {
|
|
1987
|
+
readonly method: "POST";
|
|
1988
|
+
readonly path: "/v1/artifacts/{artifact}/versions/{version}/serve";
|
|
1989
|
+
readonly query: readonly [];
|
|
1990
|
+
};
|
|
1991
|
+
readonly startLiveRoom: {
|
|
1992
|
+
readonly method: "POST";
|
|
1993
|
+
readonly path: "/v1/artifacts/{artifact}/live";
|
|
1994
|
+
readonly query: readonly [];
|
|
1995
|
+
};
|
|
1996
|
+
readonly stopLiveRoom: {
|
|
1997
|
+
readonly method: "DELETE";
|
|
1998
|
+
readonly path: "/v1/artifacts/{artifact}/live";
|
|
1999
|
+
readonly query: readonly [];
|
|
2000
|
+
};
|
|
2001
|
+
readonly stageUploads: {
|
|
2002
|
+
readonly method: "POST";
|
|
2003
|
+
readonly path: "/v1/uploads";
|
|
2004
|
+
readonly query: readonly [];
|
|
2005
|
+
};
|
|
2006
|
+
readonly listArtifactRows: {
|
|
2007
|
+
readonly method: "GET";
|
|
2008
|
+
readonly path: "/v1/artifacts/{artifact}/data";
|
|
2009
|
+
readonly query: readonly ["filter", "since", "until", "sort", "limit", "cursor", "fields"];
|
|
2010
|
+
};
|
|
2011
|
+
readonly writeArtifactRows: {
|
|
2012
|
+
readonly method: "POST";
|
|
2013
|
+
readonly path: "/v1/artifacts/{artifact}/data/rows";
|
|
2014
|
+
readonly query: readonly [];
|
|
2015
|
+
};
|
|
2016
|
+
readonly listRows: {
|
|
2017
|
+
readonly method: "GET";
|
|
2018
|
+
readonly path: "/v1/data";
|
|
2019
|
+
readonly query: readonly ["dataset", "collection", "filter", "since", "until", "sort", "limit", "cursor", "fields"];
|
|
2020
|
+
};
|
|
2021
|
+
readonly queryData: {
|
|
2022
|
+
readonly method: "POST";
|
|
2023
|
+
readonly path: "/v1/data/query";
|
|
2024
|
+
readonly query: readonly [];
|
|
2025
|
+
};
|
|
2026
|
+
readonly getSchema: {
|
|
2027
|
+
readonly method: "GET";
|
|
2028
|
+
readonly path: "/v1/schema";
|
|
2029
|
+
readonly query: readonly ["series", "tags", "artifact", "compare", "since", "workspace"];
|
|
2030
|
+
};
|
|
2031
|
+
readonly defineCollection: {
|
|
2032
|
+
readonly method: "PUT";
|
|
2033
|
+
readonly path: "/v1/schema";
|
|
2034
|
+
readonly query: readonly [];
|
|
2035
|
+
};
|
|
2036
|
+
readonly listEntries: {
|
|
2037
|
+
readonly method: "GET";
|
|
2038
|
+
readonly path: "/v1/collections/{collection}/entries";
|
|
2039
|
+
readonly query: readonly ["workspace", "filter", "search", "sort", "direction", "page", "limit"];
|
|
2040
|
+
};
|
|
2041
|
+
readonly createEntries: {
|
|
2042
|
+
readonly method: "POST";
|
|
2043
|
+
readonly path: "/v1/collections/{collection}/entries";
|
|
2044
|
+
readonly query: readonly [];
|
|
2045
|
+
};
|
|
2046
|
+
readonly useSecret: {
|
|
2047
|
+
readonly method: "POST";
|
|
2048
|
+
readonly path: "/v1/collections/{collection}/entries/{entry}/fields/{field}/use";
|
|
2049
|
+
readonly query: readonly [];
|
|
2050
|
+
};
|
|
2051
|
+
readonly listTemplates: {
|
|
2052
|
+
readonly method: "GET";
|
|
2053
|
+
readonly path: "/v1/templates";
|
|
2054
|
+
readonly query: readonly ["request", "scope", "kind", "sort", "limit", "jobs", "audience", "needs", "cost", "tier", "mine"];
|
|
2055
|
+
};
|
|
2056
|
+
readonly saveTemplate: {
|
|
2057
|
+
readonly method: "POST";
|
|
2058
|
+
readonly path: "/v1/templates";
|
|
2059
|
+
readonly query: readonly [];
|
|
2060
|
+
};
|
|
2061
|
+
readonly getTemplate: {
|
|
2062
|
+
readonly method: "GET";
|
|
2063
|
+
readonly path: "/v1/templates/{slug}";
|
|
2064
|
+
readonly query: readonly ["version"];
|
|
2065
|
+
};
|
|
2066
|
+
readonly getTemplateHistory: {
|
|
2067
|
+
readonly method: "GET";
|
|
2068
|
+
readonly path: "/v1/templates/{slug}/history";
|
|
2069
|
+
readonly query: readonly [];
|
|
2070
|
+
};
|
|
2071
|
+
readonly getTemplateFeedback: {
|
|
2072
|
+
readonly method: "GET";
|
|
2073
|
+
readonly path: "/v1/templates/{slug}/feedback";
|
|
2074
|
+
readonly query: readonly [];
|
|
2075
|
+
};
|
|
2076
|
+
readonly actOnTemplate: {
|
|
2077
|
+
readonly method: "POST";
|
|
2078
|
+
readonly path: "/v1/templates/{slug}/actions";
|
|
2079
|
+
readonly query: readonly [];
|
|
2080
|
+
};
|
|
2081
|
+
readonly releaseTemplate: {
|
|
2082
|
+
readonly method: "POST";
|
|
2083
|
+
readonly path: "/v1/templates/{slug}/release";
|
|
2084
|
+
readonly query: readonly [];
|
|
2085
|
+
};
|
|
2086
|
+
readonly listProjects: {
|
|
2087
|
+
readonly method: "GET";
|
|
2088
|
+
readonly path: "/v1/projects";
|
|
2089
|
+
readonly query: readonly ["workspace"];
|
|
2090
|
+
};
|
|
2091
|
+
readonly createProject: {
|
|
2092
|
+
readonly method: "POST";
|
|
2093
|
+
readonly path: "/v1/projects";
|
|
2094
|
+
readonly query: readonly [];
|
|
2095
|
+
};
|
|
2096
|
+
readonly getProject: {
|
|
2097
|
+
readonly method: "GET";
|
|
2098
|
+
readonly path: "/v1/projects/{project}";
|
|
2099
|
+
readonly query: readonly ["workspace"];
|
|
2100
|
+
};
|
|
2101
|
+
readonly updateProject: {
|
|
2102
|
+
readonly method: "PATCH";
|
|
2103
|
+
readonly path: "/v1/projects/{project}";
|
|
2104
|
+
readonly query: readonly [];
|
|
2105
|
+
};
|
|
2106
|
+
readonly deleteProject: {
|
|
2107
|
+
readonly method: "DELETE";
|
|
2108
|
+
readonly path: "/v1/projects/{project}";
|
|
2109
|
+
readonly query: readonly [];
|
|
2110
|
+
readonly confirm: "project";
|
|
2111
|
+
};
|
|
2112
|
+
readonly addProjectArtifacts: {
|
|
2113
|
+
readonly method: "POST";
|
|
2114
|
+
readonly path: "/v1/projects/{project}/artifacts";
|
|
2115
|
+
readonly query: readonly [];
|
|
2116
|
+
};
|
|
2117
|
+
readonly removeProjectArtifact: {
|
|
2118
|
+
readonly method: "DELETE";
|
|
2119
|
+
readonly path: "/v1/projects/{project}/artifacts/{remove}";
|
|
2120
|
+
readonly query: readonly [];
|
|
2121
|
+
};
|
|
2122
|
+
readonly shareArtifact: {
|
|
2123
|
+
readonly method: "POST";
|
|
2124
|
+
readonly path: "/v1/artifacts/{artifact}/shares";
|
|
2125
|
+
readonly query: readonly [];
|
|
2126
|
+
};
|
|
2127
|
+
readonly shareProject: {
|
|
2128
|
+
readonly method: "POST";
|
|
2129
|
+
readonly path: "/v1/projects/{project}/shares";
|
|
2130
|
+
readonly query: readonly [];
|
|
2131
|
+
};
|
|
2132
|
+
readonly shareWorkspace: {
|
|
2133
|
+
readonly method: "POST";
|
|
2134
|
+
readonly path: "/v1/workspace/shares";
|
|
2135
|
+
readonly query: readonly [];
|
|
2136
|
+
};
|
|
2137
|
+
readonly listComments: {
|
|
2138
|
+
readonly method: "GET";
|
|
2139
|
+
readonly path: "/v1/artifacts/{artifact}/comments";
|
|
2140
|
+
readonly query: readonly ["status", "page", "limit", "cursor"];
|
|
2141
|
+
};
|
|
2142
|
+
readonly respondToComments: {
|
|
2143
|
+
readonly method: "POST";
|
|
2144
|
+
readonly path: "/v1/artifacts/{artifact}/comments/responses";
|
|
2145
|
+
readonly query: readonly [];
|
|
2146
|
+
};
|
|
2147
|
+
readonly getCommentScreenshot: {
|
|
2148
|
+
readonly method: "GET";
|
|
2149
|
+
readonly path: "/v1/artifacts/{artifact}/comments/screenshots/{screenshot}";
|
|
2150
|
+
readonly query: readonly [];
|
|
2151
|
+
};
|
|
2152
|
+
readonly listMentions: {
|
|
2153
|
+
readonly method: "GET";
|
|
2154
|
+
readonly path: "/v1/mentions";
|
|
2155
|
+
readonly query: readonly ["artifact", "limit", "cursor"];
|
|
2156
|
+
};
|
|
2157
|
+
readonly listSignatureRequests: {
|
|
2158
|
+
readonly method: "GET";
|
|
2159
|
+
readonly path: "/v1/signatures";
|
|
2160
|
+
readonly query: readonly ["artifact"];
|
|
2161
|
+
};
|
|
2162
|
+
readonly requestSignatures: {
|
|
2163
|
+
readonly method: "POST";
|
|
2164
|
+
readonly path: "/v1/signatures";
|
|
2165
|
+
readonly query: readonly [];
|
|
2166
|
+
};
|
|
2167
|
+
readonly getSignatureRequest: {
|
|
2168
|
+
readonly method: "GET";
|
|
2169
|
+
readonly path: "/v1/signatures/{request}";
|
|
2170
|
+
readonly query: readonly [];
|
|
2171
|
+
};
|
|
2172
|
+
readonly remindSigner: {
|
|
2173
|
+
readonly method: "POST";
|
|
2174
|
+
readonly path: "/v1/signatures/{request}/remind";
|
|
2175
|
+
readonly query: readonly [];
|
|
2176
|
+
};
|
|
2177
|
+
readonly withdrawSignatureRequest: {
|
|
2178
|
+
readonly method: "POST";
|
|
2179
|
+
readonly path: "/v1/signatures/{request}/withdraw";
|
|
2180
|
+
readonly query: readonly [];
|
|
2181
|
+
};
|
|
2182
|
+
};
|
|
2183
|
+
declare class AccountResource {
|
|
2184
|
+
protected readonly client: Core;
|
|
2185
|
+
constructor(client: Core);
|
|
2186
|
+
/** Who this key publishes as */
|
|
2187
|
+
whoami(params?: Params<operations['whoami']>, options?: RequestOptions): Promise<Result<operations['whoami']>>;
|
|
2188
|
+
/** How the operations fit together */
|
|
2189
|
+
help(params?: Params<operations['getHelp']>, options?: RequestOptions): Promise<Result<operations['getHelp']>>;
|
|
2190
|
+
}
|
|
2191
|
+
declare class ArtifactsResource {
|
|
2192
|
+
protected readonly client: Core;
|
|
2193
|
+
constructor(client: Core);
|
|
2194
|
+
/** List your artifacts, newest first */
|
|
2195
|
+
list(params?: Params<operations['listArtifacts']>, options?: RequestOptions): Promise<Result<operations['listArtifacts']>>;
|
|
2196
|
+
/** Publish an artifact, or a new version of one */
|
|
2197
|
+
publish(params: Params<operations['publishArtifact']>, options?: RequestOptions): Promise<Result<operations['publishArtifact']>>;
|
|
2198
|
+
/** One artifact: its versions, published version and declaration */
|
|
2199
|
+
get(params: Params<operations['getArtifact']>, options?: RequestOptions): Promise<Result<operations['getArtifact']>>;
|
|
2200
|
+
/** Change visibility, gallery label, live phase or submission email */
|
|
2201
|
+
update(params: Params<operations['updateArtifact']>, options?: RequestOptions): Promise<Result<operations['updateArtifact']>>;
|
|
2202
|
+
/** Delete an artifact with every version, permanently */
|
|
2203
|
+
delete(params: Omit<Params<operations['deleteArtifact']>, 'confirm'>, options?: RequestOptions): Promise<Result<operations['deleteArtifact']>>;
|
|
2204
|
+
/** Read one file of a version as text (default: the published index.html) */
|
|
2205
|
+
readFile(params: Params<operations['readArtifactFile']>, options?: RequestOptions): Promise<Result<operations['readArtifactFile']>>;
|
|
2206
|
+
/** A ten-minute viewer URL for an artifact, private included */
|
|
2207
|
+
open(params: Params<operations['openArtifact']>, options?: RequestOptions): Promise<Result<operations['openArtifact']>>;
|
|
2208
|
+
/** Serve an existing version again */
|
|
2209
|
+
serveVersion(params: Params<operations['serveVersion']>, options?: RequestOptions): Promise<Result<operations['serveVersion']>>;
|
|
2210
|
+
}
|
|
2211
|
+
declare class LiveResource {
|
|
2212
|
+
protected readonly client: Core;
|
|
2213
|
+
constructor(client: Core);
|
|
2214
|
+
/** Turn an artifact's live room on */
|
|
2215
|
+
start(params: Params<operations['startLiveRoom']>, options?: RequestOptions): Promise<Result<operations['startLiveRoom']>>;
|
|
2216
|
+
/** Turn an artifact's live room off, disconnecting every visitor */
|
|
2217
|
+
stop(params: Params<operations['stopLiveRoom']>, options?: RequestOptions): Promise<Result<operations['stopLiveRoom']>>;
|
|
2218
|
+
}
|
|
2219
|
+
declare class UploadsResource {
|
|
2220
|
+
protected readonly client: Core;
|
|
2221
|
+
constructor(client: Core);
|
|
2222
|
+
/** Stage big files for a publish; PUT each to its URL */
|
|
2223
|
+
stage(params: Params<operations['stageUploads']>, options?: RequestOptions): Promise<Result<operations['stageUploads']>>;
|
|
2224
|
+
}
|
|
2225
|
+
declare class DataResource {
|
|
2226
|
+
protected readonly client: Core;
|
|
2227
|
+
constructor(client: Core);
|
|
2228
|
+
/** Rows visitors submitted to one artifact, newest first */
|
|
2229
|
+
listArtifactRows(params: Params<operations['listArtifactRows']>, options?: RequestOptions): Promise<Result<operations['listArtifactRows']>>;
|
|
2230
|
+
/** Write rows into an artifact you may edit */
|
|
2231
|
+
writeArtifactRows(params: Params<operations['writeArtifactRows']>, options?: RequestOptions): Promise<Result<operations['writeArtifactRows']>>;
|
|
2232
|
+
/** Rows submitted to a dataset or a gallery label */
|
|
2233
|
+
listRows(params?: Params<operations['listRows']>, options?: RequestOptions): Promise<Result<operations['listRows']>>;
|
|
2234
|
+
/** Aggregate what was collected: numbers, never rows */
|
|
2235
|
+
query(params?: Params<operations['queryData']>, options?: RequestOptions): Promise<Result<operations['queryData']>>;
|
|
2236
|
+
}
|
|
2237
|
+
declare class SchemaResource {
|
|
2238
|
+
protected readonly client: Core;
|
|
2239
|
+
constructor(client: Core);
|
|
2240
|
+
/** The data catalog: datasets and content collections, or a comparison */
|
|
2241
|
+
get(params?: Params<operations['getSchema']>, options?: RequestOptions): Promise<Result<operations['getSchema']>>;
|
|
2242
|
+
/** Create or replace a content collection */
|
|
2243
|
+
defineCollection(params?: Params<operations['defineCollection']>, options?: RequestOptions): Promise<Result<operations['defineCollection']>>;
|
|
2244
|
+
}
|
|
2245
|
+
declare class EntriesResource {
|
|
2246
|
+
protected readonly client: Core;
|
|
2247
|
+
constructor(client: Core);
|
|
2248
|
+
/** One page of a content collection's entries */
|
|
2249
|
+
list(params: Params<operations['listEntries']>, options?: RequestOptions): Promise<Result<operations['listEntries']>>;
|
|
2250
|
+
/** Create one entry, or a batch */
|
|
2251
|
+
create(params: Params<operations['createEntries']>, options?: RequestOptions): Promise<Result<operations['createEntries']>>;
|
|
2252
|
+
}
|
|
2253
|
+
declare class SecretsResource {
|
|
2254
|
+
protected readonly client: Core;
|
|
2255
|
+
constructor(client: Core);
|
|
2256
|
+
/** Call an approved API with a stored secret you cannot read (workspace keys) */
|
|
2257
|
+
use(params: Params<operations['useSecret']>, options?: RequestOptions): Promise<Result<operations['useSecret']>>;
|
|
2258
|
+
}
|
|
2259
|
+
declare class TemplatesResource {
|
|
2260
|
+
protected readonly client: Core;
|
|
2261
|
+
constructor(client: Core);
|
|
2262
|
+
/** Find, rank or list templates */
|
|
2263
|
+
list(params?: Params<operations['listTemplates']>, options?: RequestOptions): Promise<Result<operations['listTemplates']>>;
|
|
2264
|
+
/** Create or revise a template draft */
|
|
2265
|
+
save(params: Params<operations['saveTemplate']>, options?: RequestOptions): Promise<Result<operations['saveTemplate']>>;
|
|
2266
|
+
/** One template in full, with its install prompt */
|
|
2267
|
+
get(params: Params<operations['getTemplate']>, options?: RequestOptions): Promise<Result<operations['getTemplate']>>;
|
|
2268
|
+
/** A template's changelog */
|
|
2269
|
+
getHistory(params: Params<operations['getTemplateHistory']>, options?: RequestOptions): Promise<Result<operations['getTemplateHistory']>>;
|
|
2270
|
+
/** Comments on a template's artifacts, as themes */
|
|
2271
|
+
getFeedback(params: Params<operations['getTemplateFeedback']>, options?: RequestOptions): Promise<Result<operations['getTemplateFeedback']>>;
|
|
2272
|
+
/** Install, uninstall, rate, report, roll back or request verification */
|
|
2273
|
+
act(params: Params<operations['actOnTemplate']>, options?: RequestOptions): Promise<Result<operations['actOnTemplate']>>;
|
|
2274
|
+
/** Release one version of your template */
|
|
2275
|
+
release(params: Params<operations['releaseTemplate']>, options?: RequestOptions): Promise<Result<operations['releaseTemplate']>>;
|
|
2276
|
+
}
|
|
2277
|
+
declare class ProjectsResource {
|
|
2278
|
+
protected readonly client: Core;
|
|
2279
|
+
constructor(client: Core);
|
|
2280
|
+
/** Your projects */
|
|
2281
|
+
list(params?: Params<operations['listProjects']>, options?: RequestOptions): Promise<Result<operations['listProjects']>>;
|
|
2282
|
+
/** Create a project, optionally seeded with artifacts */
|
|
2283
|
+
create(params?: Params<operations['createProject']>, options?: RequestOptions): Promise<Result<operations['createProject']>>;
|
|
2284
|
+
/** One project and its items */
|
|
2285
|
+
get(params: Params<operations['getProject']>, options?: RequestOptions): Promise<Result<operations['getProject']>>;
|
|
2286
|
+
/** Rename, set visibility, reorder, move, fold groups or set a rule */
|
|
2287
|
+
update(params: Params<operations['updateProject']>, options?: RequestOptions): Promise<Result<operations['updateProject']>>;
|
|
2288
|
+
/** Delete a project; its artifacts stay */
|
|
2289
|
+
delete(params: Omit<Params<operations['deleteProject']>, 'confirm'>, options?: RequestOptions): Promise<Result<operations['deleteProject']>>;
|
|
2290
|
+
/** Add artifacts to a project */
|
|
2291
|
+
addArtifacts(params: Params<operations['addProjectArtifacts']>, options?: RequestOptions): Promise<Result<operations['addProjectArtifacts']>>;
|
|
2292
|
+
/** Remove one artifact (or item) from a project */
|
|
2293
|
+
removeArtifact(params: Params<operations['removeProjectArtifact']>, options?: RequestOptions): Promise<Result<operations['removeProjectArtifact']>>;
|
|
2294
|
+
}
|
|
2295
|
+
declare class SharesResource {
|
|
2296
|
+
protected readonly client: Core;
|
|
2297
|
+
constructor(client: Core);
|
|
2298
|
+
/** Give named people access to an artifact */
|
|
2299
|
+
addToArtifact(params: Params<operations['shareArtifact']>, options?: RequestOptions): Promise<Result<operations['shareArtifact']>>;
|
|
2300
|
+
/** Give named people access to a project */
|
|
2301
|
+
addToProject(params: Params<operations['shareProject']>, options?: RequestOptions): Promise<Result<operations['shareProject']>>;
|
|
2302
|
+
/** Invite editors to a workspace (returns accept links) */
|
|
2303
|
+
addToWorkspace(params: Params<operations['shareWorkspace']>, options?: RequestOptions): Promise<Result<operations['shareWorkspace']>>;
|
|
2304
|
+
}
|
|
2305
|
+
declare class CommentsResource {
|
|
2306
|
+
protected readonly client: Core;
|
|
2307
|
+
constructor(client: Core);
|
|
2308
|
+
/** Comment threads on an artifact, newest first */
|
|
2309
|
+
list(params: Params<operations['listComments']>, options?: RequestOptions): Promise<Result<operations['listComments']>>;
|
|
2310
|
+
/** Reply to and/or resolve threads, one outcome each */
|
|
2311
|
+
respond(params: Params<operations['respondToComments']>, options?: RequestOptions): Promise<Result<operations['respondToComments']>>;
|
|
2312
|
+
/** One message's screenshot, base64 in `image` */
|
|
2313
|
+
getScreenshot(params: Params<operations['getCommentScreenshot']>, options?: RequestOptions): Promise<Result<operations['getCommentScreenshot']>>;
|
|
2314
|
+
}
|
|
2315
|
+
declare class MentionsResource {
|
|
2316
|
+
protected readonly client: Core;
|
|
2317
|
+
constructor(client: Core);
|
|
2318
|
+
/** Where people @mentioned you; listing marks them seen */
|
|
2319
|
+
list(params?: Params<operations['listMentions']>, options?: RequestOptions): Promise<Result<operations['listMentions']>>;
|
|
2320
|
+
}
|
|
2321
|
+
declare class SignaturesResource {
|
|
2322
|
+
protected readonly client: Core;
|
|
2323
|
+
constructor(client: Core);
|
|
2324
|
+
/** An artifact's signature requests, newest first */
|
|
2325
|
+
list(params?: Params<operations['listSignatureRequests']>, options?: RequestOptions): Promise<Result<operations['listSignatureRequests']>>;
|
|
2326
|
+
/** Ask named people to sign one version of an artifact */
|
|
2327
|
+
request(params?: Params<operations['requestSignatures']>, options?: RequestOptions): Promise<Result<operations['requestSignatures']>>;
|
|
2328
|
+
/** One signature request and its signers */
|
|
2329
|
+
get(params: Params<operations['getSignatureRequest']>, options?: RequestOptions): Promise<Result<operations['getSignatureRequest']>>;
|
|
2330
|
+
/** Email a signer their link again */
|
|
2331
|
+
remind(params: Params<operations['remindSigner']>, options?: RequestOptions): Promise<Result<operations['remindSigner']>>;
|
|
2332
|
+
/** Close an open signature request */
|
|
2333
|
+
withdraw(params: Params<operations['withdrawSignatureRequest']>, options?: RequestOptions): Promise<Result<operations['withdrawSignatureRequest']>>;
|
|
2334
|
+
}
|
|
2335
|
+
declare class Resources extends Core {
|
|
2336
|
+
readonly account: AccountResource;
|
|
2337
|
+
readonly artifacts: ArtifactsResource;
|
|
2338
|
+
readonly live: LiveResource;
|
|
2339
|
+
readonly uploads: UploadsResource;
|
|
2340
|
+
readonly data: DataResource;
|
|
2341
|
+
readonly schema: SchemaResource;
|
|
2342
|
+
readonly entries: EntriesResource;
|
|
2343
|
+
readonly secrets: SecretsResource;
|
|
2344
|
+
readonly templates: TemplatesResource;
|
|
2345
|
+
readonly projects: ProjectsResource;
|
|
2346
|
+
readonly shares: SharesResource;
|
|
2347
|
+
readonly comments: CommentsResource;
|
|
2348
|
+
readonly mentions: MentionsResource;
|
|
2349
|
+
readonly signatures: SignaturesResource;
|
|
2350
|
+
}
|
|
2351
|
+
|
|
2352
|
+
type Row = Record<string, unknown>;
|
|
2353
|
+
declare class Data extends DataResource {
|
|
2354
|
+
/** Every row `listArtifactRows` matches, page by page. */
|
|
2355
|
+
iterArtifactRows(params: Params<operations['listArtifactRows']>, options?: RequestOptions): AsyncGenerator<Row>;
|
|
2356
|
+
/** Every row `listRows` matches, page by page. */
|
|
2357
|
+
iterRows(params?: Params<operations['listRows']>, options?: RequestOptions): AsyncGenerator<Row>;
|
|
2358
|
+
}
|
|
2359
|
+
declare class Entries extends EntriesResource {
|
|
2360
|
+
/** Every entry `list` matches, page by page from `params.page` (0 by default). */
|
|
2361
|
+
iter(params: Params<operations['listEntries']>, options?: RequestOptions): AsyncGenerator<Row>;
|
|
2362
|
+
}
|
|
2363
|
+
declare class Mentions extends MentionsResource {
|
|
2364
|
+
/** Every mention, page by page. Listing marks them seen. */
|
|
2365
|
+
iter(params?: Params<operations['listMentions']>, options?: RequestOptions): AsyncGenerator<Row>;
|
|
2366
|
+
}
|
|
2367
|
+
interface FileToUpload {
|
|
2368
|
+
/** Where the file lands in the artifact, e.g. `images/hero.png`. */
|
|
2369
|
+
path: string;
|
|
2370
|
+
data: Uint8Array | Blob | string;
|
|
2371
|
+
contentType?: string;
|
|
2372
|
+
}
|
|
2373
|
+
declare class Uploads extends UploadsResource {
|
|
2374
|
+
/** Stage files and PUT their bytes. Pass the answer's `uploadId` to `artifacts.publish` as `uploads`. */
|
|
2375
|
+
upload(files: FileToUpload[], options?: RequestOptions): Promise<{
|
|
2376
|
+
uploadId: string;
|
|
2377
|
+
expiresAt: string;
|
|
2378
|
+
}>;
|
|
2379
|
+
}
|
|
2380
|
+
/** The client for the Super Artifacts REST API. Server-side only. */
|
|
2381
|
+
declare class SuperArtifacts extends Resources {
|
|
2382
|
+
readonly data: Data;
|
|
2383
|
+
readonly entries: Entries;
|
|
2384
|
+
readonly mentions: Mentions;
|
|
2385
|
+
readonly uploads: Uploads;
|
|
2386
|
+
}
|
|
2387
|
+
|
|
2388
|
+
export { AuthenticationError, ConflictError, ConnectionError, InternalError, InvalidArgumentsError, NotFoundError, OPERATIONS, PayloadTooLargeError, PermissionError, PlanLimitError, RateLimitError, ScopeRequiredError, SuperArtifacts, SuperArtifactsError, TimeoutError, VERSION, SuperArtifacts as default, errorFor };
|
|
2389
|
+
export type { ClientOptions, FileToUpload, Operation, Params, RequestOptions, Result, components, operations };
|