@leaflow/sdk 0.0.0-dev.33.g080e5fd → 0.0.0-dev.35.g30ba751
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assistant/v1/schema.d.ts +115 -107
- package/dist/compute/v1/schema.d.ts +15 -14
- package/dist/dns/v1/index.d.ts +6 -6
- package/dist/dns/v1/schema.d.ts +78 -62
- package/dist/index.d.ts +2 -0
- package/dist/monitoring/v1/index.d.ts +12 -0
- package/dist/monitoring/v1/schema.d.ts +295 -5
- package/dist/notification/v1/index.d.ts +60 -0
- package/dist/notification/v1/index.js +5 -0
- package/dist/notification/v1/schema.d.ts +1561 -0
- package/dist/notification/v1/schema.js +5 -0
- package/dist/support/v1/index.d.ts +60 -0
- package/dist/support/v1/index.js +5 -0
- package/dist/support/v1/schema.d.ts +1335 -0
- package/dist/support/v1/schema.js +5 -0
- package/package.json +1 -1
|
@@ -13,8 +13,8 @@ export interface paths {
|
|
|
13
13
|
get?: never;
|
|
14
14
|
put?: never;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
17
|
-
* @description
|
|
16
|
+
* Upload an image
|
|
17
|
+
* @description The body is the file bytes themselves, not multipart, one file per request. The type is determined from the content, not from Content-Type. Put the returned id in attachmentIds when sending a message; attachments never referenced by any message are cleared periodically.
|
|
18
18
|
*/
|
|
19
19
|
post: operations["upload-attachment"];
|
|
20
20
|
delete?: never;
|
|
@@ -31,8 +31,8 @@ export interface paths {
|
|
|
31
31
|
cookie?: never;
|
|
32
32
|
};
|
|
33
33
|
/**
|
|
34
|
-
*
|
|
35
|
-
* @description
|
|
34
|
+
* Fetch an image
|
|
35
|
+
* @description Returns the original bytes for an attachment id, usable directly as the address of an <img>. The response carries long-lived cache headers because the content never changes. Returns 404 when the attachment does not exist or does not belong to the current user.
|
|
36
36
|
*/
|
|
37
37
|
get: operations["download-attachment"];
|
|
38
38
|
put?: never;
|
|
@@ -51,8 +51,8 @@ export interface paths {
|
|
|
51
51
|
cookie?: never;
|
|
52
52
|
};
|
|
53
53
|
/**
|
|
54
|
-
*
|
|
55
|
-
* @description
|
|
54
|
+
* List bindings
|
|
55
|
+
* @description Filter by channelId to show, per channel, who is bound to it.
|
|
56
56
|
*/
|
|
57
57
|
get: operations["list-bindings"];
|
|
58
58
|
put?: never;
|
|
@@ -70,11 +70,11 @@ export interface paths {
|
|
|
70
70
|
path?: never;
|
|
71
71
|
cookie?: never;
|
|
72
72
|
};
|
|
73
|
-
/**
|
|
73
|
+
/** Get a binding */
|
|
74
74
|
get: operations["get-binding"];
|
|
75
75
|
put?: never;
|
|
76
76
|
post?: never;
|
|
77
|
-
/**
|
|
77
|
+
/** Remove a binding */
|
|
78
78
|
delete: operations["delete-binding"];
|
|
79
79
|
options?: never;
|
|
80
80
|
head?: never;
|
|
@@ -88,12 +88,12 @@ export interface paths {
|
|
|
88
88
|
path?: never;
|
|
89
89
|
cookie?: never;
|
|
90
90
|
};
|
|
91
|
-
/**
|
|
91
|
+
/** List channels */
|
|
92
92
|
get: operations["list-channels"];
|
|
93
93
|
put?: never;
|
|
94
94
|
/**
|
|
95
|
-
*
|
|
96
|
-
* @description
|
|
95
|
+
* Create a channel
|
|
96
|
+
* @description Which side owns the webhook secret is decided by the platform; see secretSource on list-platforms. For a `generated` platform, do not send webhookSecret — the one we generate is returned exactly once in this response and cannot be retrieved again; miss it and the only way forward is rotating to a new one. For a `supplied` platform you must pass the secret from that platform's own console, and webhookSecret in the response is null.
|
|
97
97
|
*/
|
|
98
98
|
post: operations["create-channel"];
|
|
99
99
|
delete?: never;
|
|
@@ -109,20 +109,20 @@ export interface paths {
|
|
|
109
109
|
path?: never;
|
|
110
110
|
cookie?: never;
|
|
111
111
|
};
|
|
112
|
-
/**
|
|
112
|
+
/** Get a channel */
|
|
113
113
|
get: operations["get-channel"];
|
|
114
114
|
put?: never;
|
|
115
115
|
post?: never;
|
|
116
116
|
/**
|
|
117
|
-
*
|
|
118
|
-
* @description
|
|
117
|
+
* Delete a channel
|
|
118
|
+
* @description The channel stops accepting inbound messages and every binding on it stops working. This operation remains available while the project is suspended or being cleaned up.
|
|
119
119
|
*/
|
|
120
120
|
delete: operations["delete-channel"];
|
|
121
121
|
options?: never;
|
|
122
122
|
head?: never;
|
|
123
123
|
/**
|
|
124
|
-
*
|
|
125
|
-
* @description
|
|
124
|
+
* Update a channel
|
|
125
|
+
* @description Only the fields present are changed. senderPolicy and allowFrom go together, and senderPolicy decides whether they are replaced. For platforms held open by a long-lived connection the change applies once that connection is rebuilt; for webhook platforms it applies at once.
|
|
126
126
|
*/
|
|
127
127
|
patch: operations["update-channel"];
|
|
128
128
|
trace?: never;
|
|
@@ -137,8 +137,8 @@ export interface paths {
|
|
|
137
137
|
get?: never;
|
|
138
138
|
put?: never;
|
|
139
139
|
/**
|
|
140
|
-
*
|
|
141
|
-
* @description
|
|
140
|
+
* Issue a binding code
|
|
141
|
+
* @description Produces a single-use code to hand to the person being bound. They send that code to the assistant from their own account on that platform, which completes the binding. A binding can only be established this way, by the person themselves — a platform account cannot be named directly. Codes expire and have to be reissued.
|
|
142
142
|
*/
|
|
143
143
|
post: operations["create-binding-code"];
|
|
144
144
|
delete?: never;
|
|
@@ -155,8 +155,8 @@ export interface paths {
|
|
|
155
155
|
cookie?: never;
|
|
156
156
|
};
|
|
157
157
|
/**
|
|
158
|
-
*
|
|
159
|
-
* @description
|
|
158
|
+
* List recently rejected inbound messages
|
|
159
|
+
* @description For diagnosing "I sent a message and the assistant never answered". Returns the inbound messages this channel rejected most recently, newest first, each with its reason. The most common reason is that the sender is not bound yet.
|
|
160
160
|
*/
|
|
161
161
|
get: operations["list-channel-rejections"];
|
|
162
162
|
put?: never;
|
|
@@ -177,8 +177,8 @@ export interface paths {
|
|
|
177
177
|
get?: never;
|
|
178
178
|
put?: never;
|
|
179
179
|
/**
|
|
180
|
-
*
|
|
181
|
-
* @description
|
|
180
|
+
* Rotate the webhook secret
|
|
181
|
+
* @description Replaces the webhook secret. The old one stops working immediately and the channel drops back to awaiting confirmation from the platform. Which side owns the secret is decided by the platform; see secretSource on list-platforms. For a `generated` platform, send no body — the new secret is returned in this response only and cannot be retrieved again. For a `supplied` platform you must pass the new secret from that platform's own console.
|
|
182
182
|
*/
|
|
183
183
|
post: operations["rotate-channel-secret"];
|
|
184
184
|
delete?: never;
|
|
@@ -195,8 +195,8 @@ export interface paths {
|
|
|
195
195
|
cookie?: never;
|
|
196
196
|
};
|
|
197
197
|
/**
|
|
198
|
-
*
|
|
199
|
-
* @description
|
|
198
|
+
* Test whether a sender would be let through
|
|
199
|
+
* @description For checking a sender policy after changing it. Sends nothing and changes nothing: it runs exactly the same decision a real inbound message goes through, and says which rule produced the answer. The binding-code rule cannot be tested this way — whether something is a binding code depends on what the sender actually wrote.
|
|
200
200
|
*/
|
|
201
201
|
get: operations["check-sender"];
|
|
202
202
|
put?: never;
|
|
@@ -217,8 +217,8 @@ export interface paths {
|
|
|
217
217
|
get?: never;
|
|
218
218
|
put?: never;
|
|
219
219
|
/**
|
|
220
|
-
*
|
|
221
|
-
* @description
|
|
220
|
+
* Begin a WeChat QR login
|
|
221
|
+
* @description A personal WeChat channel can only send and receive once its owner has signed in by scanning a QR code. This returns that code; poll `GET /v1/weixin-logins/{login}` for progress, and when the status asks for a verification code, submit it with `POST /v1/weixin-logins/{login}/verify-code`.
|
|
222
222
|
*/
|
|
223
223
|
post: operations["begin-weixin-login"];
|
|
224
224
|
delete?: never;
|
|
@@ -235,8 +235,8 @@ export interface paths {
|
|
|
235
235
|
cookie?: never;
|
|
236
236
|
};
|
|
237
237
|
/**
|
|
238
|
-
*
|
|
239
|
-
* @description
|
|
238
|
+
* List platforms that can be connected
|
|
239
|
+
* @description The instant messaging platforms that can currently be connected, along with the flow and the credential fields each one needs. The create-channel form is driven entirely by this response: setupMethod decides between a credential form and a QR flow, credentialFields is what to ask for, and secretSource decides whether there is a webhook secret field at all.
|
|
240
240
|
*/
|
|
241
241
|
get: operations["list-platforms"];
|
|
242
242
|
put?: never;
|
|
@@ -255,8 +255,8 @@ export interface paths {
|
|
|
255
255
|
cookie?: never;
|
|
256
256
|
};
|
|
257
257
|
/**
|
|
258
|
-
*
|
|
259
|
-
* @description
|
|
258
|
+
* Get the state of a QR login
|
|
259
|
+
* @description Poll this until the status is success or failure. When the status asks for a verification code, submit it with the verification-code operation.
|
|
260
260
|
*/
|
|
261
261
|
get: operations["get-weixin-login"];
|
|
262
262
|
put?: never;
|
|
@@ -277,8 +277,8 @@ export interface paths {
|
|
|
277
277
|
get?: never;
|
|
278
278
|
put?: never;
|
|
279
279
|
/**
|
|
280
|
-
*
|
|
281
|
-
* @description
|
|
280
|
+
* Submit a login verification code
|
|
281
|
+
* @description For when WeChat asks for an SMS or device code after the scan. The person who started the login gets that code on their own phone.
|
|
282
282
|
*/
|
|
283
283
|
post: operations["submit-weixin-verify-code"];
|
|
284
284
|
delete?: never;
|
|
@@ -295,8 +295,8 @@ export interface paths {
|
|
|
295
295
|
cookie?: never;
|
|
296
296
|
};
|
|
297
297
|
/**
|
|
298
|
-
*
|
|
299
|
-
* @description
|
|
298
|
+
* List what the assistant remembers
|
|
299
|
+
* @description Facts the assistant has written down for the current account in this project. They appear at the start of every later conversation. Members of the same project each have their own, and this returns only the current account's. Not paginated: there is a cap on how many there can be, and all of them come back at once.
|
|
300
300
|
*/
|
|
301
301
|
get: operations["list-memories"];
|
|
302
302
|
put?: never;
|
|
@@ -318,8 +318,8 @@ export interface paths {
|
|
|
318
318
|
put?: never;
|
|
319
319
|
post?: never;
|
|
320
320
|
/**
|
|
321
|
-
*
|
|
322
|
-
* @description
|
|
321
|
+
* Delete one memory
|
|
322
|
+
* @description The assistant stops remembering this. It takes effect at once, so the next conversation will not carry it. The assistant may well learn the same thing again.
|
|
323
323
|
*/
|
|
324
324
|
delete: operations["delete-memory"];
|
|
325
325
|
options?: never;
|
|
@@ -335,8 +335,8 @@ export interface paths {
|
|
|
335
335
|
cookie?: never;
|
|
336
336
|
};
|
|
337
337
|
/**
|
|
338
|
-
*
|
|
339
|
-
* @description
|
|
338
|
+
* List available models
|
|
339
|
+
* @description The models currently offered, with their context window, reasoning levels and supported input types. Use it to populate the model picker in conversation settings.
|
|
340
340
|
*/
|
|
341
341
|
get: operations["list-models"];
|
|
342
342
|
put?: never;
|
|
@@ -355,12 +355,12 @@ export interface paths {
|
|
|
355
355
|
cookie?: never;
|
|
356
356
|
};
|
|
357
357
|
/**
|
|
358
|
-
*
|
|
359
|
-
* @description
|
|
358
|
+
* List conversations
|
|
359
|
+
* @description Ordered by most recent activity, limited to the current account's conversations in the current project. `archived` selects between two sets rather than widening one: archived conversations are absent from the default list, and turning the flag on shows those instead.
|
|
360
360
|
*/
|
|
361
361
|
get: operations["list-threads"];
|
|
362
362
|
put?: never;
|
|
363
|
-
/**
|
|
363
|
+
/** Create a conversation */
|
|
364
364
|
post: operations["create-thread"];
|
|
365
365
|
delete?: never;
|
|
366
366
|
options?: never;
|
|
@@ -376,8 +376,8 @@ export interface paths {
|
|
|
376
376
|
cookie?: never;
|
|
377
377
|
};
|
|
378
378
|
/**
|
|
379
|
-
*
|
|
380
|
-
* @description
|
|
379
|
+
* Fetch the conversation document
|
|
380
|
+
* @description The complete current state of a conversation, for the first render. Its `stream` gives the address and admission ticket for live output, and what that stream pushes are incremental edits to this same document, so the same rendering logic applies.
|
|
381
381
|
*/
|
|
382
382
|
get: operations["get-thread"];
|
|
383
383
|
put?: never;
|
|
@@ -386,8 +386,8 @@ export interface paths {
|
|
|
386
386
|
options?: never;
|
|
387
387
|
head?: never;
|
|
388
388
|
/**
|
|
389
|
-
*
|
|
390
|
-
* @description
|
|
389
|
+
* Update conversation settings
|
|
390
|
+
* @description Changes the model, reasoning level, approval mode and archived state. A change takes effect from the next turn; a turn already running keeps the settings it started with. reasoningEffort only applies when model is given as well.
|
|
391
391
|
*/
|
|
392
392
|
patch: operations["update-thread"];
|
|
393
393
|
trace?: never;
|
|
@@ -402,8 +402,8 @@ export interface paths {
|
|
|
402
402
|
get?: never;
|
|
403
403
|
put?: never;
|
|
404
404
|
/**
|
|
405
|
-
*
|
|
406
|
-
* @description
|
|
405
|
+
* Approve or decline a batch of tool calls
|
|
406
|
+
* @description The batch id comes from the conversation document's `wait`. This is idempotent: submitting the same batch again neither changes a decision already in effect nor reports an error. Returns 404 when the batch does not belong to that conversation.
|
|
407
407
|
*/
|
|
408
408
|
post: operations["decide-approval"];
|
|
409
409
|
delete?: never;
|
|
@@ -420,8 +420,8 @@ export interface paths {
|
|
|
420
420
|
cookie?: never;
|
|
421
421
|
};
|
|
422
422
|
/**
|
|
423
|
-
*
|
|
424
|
-
* @description
|
|
423
|
+
* Fetch earlier parts of a conversation
|
|
424
|
+
* @description The first render only carries the latest stretch of a conversation; anything above it is fetched here, one stretch at a time. Pass the document's earlier.before as `before`; the `earlier` in the response is the cursor for the stretch above that, and null means the top has been reached. The entries have the same shape and the same order (oldest first) as `items` in the document, so they can be prepended as they are.
|
|
425
425
|
*/
|
|
426
426
|
get: operations["list-earlier-items"];
|
|
427
427
|
put?: never;
|
|
@@ -442,8 +442,8 @@ export interface paths {
|
|
|
442
442
|
get?: never;
|
|
443
443
|
put?: never;
|
|
444
444
|
/**
|
|
445
|
-
*
|
|
446
|
-
* @description
|
|
445
|
+
* Interrupt a running turn
|
|
446
|
+
* @description Calling this on a conversation with no running turn also returns 204 rather than an error — the user pressing stop races with the turn finishing on its own, and both outcomes are the same. This operation remains available while the project is suspended or being cleaned up.
|
|
447
447
|
*/
|
|
448
448
|
post: operations["interrupt-thread"];
|
|
449
449
|
delete?: never;
|
|
@@ -462,8 +462,8 @@ export interface paths {
|
|
|
462
462
|
get?: never;
|
|
463
463
|
put?: never;
|
|
464
464
|
/**
|
|
465
|
-
*
|
|
466
|
-
* @description
|
|
465
|
+
* Send a message and start a turn
|
|
466
|
+
* @description Returns a turnId immediately without waiting for execution — a turn can run for tens of minutes. Progress arrives on the live stream the conversation document's `stream` points at, not in this response. Sending while the assistant is still working is allowed: the message is put in line and `queued` comes back true, to be read at the next step of the turn already running — so the editor should stay open rather than blocking on a busy conversation.
|
|
467
467
|
*/
|
|
468
468
|
post: operations["send-message"];
|
|
469
469
|
delete?: never;
|
|
@@ -482,8 +482,8 @@ export interface paths {
|
|
|
482
482
|
get?: never;
|
|
483
483
|
put?: never;
|
|
484
484
|
/**
|
|
485
|
-
*
|
|
486
|
-
* @description
|
|
485
|
+
* Answer the assistant's questions
|
|
486
|
+
* @description The question id comes from the conversation document's `wait`. An already-answered question also returns 204 — another tab may have submitted first, or the auto-answer window may have expired, and in both cases the turn has already continued with an answer.
|
|
487
487
|
*/
|
|
488
488
|
post: operations["answer-question"];
|
|
489
489
|
delete?: never;
|
|
@@ -501,7 +501,7 @@ export interface paths {
|
|
|
501
501
|
};
|
|
502
502
|
get?: never;
|
|
503
503
|
put?: never;
|
|
504
|
-
/**
|
|
504
|
+
/** Mark a conversation as read */
|
|
505
505
|
post: operations["mark-thread-read"];
|
|
506
506
|
delete?: never;
|
|
507
507
|
options?: never;
|
|
@@ -519,8 +519,8 @@ export interface paths {
|
|
|
519
519
|
get?: never;
|
|
520
520
|
put?: never;
|
|
521
521
|
/**
|
|
522
|
-
*
|
|
523
|
-
* @description
|
|
522
|
+
* Revert from a given point
|
|
523
|
+
* @description Reverts the entry at `ordinal` and everything after it. Reverted entries stay in the transcript marked `reverted`, and ordinals are not renumbered. Returns how many were actually reverted.
|
|
524
524
|
*/
|
|
525
525
|
post: operations["revert-thread"];
|
|
526
526
|
delete?: never;
|
|
@@ -566,28 +566,28 @@ export interface components {
|
|
|
566
566
|
verifiedAt: string | null;
|
|
567
567
|
};
|
|
568
568
|
LengthAwarePageBindingResource: {
|
|
569
|
-
/** @description
|
|
569
|
+
/** @description The entries on this page */
|
|
570
570
|
items: components["schemas"]["BindingResource"][];
|
|
571
571
|
/**
|
|
572
572
|
* Format: int64
|
|
573
|
-
* @description
|
|
573
|
+
* @description The page size, echoing what was requested
|
|
574
574
|
*/
|
|
575
575
|
limit: number;
|
|
576
576
|
/**
|
|
577
577
|
* Format: int64
|
|
578
|
-
* @description
|
|
578
|
+
* @description How many were skipped, echoing what was requested
|
|
579
579
|
*/
|
|
580
580
|
offset: number;
|
|
581
581
|
/**
|
|
582
582
|
* Format: int64
|
|
583
|
-
* @description
|
|
583
|
+
* @description How many match in total, not just on this page
|
|
584
584
|
*/
|
|
585
585
|
total: number;
|
|
586
586
|
};
|
|
587
587
|
ChannelResource: {
|
|
588
588
|
allowFrom: string[] | null;
|
|
589
589
|
/**
|
|
590
|
-
* @description
|
|
590
|
+
* @description How far this channel is from working. Only `online` receives messages and can issue binding codes
|
|
591
591
|
* @enum {string}
|
|
592
592
|
*/
|
|
593
593
|
connState: "logged_out" | "qr_pending" | "online" | "expired";
|
|
@@ -598,7 +598,7 @@ export interface components {
|
|
|
598
598
|
name: string;
|
|
599
599
|
platform: string;
|
|
600
600
|
/**
|
|
601
|
-
* @description
|
|
601
|
+
* @description The state of the long-lived connection right now. Always `stopped` for webhook platforms
|
|
602
602
|
* @enum {string}
|
|
603
603
|
*/
|
|
604
604
|
runtimeState: "stopped" | "running";
|
|
@@ -608,33 +608,33 @@ export interface components {
|
|
|
608
608
|
status: "active" | "suspended" | "disabled";
|
|
609
609
|
/** Format: date-time */
|
|
610
610
|
updatedAt: string;
|
|
611
|
-
/** @description
|
|
611
|
+
/** @description The webhook path, for gateway configuration and for diagnosis */
|
|
612
612
|
webhookPath: string;
|
|
613
|
-
/** @description
|
|
613
|
+
/** @description The webhook address to paste into that platform's console. Null when the deployment declares no public entry point */
|
|
614
614
|
webhookUrl: string | null;
|
|
615
615
|
};
|
|
616
616
|
LengthAwarePageChannelResource: {
|
|
617
|
-
/** @description
|
|
617
|
+
/** @description The entries on this page */
|
|
618
618
|
items: components["schemas"]["ChannelResource"][];
|
|
619
619
|
/**
|
|
620
620
|
* Format: int64
|
|
621
|
-
* @description
|
|
621
|
+
* @description The page size, echoing what was requested
|
|
622
622
|
*/
|
|
623
623
|
limit: number;
|
|
624
624
|
/**
|
|
625
625
|
* Format: int64
|
|
626
|
-
* @description
|
|
626
|
+
* @description How many were skipped, echoing what was requested
|
|
627
627
|
*/
|
|
628
628
|
offset: number;
|
|
629
629
|
/**
|
|
630
630
|
* Format: int64
|
|
631
|
-
* @description
|
|
631
|
+
* @description How many match in total, not just on this page
|
|
632
632
|
*/
|
|
633
633
|
total: number;
|
|
634
634
|
};
|
|
635
635
|
CreateChannelRequestBody: {
|
|
636
636
|
allowFrom?: string[] | null;
|
|
637
|
-
/** @description
|
|
637
|
+
/** @description Credentials for that platform. Write-only: they cannot be read back after creation */
|
|
638
638
|
credentials?: {
|
|
639
639
|
[key: string]: string;
|
|
640
640
|
};
|
|
@@ -642,13 +642,13 @@ export interface components {
|
|
|
642
642
|
platform: string;
|
|
643
643
|
/** @enum {string} */
|
|
644
644
|
senderPolicy?: "bound_only" | "open";
|
|
645
|
-
/** @description
|
|
645
|
+
/** @description Required for platforms that generate the secret themselves (secretSource=supplied). Must be absent for `generated` ones, where the secret we make is returned once in webhookSecret on this response */
|
|
646
646
|
webhookSecret?: string;
|
|
647
647
|
};
|
|
648
648
|
ChannelWithSecretResponseBody: {
|
|
649
649
|
allowFrom: string[] | null;
|
|
650
650
|
/**
|
|
651
|
-
* @description
|
|
651
|
+
* @description How far this channel is from working. Only `online` receives messages and can issue binding codes
|
|
652
652
|
* @enum {string}
|
|
653
653
|
*/
|
|
654
654
|
connState: "logged_out" | "qr_pending" | "online" | "expired";
|
|
@@ -659,7 +659,7 @@ export interface components {
|
|
|
659
659
|
name: string;
|
|
660
660
|
platform: string;
|
|
661
661
|
/**
|
|
662
|
-
* @description
|
|
662
|
+
* @description The state of the long-lived connection right now. Always `stopped` for webhook platforms
|
|
663
663
|
* @enum {string}
|
|
664
664
|
*/
|
|
665
665
|
runtimeState: "stopped" | "running";
|
|
@@ -669,24 +669,24 @@ export interface components {
|
|
|
669
669
|
status: "active" | "suspended" | "disabled";
|
|
670
670
|
/** Format: date-time */
|
|
671
671
|
updatedAt: string;
|
|
672
|
-
/** @description
|
|
672
|
+
/** @description The webhook path, for gateway configuration and for diagnosis */
|
|
673
673
|
webhookPath: string;
|
|
674
|
-
/** @description
|
|
674
|
+
/** @description The webhook secret we generated, to paste into that platform's console. **It cannot be retrieved again** — the only way forward is rotating to a new one. Null when the platform generates the secret (secretSource=supplied) or does not use webhooks at all */
|
|
675
675
|
webhookSecret: string | null;
|
|
676
|
-
/** @description
|
|
676
|
+
/** @description The webhook address to paste into that platform's console. Null when the deployment declares no public entry point */
|
|
677
677
|
webhookUrl: string | null;
|
|
678
678
|
};
|
|
679
679
|
UpdateChannelRequestBody: {
|
|
680
|
-
/** @description
|
|
680
|
+
/** @description The allow list. Only applied when senderPolicy is sent as well */
|
|
681
681
|
allowFrom?: string[] | null;
|
|
682
|
-
/** @description
|
|
682
|
+
/** @description Replaced wholesale rather than merged key by key. Absent means unchanged */
|
|
683
683
|
credentials?: {
|
|
684
684
|
[key: string]: string;
|
|
685
685
|
};
|
|
686
686
|
enabled?: boolean;
|
|
687
687
|
name?: string;
|
|
688
688
|
/**
|
|
689
|
-
* @description
|
|
689
|
+
* @description Only when this is sent is allowFrom replaced along with it
|
|
690
690
|
* @enum {string}
|
|
691
691
|
*/
|
|
692
692
|
senderPolicy?: "bound_only" | "open";
|
|
@@ -711,7 +711,7 @@ export interface components {
|
|
|
711
711
|
rejections: components["schemas"]["RejectionResource"][] | null;
|
|
712
712
|
};
|
|
713
713
|
RotateSecretRequestBody: {
|
|
714
|
-
/** @description
|
|
714
|
+
/** @description Required for platforms that generate the secret themselves (secretSource=supplied). Must be absent for `generated` ones */
|
|
715
715
|
webhookSecret?: string;
|
|
716
716
|
};
|
|
717
717
|
WebhookSecretResponseBody: {
|
|
@@ -728,14 +728,14 @@ export interface components {
|
|
|
728
728
|
LoginResource: {
|
|
729
729
|
/**
|
|
730
730
|
* Format: date-time
|
|
731
|
-
* @description
|
|
731
|
+
* @description When this login flow expires. Past that, stop polling and start a new one
|
|
732
732
|
*/
|
|
733
733
|
expiresAt: string;
|
|
734
734
|
/** Format: uuid */
|
|
735
735
|
id: string;
|
|
736
|
-
/** @description
|
|
736
|
+
/** @description The text to encode and render as a QR code by the client — not an image address and not a data URI. When a code expires this flow issues another and keeps waiting, so each poll may return a new string */
|
|
737
737
|
qrcodeData: string;
|
|
738
|
-
/** @description
|
|
738
|
+
/** @description Why it failed. Present only when status is error or expired */
|
|
739
739
|
reason: string;
|
|
740
740
|
/** @enum {string} */
|
|
741
741
|
status: "wait" | "scanned" | "confirmed" | "expired" | "error" | "need_verify_code";
|
|
@@ -757,9 +757,9 @@ export interface components {
|
|
|
757
757
|
setupChallenge: "none" | "webhook" | "scan";
|
|
758
758
|
/** @enum {string} */
|
|
759
759
|
setupMethod: "credentials" | "scan";
|
|
760
|
-
/** @description
|
|
760
|
+
/** @description The webhook path template; {channel} is replaced with the channel id */
|
|
761
761
|
webhookPath: string;
|
|
762
|
-
/** @description
|
|
762
|
+
/** @description The full webhook address template. Null when the deployment declares no public entry point */
|
|
763
763
|
webhookUrlTemplate: string | null;
|
|
764
764
|
};
|
|
765
765
|
PlatformListResponseBody: {
|
|
@@ -779,14 +779,14 @@ export interface components {
|
|
|
779
779
|
items: components["schemas"]["MemoryResource"][];
|
|
780
780
|
};
|
|
781
781
|
MemoryResource: {
|
|
782
|
-
/** @description
|
|
782
|
+
/** @description The fact itself */
|
|
783
783
|
body: string;
|
|
784
784
|
/** Format: date-time */
|
|
785
785
|
createdAt: string;
|
|
786
786
|
id: string;
|
|
787
|
-
/** @description
|
|
787
|
+
/** @description The name the assistant gave this fact; it overwrites or deletes its own entries by that name */
|
|
788
788
|
name: string;
|
|
789
|
-
/** @description
|
|
789
|
+
/** @description Which conversation the assistant learned it in. That conversation may since have been deleted */
|
|
790
790
|
sourceThreadId?: string;
|
|
791
791
|
/** Format: date-time */
|
|
792
792
|
updatedAt: string;
|
|
@@ -812,7 +812,7 @@ export interface components {
|
|
|
812
812
|
};
|
|
813
813
|
CreateThreadRequestBody: {
|
|
814
814
|
/**
|
|
815
|
-
* @description
|
|
815
|
+
* @description Absent uses the platform's default approval mode
|
|
816
816
|
* @enum {string}
|
|
817
817
|
*/
|
|
818
818
|
approvalMode?: "guardian" | "manual" | "yolo";
|
|
@@ -852,7 +852,7 @@ export interface components {
|
|
|
852
852
|
/** Format: int64 */
|
|
853
853
|
durationMs?: number | null;
|
|
854
854
|
id: string;
|
|
855
|
-
/** @description
|
|
855
|
+
/** @description The model that produced this entry. Null for messages the user sent */
|
|
856
856
|
model: string | null;
|
|
857
857
|
namespace?: string | null;
|
|
858
858
|
/** Format: int64 */
|
|
@@ -864,7 +864,7 @@ export interface components {
|
|
|
864
864
|
text?: string;
|
|
865
865
|
tool?: string | null;
|
|
866
866
|
/**
|
|
867
|
-
* @description
|
|
867
|
+
* @description Determines which fields this entry carries
|
|
868
868
|
* @enum {string}
|
|
869
869
|
*/
|
|
870
870
|
type: "user_message" | "agent_message" | "reasoning" | "dynamic_tool_call" | "context_compaction" | "token_budget_reminder" | "turn_failure";
|
|
@@ -925,15 +925,23 @@ export interface components {
|
|
|
925
925
|
items: components["schemas"]["ItemResource"][] | null;
|
|
926
926
|
};
|
|
927
927
|
SendMessageRequestBody: {
|
|
928
|
-
/** @description
|
|
928
|
+
/** @description Ids of attachments uploaded earlier that are not yet bound to any message */
|
|
929
929
|
attachmentIds?: string[] | null;
|
|
930
930
|
text: string;
|
|
931
931
|
};
|
|
932
932
|
TurnIDResponseBody: {
|
|
933
|
+
/** @description True when the assistant was already busy and this message was put in line instead of starting a turn. It is read at the next step of the turn already running, so there is nothing further to do — and turnId is empty in this case. */
|
|
934
|
+
queued: boolean;
|
|
935
|
+
/**
|
|
936
|
+
* Format: int64
|
|
937
|
+
* @description How many messages were already waiting ahead of this one. Only meaningful when queued is true.
|
|
938
|
+
*/
|
|
939
|
+
queuedAhead?: number;
|
|
940
|
+
/** @description The turn this message started. Empty when the message was queued instead. */
|
|
933
941
|
turnId: string;
|
|
934
942
|
};
|
|
935
943
|
AnswerRequestBody: {
|
|
936
|
-
/** @description
|
|
944
|
+
/** @description A map from question id to the answer chosen */
|
|
937
945
|
answers: {
|
|
938
946
|
[key: string]: string;
|
|
939
947
|
};
|
|
@@ -941,7 +949,7 @@ export interface components {
|
|
|
941
949
|
RevertRequestBody: {
|
|
942
950
|
/**
|
|
943
951
|
* Format: int64
|
|
944
|
-
* @description
|
|
952
|
+
* @description The starting ordinal; that entry and everything after it is reverted
|
|
945
953
|
*/
|
|
946
954
|
ordinal: number;
|
|
947
955
|
};
|
|
@@ -1005,7 +1013,7 @@ export interface operations {
|
|
|
1005
1013
|
/** @description OK */
|
|
1006
1014
|
200: {
|
|
1007
1015
|
headers: {
|
|
1008
|
-
/** @description
|
|
1016
|
+
/** @description Private and long-lived: these bytes are addressed by an id that is never reused, so they never change; and they belong to one person, so they must not enter any shared cache. */
|
|
1009
1017
|
"Cache-Control"?: string;
|
|
1010
1018
|
[name: string]: unknown;
|
|
1011
1019
|
};
|
|
@@ -1027,13 +1035,13 @@ export interface operations {
|
|
|
1027
1035
|
"list-bindings": {
|
|
1028
1036
|
parameters: {
|
|
1029
1037
|
query?: {
|
|
1030
|
-
/** @description
|
|
1038
|
+
/** @description How many entries this page returns at most */
|
|
1031
1039
|
limit?: number;
|
|
1032
|
-
/** @description
|
|
1040
|
+
/** @description How many to skip. To page deeper, use the cursor-paged operation instead */
|
|
1033
1041
|
offset?: number;
|
|
1034
1042
|
platform?: string;
|
|
1035
1043
|
channelId?: string;
|
|
1036
|
-
/** @description
|
|
1044
|
+
/** @description Return only bindings that are active */
|
|
1037
1045
|
active?: boolean;
|
|
1038
1046
|
};
|
|
1039
1047
|
header?: never;
|
|
@@ -1125,12 +1133,12 @@ export interface operations {
|
|
|
1125
1133
|
"list-channels": {
|
|
1126
1134
|
parameters: {
|
|
1127
1135
|
query?: {
|
|
1128
|
-
/** @description
|
|
1136
|
+
/** @description How many entries this page returns at most */
|
|
1129
1137
|
limit?: number;
|
|
1130
|
-
/** @description
|
|
1138
|
+
/** @description How many to skip. To page deeper, use the cursor-paged operation instead */
|
|
1131
1139
|
offset?: number;
|
|
1132
1140
|
platform?: string;
|
|
1133
|
-
/** @description
|
|
1141
|
+
/** @description Return only channels that are enabled */
|
|
1134
1142
|
active?: boolean;
|
|
1135
1143
|
};
|
|
1136
1144
|
header?: never;
|
|
@@ -1389,9 +1397,9 @@ export interface operations {
|
|
|
1389
1397
|
"check-sender": {
|
|
1390
1398
|
parameters: {
|
|
1391
1399
|
query: {
|
|
1392
|
-
/** @description
|
|
1400
|
+
/** @description That person's id on the platform, the same value that appears in bindings and rejections */
|
|
1393
1401
|
peerId: string;
|
|
1394
|
-
/** @description
|
|
1402
|
+
/** @description Only platforms with usernames, such as Telegram, can supply this. Without the @. Leave it empty to mean there is no username */
|
|
1395
1403
|
username?: string;
|
|
1396
1404
|
};
|
|
1397
1405
|
header?: never;
|
|
@@ -1638,9 +1646,9 @@ export interface operations {
|
|
|
1638
1646
|
"list-threads": {
|
|
1639
1647
|
parameters: {
|
|
1640
1648
|
query?: {
|
|
1641
|
-
/** @description
|
|
1649
|
+
/** @description Search titles, case-insensitively. Leave it empty for the most recent conversations */
|
|
1642
1650
|
q?: string;
|
|
1643
|
-
/** @description
|
|
1651
|
+
/** @description When true, returns **only** archived conversations; otherwise only unarchived ones */
|
|
1644
1652
|
archived?: boolean;
|
|
1645
1653
|
limit?: number;
|
|
1646
1654
|
};
|
|
@@ -1806,7 +1814,7 @@ export interface operations {
|
|
|
1806
1814
|
"list-earlier-items": {
|
|
1807
1815
|
parameters: {
|
|
1808
1816
|
query: {
|
|
1809
|
-
/** @description
|
|
1817
|
+
/** @description From the document's earlier.before; returns entries before this ordinal */
|
|
1810
1818
|
before: number;
|
|
1811
1819
|
};
|
|
1812
1820
|
header?: never;
|