@cubos/agent-sdk 0.0.1151166 → 0.0.1152175
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/admin/agents.d.ts +19 -19
- package/dist/admin/ai-providers.d.ts +10 -10
- package/dist/admin/channels.d.ts +24 -0
- package/dist/admin/client-tools.d.ts +2 -2
- package/dist/admin/conversations.d.ts +42 -36
- package/dist/admin/cost-metrics.d.ts +61 -0
- package/dist/admin/global.d.ts +5 -5
- package/dist/admin/index.d.ts +3 -0
- package/dist/admin/knowledge-bases.d.ts +3 -3
- package/dist/admin/task-templates.d.ts +6 -6
- package/dist/admin/users.d.ts +2 -2
- package/dist/generated/schema.d.ts +720 -51
- package/dist/index.d.ts +2 -0
- package/dist/index.js +51 -12
- package/dist/index.js.map +8 -7
- package/dist/mapping.d.ts +3 -0
- package/dist/types.d.ts +3 -0
- package/package.json +1 -1
|
@@ -793,6 +793,89 @@ export interface paths {
|
|
|
793
793
|
patch?: never;
|
|
794
794
|
trace?: never;
|
|
795
795
|
};
|
|
796
|
+
"/api/v1/cost-metrics": {
|
|
797
|
+
parameters: {
|
|
798
|
+
query?: never;
|
|
799
|
+
header?: never;
|
|
800
|
+
path?: never;
|
|
801
|
+
cookie?: never;
|
|
802
|
+
};
|
|
803
|
+
/**
|
|
804
|
+
* Spend over time, whole instance
|
|
805
|
+
* @description Aggregates the spend of every tenant from the hourly cost rollup: totals, one row per group, a time series of the ten most expensive groups (plus one series summing the rest), and the values each filter can take given the others. Root only.
|
|
806
|
+
*/
|
|
807
|
+
get: {
|
|
808
|
+
parameters: {
|
|
809
|
+
query?: {
|
|
810
|
+
/** @description Comma-separated agent ids; `__none__` selects spend with no agent. */
|
|
811
|
+
agent?: string;
|
|
812
|
+
/** @description Start of the interval (RFC 3339), inclusive. Default: 30 days before `to`. */
|
|
813
|
+
from?: string;
|
|
814
|
+
/** @description `hour`, `day` (default), `week` or `month`. */
|
|
815
|
+
granularity?: string;
|
|
816
|
+
/**
|
|
817
|
+
* @description Comma-separated dimensions to group by: `tenant`, `user`, `agent`,
|
|
818
|
+
* `provider`, `model`, `kind`. Empty: one group, the total.
|
|
819
|
+
*/
|
|
820
|
+
group_by?: string;
|
|
821
|
+
/** @description Comma-separated event types (`llm_call`, `media_transcription`, …). */
|
|
822
|
+
kind?: string;
|
|
823
|
+
/** @description Comma-separated model ids; `__none__` selects spend with no model. */
|
|
824
|
+
model?: string;
|
|
825
|
+
/** @description Comma-separated provider ids; `__none__` selects spend with no provider. */
|
|
826
|
+
provider?: string;
|
|
827
|
+
/** @description Comma-separated tenant ids. Whole-instance route only. */
|
|
828
|
+
tenant?: string;
|
|
829
|
+
/** @description IANA zone the buckets are cut in. Default `UTC`. */
|
|
830
|
+
timezone?: string;
|
|
831
|
+
/** @description End of the interval (RFC 3339), exclusive. Default: now. */
|
|
832
|
+
to?: string;
|
|
833
|
+
/** @description Comma-separated user ids; `__none__` selects spend with no user. */
|
|
834
|
+
user?: string;
|
|
835
|
+
};
|
|
836
|
+
header?: never;
|
|
837
|
+
path?: never;
|
|
838
|
+
cookie?: never;
|
|
839
|
+
};
|
|
840
|
+
requestBody?: never;
|
|
841
|
+
responses: {
|
|
842
|
+
200: {
|
|
843
|
+
headers: {
|
|
844
|
+
[name: string]: unknown;
|
|
845
|
+
};
|
|
846
|
+
content: {
|
|
847
|
+
"application/json": components["schemas"]["CostMetrics"];
|
|
848
|
+
};
|
|
849
|
+
};
|
|
850
|
+
/** @description Invalid parameter, or a series of more than 2000 buckets. */
|
|
851
|
+
400: {
|
|
852
|
+
headers: {
|
|
853
|
+
[name: string]: unknown;
|
|
854
|
+
};
|
|
855
|
+
content?: never;
|
|
856
|
+
};
|
|
857
|
+
401: {
|
|
858
|
+
headers: {
|
|
859
|
+
[name: string]: unknown;
|
|
860
|
+
};
|
|
861
|
+
content?: never;
|
|
862
|
+
};
|
|
863
|
+
403: {
|
|
864
|
+
headers: {
|
|
865
|
+
[name: string]: unknown;
|
|
866
|
+
};
|
|
867
|
+
content?: never;
|
|
868
|
+
};
|
|
869
|
+
};
|
|
870
|
+
};
|
|
871
|
+
put?: never;
|
|
872
|
+
post?: never;
|
|
873
|
+
delete?: never;
|
|
874
|
+
options?: never;
|
|
875
|
+
head?: never;
|
|
876
|
+
patch?: never;
|
|
877
|
+
trace?: never;
|
|
878
|
+
};
|
|
796
879
|
"/api/v1/health": {
|
|
797
880
|
parameters: {
|
|
798
881
|
query?: never;
|
|
@@ -3338,6 +3421,68 @@ export interface paths {
|
|
|
3338
3421
|
patch?: never;
|
|
3339
3422
|
trace?: never;
|
|
3340
3423
|
};
|
|
3424
|
+
"/api/v1/tenants/{tenantSlug}/channel-outbox": {
|
|
3425
|
+
parameters: {
|
|
3426
|
+
query?: never;
|
|
3427
|
+
header?: never;
|
|
3428
|
+
path?: never;
|
|
3429
|
+
cookie?: never;
|
|
3430
|
+
};
|
|
3431
|
+
/**
|
|
3432
|
+
* Channel outbox report
|
|
3433
|
+
* @description One summary per channel of what it has not sent: pending messages (how many, since when, how many are retrying), whether anything is trying to send them (`delivery` — `delivering`, or why not: `disabled`, `runner_disconnected`, `not_paired`, `no_worker`), and what the channel gave up on in the last `days` days with the most recent error. A channel retries a transient failure until the message is `retry_window_seconds` old; a channel that is not delivering makes no attempts, so its queue only waits.
|
|
3434
|
+
*/
|
|
3435
|
+
get: {
|
|
3436
|
+
parameters: {
|
|
3437
|
+
query?: {
|
|
3438
|
+
/** @description How many days of given-up messages to count; clamped to 1..=90, default 7. */
|
|
3439
|
+
days?: number;
|
|
3440
|
+
};
|
|
3441
|
+
header?: never;
|
|
3442
|
+
path: {
|
|
3443
|
+
/** @description Slug of the tenant that owns the channels. */
|
|
3444
|
+
tenantSlug: string;
|
|
3445
|
+
};
|
|
3446
|
+
cookie?: never;
|
|
3447
|
+
};
|
|
3448
|
+
requestBody?: never;
|
|
3449
|
+
responses: {
|
|
3450
|
+
200: {
|
|
3451
|
+
headers: {
|
|
3452
|
+
[name: string]: unknown;
|
|
3453
|
+
};
|
|
3454
|
+
content: {
|
|
3455
|
+
"application/json": components["schemas"]["ChannelOutboxReport"];
|
|
3456
|
+
};
|
|
3457
|
+
};
|
|
3458
|
+
401: {
|
|
3459
|
+
headers: {
|
|
3460
|
+
[name: string]: unknown;
|
|
3461
|
+
};
|
|
3462
|
+
content?: never;
|
|
3463
|
+
};
|
|
3464
|
+
403: {
|
|
3465
|
+
headers: {
|
|
3466
|
+
[name: string]: unknown;
|
|
3467
|
+
};
|
|
3468
|
+
content?: never;
|
|
3469
|
+
};
|
|
3470
|
+
404: {
|
|
3471
|
+
headers: {
|
|
3472
|
+
[name: string]: unknown;
|
|
3473
|
+
};
|
|
3474
|
+
content?: never;
|
|
3475
|
+
};
|
|
3476
|
+
};
|
|
3477
|
+
};
|
|
3478
|
+
put?: never;
|
|
3479
|
+
post?: never;
|
|
3480
|
+
delete?: never;
|
|
3481
|
+
options?: never;
|
|
3482
|
+
head?: never;
|
|
3483
|
+
patch?: never;
|
|
3484
|
+
trace?: never;
|
|
3485
|
+
};
|
|
3341
3486
|
"/api/v1/tenants/{tenantSlug}/channels": {
|
|
3342
3487
|
parameters: {
|
|
3343
3488
|
query?: never;
|
|
@@ -3816,6 +3961,83 @@ export interface paths {
|
|
|
3816
3961
|
patch?: never;
|
|
3817
3962
|
trace?: never;
|
|
3818
3963
|
};
|
|
3964
|
+
"/api/v1/tenants/{tenantSlug}/channels/{slug}/outbox": {
|
|
3965
|
+
parameters: {
|
|
3966
|
+
query?: never;
|
|
3967
|
+
header?: never;
|
|
3968
|
+
path?: never;
|
|
3969
|
+
cookie?: never;
|
|
3970
|
+
};
|
|
3971
|
+
/**
|
|
3972
|
+
* List a channel's unsent messages
|
|
3973
|
+
* @description The channel's outbox summary (as in `GET /channel-outbox`) plus a page of the messages it has not sent, newest first: still pending, or given up on in the last `days` days. Each carries its conversation, a preview of the text (or the file's name, type and size), the attempts so far, the last error, and when the next attempt is due or when the channel gave up.
|
|
3974
|
+
*/
|
|
3975
|
+
get: {
|
|
3976
|
+
parameters: {
|
|
3977
|
+
query?: {
|
|
3978
|
+
/** @description Cursor `<rfc3339>|<uuid>` from a previous page's `next_before`; omit for the first page. */
|
|
3979
|
+
before?: string;
|
|
3980
|
+
/** @description How many days of given-up messages to include; clamped to 1..=90, default 7. */
|
|
3981
|
+
days?: number;
|
|
3982
|
+
/** @description Page size; clamped to 1..=200, default 50. */
|
|
3983
|
+
limit?: number;
|
|
3984
|
+
/** @description `pending`, `failed` or `all` (default). Anything else is 400. */
|
|
3985
|
+
status?: string;
|
|
3986
|
+
};
|
|
3987
|
+
header?: never;
|
|
3988
|
+
path: {
|
|
3989
|
+
/** @description Slug of the channel, unique within the tenant. */
|
|
3990
|
+
slug: string;
|
|
3991
|
+
/** @description Slug of the tenant that owns the channel. */
|
|
3992
|
+
tenantSlug: string;
|
|
3993
|
+
};
|
|
3994
|
+
cookie?: never;
|
|
3995
|
+
};
|
|
3996
|
+
requestBody?: never;
|
|
3997
|
+
responses: {
|
|
3998
|
+
200: {
|
|
3999
|
+
headers: {
|
|
4000
|
+
[name: string]: unknown;
|
|
4001
|
+
};
|
|
4002
|
+
content: {
|
|
4003
|
+
"application/json": components["schemas"]["ChannelOutbox"];
|
|
4004
|
+
};
|
|
4005
|
+
};
|
|
4006
|
+
/** @description Unknown `status` or malformed `before`. */
|
|
4007
|
+
400: {
|
|
4008
|
+
headers: {
|
|
4009
|
+
[name: string]: unknown;
|
|
4010
|
+
};
|
|
4011
|
+
content?: never;
|
|
4012
|
+
};
|
|
4013
|
+
401: {
|
|
4014
|
+
headers: {
|
|
4015
|
+
[name: string]: unknown;
|
|
4016
|
+
};
|
|
4017
|
+
content?: never;
|
|
4018
|
+
};
|
|
4019
|
+
403: {
|
|
4020
|
+
headers: {
|
|
4021
|
+
[name: string]: unknown;
|
|
4022
|
+
};
|
|
4023
|
+
content?: never;
|
|
4024
|
+
};
|
|
4025
|
+
404: {
|
|
4026
|
+
headers: {
|
|
4027
|
+
[name: string]: unknown;
|
|
4028
|
+
};
|
|
4029
|
+
content?: never;
|
|
4030
|
+
};
|
|
4031
|
+
};
|
|
4032
|
+
};
|
|
4033
|
+
put?: never;
|
|
4034
|
+
post?: never;
|
|
4035
|
+
delete?: never;
|
|
4036
|
+
options?: never;
|
|
4037
|
+
head?: never;
|
|
4038
|
+
patch?: never;
|
|
4039
|
+
trace?: never;
|
|
4040
|
+
};
|
|
3819
4041
|
"/api/v1/tenants/{tenantSlug}/channels/{slug}/rotate-secret": {
|
|
3820
4042
|
parameters: {
|
|
3821
4043
|
query?: never;
|
|
@@ -7201,6 +7423,98 @@ export interface paths {
|
|
|
7201
7423
|
patch?: never;
|
|
7202
7424
|
trace?: never;
|
|
7203
7425
|
};
|
|
7426
|
+
"/api/v1/tenants/{tenantSlug}/cost-metrics": {
|
|
7427
|
+
parameters: {
|
|
7428
|
+
query?: never;
|
|
7429
|
+
header?: never;
|
|
7430
|
+
path?: never;
|
|
7431
|
+
cookie?: never;
|
|
7432
|
+
};
|
|
7433
|
+
/**
|
|
7434
|
+
* Spend over time, one tenant
|
|
7435
|
+
* @description The tenant's spend from the hourly cost rollup, in the same shape as `GET /cost-metrics`. Needs `conversations:read`, which already exposes the cost of every event.
|
|
7436
|
+
*/
|
|
7437
|
+
get: {
|
|
7438
|
+
parameters: {
|
|
7439
|
+
query?: {
|
|
7440
|
+
/** @description Comma-separated agent ids; `__none__` selects spend with no agent. */
|
|
7441
|
+
agent?: string;
|
|
7442
|
+
/** @description Start of the interval (RFC 3339), inclusive. Default: 30 days before `to`. */
|
|
7443
|
+
from?: string;
|
|
7444
|
+
/** @description `hour`, `day` (default), `week` or `month`. */
|
|
7445
|
+
granularity?: string;
|
|
7446
|
+
/**
|
|
7447
|
+
* @description Comma-separated dimensions to group by: `tenant`, `user`, `agent`,
|
|
7448
|
+
* `provider`, `model`, `kind`. Empty: one group, the total.
|
|
7449
|
+
*/
|
|
7450
|
+
group_by?: string;
|
|
7451
|
+
/** @description Comma-separated event types (`llm_call`, `media_transcription`, …). */
|
|
7452
|
+
kind?: string;
|
|
7453
|
+
/** @description Comma-separated model ids; `__none__` selects spend with no model. */
|
|
7454
|
+
model?: string;
|
|
7455
|
+
/** @description Comma-separated provider ids; `__none__` selects spend with no provider. */
|
|
7456
|
+
provider?: string;
|
|
7457
|
+
/** @description Comma-separated tenant ids. Whole-instance route only. */
|
|
7458
|
+
tenant?: string;
|
|
7459
|
+
/** @description IANA zone the buckets are cut in. Default `UTC`. */
|
|
7460
|
+
timezone?: string;
|
|
7461
|
+
/** @description End of the interval (RFC 3339), exclusive. Default: now. */
|
|
7462
|
+
to?: string;
|
|
7463
|
+
/** @description Comma-separated user ids; `__none__` selects spend with no user. */
|
|
7464
|
+
user?: string;
|
|
7465
|
+
};
|
|
7466
|
+
header?: never;
|
|
7467
|
+
path: {
|
|
7468
|
+
/** @description Tenant slug (kebab-case). */
|
|
7469
|
+
tenantSlug: string;
|
|
7470
|
+
};
|
|
7471
|
+
cookie?: never;
|
|
7472
|
+
};
|
|
7473
|
+
requestBody?: never;
|
|
7474
|
+
responses: {
|
|
7475
|
+
200: {
|
|
7476
|
+
headers: {
|
|
7477
|
+
[name: string]: unknown;
|
|
7478
|
+
};
|
|
7479
|
+
content: {
|
|
7480
|
+
"application/json": components["schemas"]["CostMetrics"];
|
|
7481
|
+
};
|
|
7482
|
+
};
|
|
7483
|
+
/** @description Invalid parameter, or a series of more than 2000 buckets. */
|
|
7484
|
+
400: {
|
|
7485
|
+
headers: {
|
|
7486
|
+
[name: string]: unknown;
|
|
7487
|
+
};
|
|
7488
|
+
content?: never;
|
|
7489
|
+
};
|
|
7490
|
+
401: {
|
|
7491
|
+
headers: {
|
|
7492
|
+
[name: string]: unknown;
|
|
7493
|
+
};
|
|
7494
|
+
content?: never;
|
|
7495
|
+
};
|
|
7496
|
+
403: {
|
|
7497
|
+
headers: {
|
|
7498
|
+
[name: string]: unknown;
|
|
7499
|
+
};
|
|
7500
|
+
content?: never;
|
|
7501
|
+
};
|
|
7502
|
+
404: {
|
|
7503
|
+
headers: {
|
|
7504
|
+
[name: string]: unknown;
|
|
7505
|
+
};
|
|
7506
|
+
content?: never;
|
|
7507
|
+
};
|
|
7508
|
+
};
|
|
7509
|
+
};
|
|
7510
|
+
put?: never;
|
|
7511
|
+
post?: never;
|
|
7512
|
+
delete?: never;
|
|
7513
|
+
options?: never;
|
|
7514
|
+
head?: never;
|
|
7515
|
+
patch?: never;
|
|
7516
|
+
trace?: never;
|
|
7517
|
+
};
|
|
7204
7518
|
"/api/v1/tenants/{tenantSlug}/knowledge-bases": {
|
|
7205
7519
|
parameters: {
|
|
7206
7520
|
query?: never;
|
|
@@ -11518,7 +11832,7 @@ export interface components {
|
|
|
11518
11832
|
*/
|
|
11519
11833
|
description: string;
|
|
11520
11834
|
display_name: string;
|
|
11521
|
-
embedding_model:
|
|
11835
|
+
embedding_model: components["schemas"]["AiProviderModel"] | null;
|
|
11522
11836
|
/**
|
|
11523
11837
|
* Format: int32
|
|
11524
11838
|
* @description Which `memory_observation_embedding.embedding_dN` column the backfill worker writes for this
|
|
@@ -11590,7 +11904,7 @@ export interface components {
|
|
|
11590
11904
|
* `feature_filesystem` is off.
|
|
11591
11905
|
*/
|
|
11592
11906
|
filesystem_ttl_turns: number | null;
|
|
11593
|
-
guardrail_model:
|
|
11907
|
+
guardrail_model: components["schemas"]["AiProviderModel"] | null;
|
|
11594
11908
|
/** @description Optional operator policy appended to the fixed guardrail verifier wrapper. */
|
|
11595
11909
|
guardrail_prompt: string | null;
|
|
11596
11910
|
/**
|
|
@@ -11615,7 +11929,7 @@ export interface components {
|
|
|
11615
11929
|
* and flag a vanished model instead of rendering a bare UUID.
|
|
11616
11930
|
*/
|
|
11617
11931
|
model: components["schemas"]["AiProviderModel"];
|
|
11618
|
-
nap_model:
|
|
11932
|
+
nap_model: components["schemas"]["AiProviderModel"] | null;
|
|
11619
11933
|
/**
|
|
11620
11934
|
* @description Reasoning / thinking-effort level passed to the nap's extractor and consolidator. `null`
|
|
11621
11935
|
* ≡ use the nap model default.
|
|
@@ -11631,11 +11945,11 @@ export interface components {
|
|
|
11631
11945
|
reasoning_level: string | null;
|
|
11632
11946
|
slug: string;
|
|
11633
11947
|
soul_md: string;
|
|
11634
|
-
stt_model:
|
|
11948
|
+
stt_model: components["schemas"]["AiProviderModel"] | null;
|
|
11635
11949
|
/** Format: date-time */
|
|
11636
11950
|
updated_at: string;
|
|
11637
|
-
vision_model:
|
|
11638
|
-
websearch_model:
|
|
11951
|
+
vision_model: components["schemas"]["AiProviderModel"] | null;
|
|
11952
|
+
websearch_model: components["schemas"]["AiProviderModel"] | null;
|
|
11639
11953
|
/**
|
|
11640
11954
|
* Format: int32
|
|
11641
11955
|
* @deprecated
|
|
@@ -11752,12 +12066,13 @@ export interface components {
|
|
|
11752
12066
|
shared: boolean;
|
|
11753
12067
|
slug: string;
|
|
11754
12068
|
/**
|
|
11755
|
-
* @description This provider type's token SKU ids →
|
|
11756
|
-
*
|
|
11757
|
-
*
|
|
12069
|
+
* @description This provider type's token SKU ids → class. Lets the chat transcript
|
|
12070
|
+
* split a call's `token_usage` into prompt (cached or not) and completion
|
|
12071
|
+
* (reasoning or not) for a call recorded before calls carried their own
|
|
12072
|
+
* `tokens`. `Other` SKUs are omitted.
|
|
11758
12073
|
*/
|
|
11759
|
-
|
|
11760
|
-
[key: string]: components["schemas"]["
|
|
12074
|
+
token_sku_classes: {
|
|
12075
|
+
[key: string]: components["schemas"]["SkuClass"];
|
|
11761
12076
|
};
|
|
11762
12077
|
/** @description One of the types `GET /ai-provider-types` lists, as declared by `plugin`. */
|
|
11763
12078
|
type: string;
|
|
@@ -11823,7 +12138,7 @@ export interface components {
|
|
|
11823
12138
|
* the right unit shown and the right ordering.
|
|
11824
12139
|
*/
|
|
11825
12140
|
pricing_skus: components["schemas"]["SkuDisplayDto"][];
|
|
11826
|
-
reasoning_options:
|
|
12141
|
+
reasoning_options: components["schemas"]["ReasoningOptions"] | null;
|
|
11827
12142
|
};
|
|
11828
12143
|
/** @description One provider type an operator can create a provider of right now. */
|
|
11829
12144
|
AiProviderType: {
|
|
@@ -11985,6 +12300,40 @@ export interface components {
|
|
|
11985
12300
|
/** @enum {string} */
|
|
11986
12301
|
type: "external";
|
|
11987
12302
|
});
|
|
12303
|
+
ChannelOutbox: {
|
|
12304
|
+
/** Format: int32 */
|
|
12305
|
+
failed_window_days: number;
|
|
12306
|
+
/** @description Newest first. */
|
|
12307
|
+
items: components["schemas"]["OutboxItem"][];
|
|
12308
|
+
/** @description Cursor for the next page (`before`); `null` on the last one. */
|
|
12309
|
+
next_before: string | null;
|
|
12310
|
+
/** Format: int64 */
|
|
12311
|
+
retry_window_seconds: number;
|
|
12312
|
+
summary: components["schemas"]["ChannelOutboxSummary"];
|
|
12313
|
+
};
|
|
12314
|
+
ChannelOutboxReport: {
|
|
12315
|
+
/** @description One entry per channel of the tenant, ordered by slug. */
|
|
12316
|
+
channels: components["schemas"]["ChannelOutboxSummary"][];
|
|
12317
|
+
/**
|
|
12318
|
+
* Format: int32
|
|
12319
|
+
* @description The `days` the `failed` counts cover.
|
|
12320
|
+
*/
|
|
12321
|
+
failed_window_days: number;
|
|
12322
|
+
/**
|
|
12323
|
+
* Format: int64
|
|
12324
|
+
* @description How long a channel keeps retrying a message that fails transiently,
|
|
12325
|
+
* counted from when the message was written. Past it, the next failure
|
|
12326
|
+
* gives up on the message.
|
|
12327
|
+
*/
|
|
12328
|
+
retry_window_seconds: number;
|
|
12329
|
+
};
|
|
12330
|
+
ChannelOutboxSummary: {
|
|
12331
|
+
channel: components["schemas"]["ChannelRef"];
|
|
12332
|
+
delivery: components["schemas"]["OutboxDelivery"];
|
|
12333
|
+
failed: components["schemas"]["OutboxFailedSummary"];
|
|
12334
|
+
pending: components["schemas"]["OutboxPendingSummary"];
|
|
12335
|
+
type: components["schemas"]["ChannelType"];
|
|
12336
|
+
};
|
|
11988
12337
|
/**
|
|
11989
12338
|
* @description Reduced channel reference embedded into other resources' responses (e.g. a conversation's
|
|
11990
12339
|
* originating channel) in place of a bare `channel_id`.
|
|
@@ -12025,7 +12374,7 @@ export interface components {
|
|
|
12025
12374
|
input_schema: components["schemas"]["Value"];
|
|
12026
12375
|
/** @description LLM-facing tool name, unique within the conversation. */
|
|
12027
12376
|
name: string;
|
|
12028
|
-
output_schema:
|
|
12377
|
+
output_schema: components["schemas"]["Value"] | null;
|
|
12029
12378
|
read_only_hint: boolean | null;
|
|
12030
12379
|
/** Format: int32 */
|
|
12031
12380
|
timeout_seconds: number;
|
|
@@ -12057,8 +12406,8 @@ export interface components {
|
|
|
12057
12406
|
description?: string;
|
|
12058
12407
|
destructive_hint?: boolean | null;
|
|
12059
12408
|
idempotent_hint?: boolean | null;
|
|
12060
|
-
input_schema?:
|
|
12061
|
-
output_schema?:
|
|
12409
|
+
input_schema?: components["schemas"]["Value"] | null;
|
|
12410
|
+
output_schema?: components["schemas"]["Value"] | null;
|
|
12062
12411
|
/**
|
|
12063
12412
|
* @description `true` promises the call mutates nothing, which exempts it from the
|
|
12064
12413
|
* guardrail — the same contract an MCP `readOnlyHint` carries.
|
|
@@ -12132,14 +12481,14 @@ export interface components {
|
|
|
12132
12481
|
value: string;
|
|
12133
12482
|
};
|
|
12134
12483
|
Conversation: {
|
|
12135
|
-
agent:
|
|
12484
|
+
agent: components["schemas"]["AgentRef"] | null;
|
|
12136
12485
|
/**
|
|
12137
12486
|
* Format: date-time
|
|
12138
12487
|
* @description Soft-archive marker. The API always returns archived rows; the
|
|
12139
12488
|
* dashboard hides them at render time. Reversible by clearing.
|
|
12140
12489
|
*/
|
|
12141
12490
|
archived_at: string | null;
|
|
12142
|
-
channel:
|
|
12491
|
+
channel: components["schemas"]["ChannelRef"] | null;
|
|
12143
12492
|
/** Format: date-time */
|
|
12144
12493
|
created_at: string;
|
|
12145
12494
|
/**
|
|
@@ -12193,7 +12542,7 @@ export interface components {
|
|
|
12193
12542
|
* dashboard renders background tasks read-only and in their own view.
|
|
12194
12543
|
*/
|
|
12195
12544
|
origin: string;
|
|
12196
|
-
parent_conversation:
|
|
12545
|
+
parent_conversation: components["schemas"]["ConversationRef"] | null;
|
|
12197
12546
|
/**
|
|
12198
12547
|
* Format: int32
|
|
12199
12548
|
* @description Consecutive failed turns since the last success. 0 when never
|
|
@@ -12215,7 +12564,7 @@ export interface components {
|
|
|
12215
12564
|
total_cost_usd: number;
|
|
12216
12565
|
/** Format: date-time */
|
|
12217
12566
|
updated_at: string;
|
|
12218
|
-
user:
|
|
12567
|
+
user: components["schemas"]["UserRef"] | null;
|
|
12219
12568
|
/**
|
|
12220
12569
|
* @description Channel-native identifier (e.g. Telegram numeric id, msisdn), read through
|
|
12221
12570
|
* `user_identities` so it always reflects the canonical form. Null when the
|
|
@@ -12280,7 +12629,10 @@ export interface components {
|
|
|
12280
12629
|
* The dashboard surfaces it per-item in the event detail view.
|
|
12281
12630
|
*/
|
|
12282
12631
|
cost_usd: number;
|
|
12283
|
-
/**
|
|
12632
|
+
/**
|
|
12633
|
+
* Format: date-time
|
|
12634
|
+
* @description When the row was written: when the core learned of the event.
|
|
12635
|
+
*/
|
|
12284
12636
|
created_at: string;
|
|
12285
12637
|
/**
|
|
12286
12638
|
* Format: date-time
|
|
@@ -12316,7 +12668,7 @@ export interface components {
|
|
|
12316
12668
|
* authored it. The dashboard badges these as proactively delivered.
|
|
12317
12669
|
*/
|
|
12318
12670
|
injected_by_conversation_id: string | null;
|
|
12319
|
-
llm_call_data:
|
|
12671
|
+
llm_call_data: components["schemas"]["LlmCallData"] | null;
|
|
12320
12672
|
model: string | null;
|
|
12321
12673
|
/**
|
|
12322
12674
|
* Format: uuid
|
|
@@ -12325,7 +12677,7 @@ export interface components {
|
|
|
12325
12677
|
* this to nest the subcall bubbles under their parent eval card.
|
|
12326
12678
|
*/
|
|
12327
12679
|
parent_tool_call_id: string | null;
|
|
12328
|
-
provider:
|
|
12680
|
+
provider: components["schemas"]["ProviderRef"] | null;
|
|
12329
12681
|
/**
|
|
12330
12682
|
* Format: date-time
|
|
12331
12683
|
* @description Recipient's read receipt for `agent_message` rows (the blue ✓✓). Only
|
|
@@ -12334,6 +12686,14 @@ export interface components {
|
|
|
12334
12686
|
*/
|
|
12335
12687
|
read_at: string | null;
|
|
12336
12688
|
result?: unknown;
|
|
12689
|
+
/**
|
|
12690
|
+
* Format: date-time
|
|
12691
|
+
* @description When the sender sent it, for a `user_message` that came through a
|
|
12692
|
+
* channel carrying a timestamp (WhatsApp). Usually the same minute as
|
|
12693
|
+
* `created_at`; hours earlier for a message recovered after a channel
|
|
12694
|
+
* outage. NULL when the channel carries none — show `created_at` then.
|
|
12695
|
+
*/
|
|
12696
|
+
sent_at: string | null;
|
|
12337
12697
|
/**
|
|
12338
12698
|
* Format: int64
|
|
12339
12699
|
* @description Per-conversation log order (1, 2, 3, …). Stable; not the SSE
|
|
@@ -12407,8 +12767,179 @@ export interface components {
|
|
|
12407
12767
|
output_tokens: number | null;
|
|
12408
12768
|
summary_text: string;
|
|
12409
12769
|
};
|
|
12770
|
+
CostAgentLabel: {
|
|
12771
|
+
display_name: string;
|
|
12772
|
+
/** Format: uuid */
|
|
12773
|
+
id: string;
|
|
12774
|
+
slug: string;
|
|
12775
|
+
};
|
|
12776
|
+
/**
|
|
12777
|
+
* @description A dimension spend can be grouped or filtered by.
|
|
12778
|
+
* @enum {string}
|
|
12779
|
+
*/
|
|
12780
|
+
CostDimension: "tenant" | "user" | "agent" | "provider" | "model" | "kind";
|
|
12781
|
+
CostFacets: {
|
|
12782
|
+
agent: components["schemas"]["CostFacetValue"][];
|
|
12783
|
+
kind: components["schemas"]["CostFacetValue"][];
|
|
12784
|
+
model: components["schemas"]["CostFacetValue"][];
|
|
12785
|
+
provider: components["schemas"]["CostFacetValue"][];
|
|
12786
|
+
tenant: components["schemas"]["CostFacetValue"][];
|
|
12787
|
+
user: components["schemas"]["CostFacetValue"][];
|
|
12788
|
+
};
|
|
12789
|
+
/** @description One value a filter can take, with the spend it would select. */
|
|
12790
|
+
CostFacetValue: {
|
|
12791
|
+
/** Format: double */
|
|
12792
|
+
cost_usd: number;
|
|
12793
|
+
/**
|
|
12794
|
+
* @description The value to filter on; absent for "none" (the rows where the
|
|
12795
|
+
* dimension is NULL), which is filtered on as `none`.
|
|
12796
|
+
*/
|
|
12797
|
+
value: string | null;
|
|
12798
|
+
};
|
|
12799
|
+
/**
|
|
12800
|
+
* @description Time bucket of a series. The rollup is hourly in UTC; anything coarser is
|
|
12801
|
+
* cut in the request's time zone.
|
|
12802
|
+
* @enum {string}
|
|
12803
|
+
*/
|
|
12804
|
+
CostGranularity: "hour" | "day" | "week" | "month";
|
|
12805
|
+
CostGroup: components["schemas"]["CostMeasures"] & {
|
|
12806
|
+
key: components["schemas"]["CostKey"];
|
|
12807
|
+
};
|
|
12808
|
+
/**
|
|
12809
|
+
* @description The value of every grouped dimension for one slice. A dimension outside
|
|
12810
|
+
* `group_by` is always absent; a grouped one is absent when the slice is the
|
|
12811
|
+
* rows where it is NULL.
|
|
12812
|
+
*/
|
|
12813
|
+
CostKey: {
|
|
12814
|
+
/** Format: uuid */
|
|
12815
|
+
agent_id: string | null;
|
|
12816
|
+
kind: string | null;
|
|
12817
|
+
model: string | null;
|
|
12818
|
+
/** Format: uuid */
|
|
12819
|
+
provider_id: string | null;
|
|
12820
|
+
/** Format: uuid */
|
|
12821
|
+
tenant_id: string | null;
|
|
12822
|
+
/** Format: uuid */
|
|
12823
|
+
user_id: string | null;
|
|
12824
|
+
};
|
|
12825
|
+
/**
|
|
12826
|
+
* @description Names for every id the response mentions. An id with no entry here points
|
|
12827
|
+
* at a row that no longer exists — spend outlives what produced it.
|
|
12828
|
+
*/
|
|
12829
|
+
CostLabels: {
|
|
12830
|
+
agents: components["schemas"]["CostAgentLabel"][];
|
|
12831
|
+
providers: components["schemas"]["CostProviderLabel"][];
|
|
12832
|
+
tenants: components["schemas"]["CostTenantLabel"][];
|
|
12833
|
+
users: components["schemas"]["CostUserLabel"][];
|
|
12834
|
+
};
|
|
12835
|
+
CostMeasures: {
|
|
12836
|
+
/**
|
|
12837
|
+
* Format: int64
|
|
12838
|
+
* @description The part of `input_tokens` written into the provider's cache.
|
|
12839
|
+
*/
|
|
12840
|
+
cache_write_tokens: number;
|
|
12841
|
+
/**
|
|
12842
|
+
* Format: int64
|
|
12843
|
+
* @description The part of `input_tokens` served from the provider's cache.
|
|
12844
|
+
*/
|
|
12845
|
+
cached_input_tokens: number;
|
|
12846
|
+
/**
|
|
12847
|
+
* Format: int64
|
|
12848
|
+
* @description Paid calls: one per event that carried a cost.
|
|
12849
|
+
*/
|
|
12850
|
+
calls: number;
|
|
12851
|
+
/** Format: double */
|
|
12852
|
+
cost_usd: number;
|
|
12853
|
+
/**
|
|
12854
|
+
* Format: int64
|
|
12855
|
+
* @description The whole prompt: read at full rate, served from cache and written to
|
|
12856
|
+
* it.
|
|
12857
|
+
*/
|
|
12858
|
+
input_tokens: number;
|
|
12859
|
+
/**
|
|
12860
|
+
* Format: int64
|
|
12861
|
+
* @description The whole completion, reasoning included.
|
|
12862
|
+
*/
|
|
12863
|
+
output_tokens: number;
|
|
12864
|
+
/**
|
|
12865
|
+
* Format: int64
|
|
12866
|
+
* @description The part of `output_tokens` spent thinking.
|
|
12867
|
+
*/
|
|
12868
|
+
reasoning_tokens: number;
|
|
12869
|
+
};
|
|
12870
|
+
CostMetrics: {
|
|
12871
|
+
/** Format: date-time */
|
|
12872
|
+
backfill_cutover: string | null;
|
|
12873
|
+
/**
|
|
12874
|
+
* @description While the history recorded before the rollup existed is still being
|
|
12875
|
+
* attributed, totals that reach back past `backfill_cutover` are low.
|
|
12876
|
+
*/
|
|
12877
|
+
backfill_pending: boolean;
|
|
12878
|
+
/**
|
|
12879
|
+
* @description Start of every bucket in the interval, in order, empty ones included —
|
|
12880
|
+
* cut in the request's time zone, so a day is a local day across DST.
|
|
12881
|
+
*/
|
|
12882
|
+
buckets: string[];
|
|
12883
|
+
facets: components["schemas"]["CostFacets"];
|
|
12884
|
+
/** Format: date-time */
|
|
12885
|
+
from: string;
|
|
12886
|
+
granularity: components["schemas"]["CostGranularity"];
|
|
12887
|
+
group_by: components["schemas"]["CostDimension"][];
|
|
12888
|
+
/** @description One row per group, most expensive first, capped at 1000. */
|
|
12889
|
+
groups: components["schemas"]["CostGroup"][];
|
|
12890
|
+
groups_truncated: boolean;
|
|
12891
|
+
labels: components["schemas"]["CostLabels"];
|
|
12892
|
+
/**
|
|
12893
|
+
* @description Per bucket and group, for the first eight groups by cost, plus one
|
|
12894
|
+
* "other" series (no `key`) summing the rest. Buckets with no spend are
|
|
12895
|
+
* omitted; `buckets` lists them all.
|
|
12896
|
+
*/
|
|
12897
|
+
series: components["schemas"]["CostSeriesPoint"][];
|
|
12898
|
+
timezone: string;
|
|
12899
|
+
/** Format: date-time */
|
|
12900
|
+
to: string;
|
|
12901
|
+
/** @description Everything the filters select, over the whole interval. */
|
|
12902
|
+
totals: components["schemas"]["CostMeasures"];
|
|
12903
|
+
/**
|
|
12904
|
+
* Format: int64
|
|
12905
|
+
* @description Tokens of calls recorded before calls carried their own split, under a
|
|
12906
|
+
* SKU no provider plugin has ever declared a class for — counted in none
|
|
12907
|
+
* of the token measures.
|
|
12908
|
+
*/
|
|
12909
|
+
unclassified_tokens: number;
|
|
12910
|
+
};
|
|
12911
|
+
CostProviderLabel: {
|
|
12912
|
+
/** Format: uuid */
|
|
12913
|
+
id: string;
|
|
12914
|
+
provider_type: string;
|
|
12915
|
+
slug: string;
|
|
12916
|
+
};
|
|
12917
|
+
CostSeriesPoint: components["schemas"]["CostMeasures"] & {
|
|
12918
|
+
/**
|
|
12919
|
+
* Format: date-time
|
|
12920
|
+
* @description Start of the bucket, cut in the request's time zone.
|
|
12921
|
+
*/
|
|
12922
|
+
bucket: string;
|
|
12923
|
+
key?: components["schemas"]["CostKey"] | null;
|
|
12924
|
+
};
|
|
12925
|
+
CostTenantLabel: {
|
|
12926
|
+
display_name: string;
|
|
12927
|
+
/** Format: uuid */
|
|
12928
|
+
id: string;
|
|
12929
|
+
slug: string;
|
|
12930
|
+
};
|
|
12931
|
+
CostUserLabel: {
|
|
12932
|
+
display_name: string | null;
|
|
12933
|
+
/** Format: uuid */
|
|
12934
|
+
id: string;
|
|
12935
|
+
/**
|
|
12936
|
+
* @description The user's first channel identity (a phone, a handle) — display names
|
|
12937
|
+
* are neither unique nor always set.
|
|
12938
|
+
*/
|
|
12939
|
+
primary_identifier: string | null;
|
|
12940
|
+
};
|
|
12410
12941
|
CountTokensResponse: {
|
|
12411
|
-
breakdown:
|
|
12942
|
+
breakdown: components["schemas"]["Breakdown"] | null;
|
|
12412
12943
|
/**
|
|
12413
12944
|
* Format: int32
|
|
12414
12945
|
* @description The model's full context window — the exact value the harness
|
|
@@ -13087,7 +13618,7 @@ export interface components {
|
|
|
13087
13618
|
display_name: string;
|
|
13088
13619
|
/** Format: uuid */
|
|
13089
13620
|
id: string;
|
|
13090
|
-
last_run:
|
|
13621
|
+
last_run: components["schemas"]["CurationRun"] | null;
|
|
13091
13622
|
/**
|
|
13092
13623
|
* @description Slug of the agent that curates this base's wiki, or null when nothing
|
|
13093
13624
|
* curates it. Any agent of the tenant works — the harness forces the
|
|
@@ -13223,7 +13754,7 @@ export interface components {
|
|
|
13223
13754
|
* exclusive in normal flow.
|
|
13224
13755
|
*/
|
|
13225
13756
|
LlmCallData: {
|
|
13226
|
-
coerced_call:
|
|
13757
|
+
coerced_call: components["schemas"]["CoercedCall"] | null;
|
|
13227
13758
|
/**
|
|
13228
13759
|
* @description Transport-level error (DNS, TLS, HTTP 5xx, decode); set when
|
|
13229
13760
|
* `response` is `None`.
|
|
@@ -13232,7 +13763,7 @@ export interface components {
|
|
|
13232
13763
|
/** Format: int64 */
|
|
13233
13764
|
latency_ms: number;
|
|
13234
13765
|
request: components["schemas"]["LlmRequestSnapshot"];
|
|
13235
|
-
response:
|
|
13766
|
+
response: components["schemas"]["LlmResponseSnapshot"] | null;
|
|
13236
13767
|
/**
|
|
13237
13768
|
* Format: int64
|
|
13238
13769
|
* @description Seq of the newest pending event (`user_message`, `task_prompt`,
|
|
@@ -13254,11 +13785,17 @@ export interface components {
|
|
|
13254
13785
|
LlmResponseSnapshot: {
|
|
13255
13786
|
/** Format: double */
|
|
13256
13787
|
cost_usd?: number;
|
|
13257
|
-
finish_error:
|
|
13788
|
+
finish_error: components["schemas"]["FinishError"] | null;
|
|
13258
13789
|
messages: components["schemas"]["Message"][];
|
|
13259
13790
|
token_usage: {
|
|
13260
13791
|
[key: string]: number;
|
|
13261
13792
|
};
|
|
13793
|
+
/**
|
|
13794
|
+
* @description `token_usage` summed by class when the call returned. All zero on
|
|
13795
|
+
* snapshots written before classes existed; their `token_usage` is
|
|
13796
|
+
* still there to classify.
|
|
13797
|
+
*/
|
|
13798
|
+
tokens?: components["schemas"]["TokenCounts"];
|
|
13262
13799
|
};
|
|
13263
13800
|
Mcp: {
|
|
13264
13801
|
/** Format: date-time */
|
|
@@ -13422,7 +13959,7 @@ export interface components {
|
|
|
13422
13959
|
metadata: Record<string, unknown>;
|
|
13423
13960
|
/** Format: date-time */
|
|
13424
13961
|
recorded_at: string;
|
|
13425
|
-
source_conversation:
|
|
13962
|
+
source_conversation: components["schemas"]["ConversationRef"] | null;
|
|
13426
13963
|
};
|
|
13427
13964
|
MergeUserInput: {
|
|
13428
13965
|
/**
|
|
@@ -13512,6 +14049,109 @@ export interface components {
|
|
|
13512
14049
|
NamedClientToolInput: components["schemas"]["ClientToolInput"] & {
|
|
13513
14050
|
name: string;
|
|
13514
14051
|
};
|
|
14052
|
+
/**
|
|
14053
|
+
* @description Whether anything is trying to send this channel's queue right now.
|
|
14054
|
+
* @enum {string}
|
|
14055
|
+
*/
|
|
14056
|
+
OutboxDelivery: "delivering" | "disabled" | "runner_disconnected" | "not_paired" | "no_worker";
|
|
14057
|
+
OutboxFailedSummary: {
|
|
14058
|
+
/**
|
|
14059
|
+
* Format: int64
|
|
14060
|
+
* @description Messages the channel gave up on since `since`: refused outright by the
|
|
14061
|
+
* channel, or still failing past the retry window.
|
|
14062
|
+
*/
|
|
14063
|
+
count: number;
|
|
14064
|
+
/** @description The error recorded on the most recent of them. */
|
|
14065
|
+
last_error: string | null;
|
|
14066
|
+
/**
|
|
14067
|
+
* Format: date-time
|
|
14068
|
+
* @description When the most recent of them was given up on.
|
|
14069
|
+
*/
|
|
14070
|
+
last_failed_at: string | null;
|
|
14071
|
+
/**
|
|
14072
|
+
* Format: date-time
|
|
14073
|
+
* @description Start of the counted window (`days` before the request).
|
|
14074
|
+
*/
|
|
14075
|
+
since: string;
|
|
14076
|
+
};
|
|
14077
|
+
OutboxFile: {
|
|
14078
|
+
filename: string;
|
|
14079
|
+
mime_type: string;
|
|
14080
|
+
/** Format: int64 */
|
|
14081
|
+
size_bytes: number;
|
|
14082
|
+
};
|
|
14083
|
+
OutboxItem: {
|
|
14084
|
+
/**
|
|
14085
|
+
* Format: int32
|
|
14086
|
+
* @description Attempts that failed so far.
|
|
14087
|
+
*/
|
|
14088
|
+
attempts: number;
|
|
14089
|
+
/**
|
|
14090
|
+
* Format: uuid
|
|
14091
|
+
* @description Conversation the message belongs to; `null` for a proactive send.
|
|
14092
|
+
*/
|
|
14093
|
+
conversation_id: string | null;
|
|
14094
|
+
/**
|
|
14095
|
+
* Format: date-time
|
|
14096
|
+
* @description When the message was written.
|
|
14097
|
+
*/
|
|
14098
|
+
created_at: string;
|
|
14099
|
+
/**
|
|
14100
|
+
* Format: date-time
|
|
14101
|
+
* @description Failed only: when the channel gave up on it.
|
|
14102
|
+
*/
|
|
14103
|
+
failed_at: string | null;
|
|
14104
|
+
file: components["schemas"]["OutboxFile"] | null;
|
|
14105
|
+
/**
|
|
14106
|
+
* Format: uuid
|
|
14107
|
+
* @description The event id (`conversation`) or the proactive send's id (`outbound`).
|
|
14108
|
+
*/
|
|
14109
|
+
id: string;
|
|
14110
|
+
/** @description Error of the latest failed attempt. */
|
|
14111
|
+
last_error: string | null;
|
|
14112
|
+
/**
|
|
14113
|
+
* Format: date-time
|
|
14114
|
+
* @description Pending only: when the next attempt is due. `null` means as soon as the
|
|
14115
|
+
* channel gets to it.
|
|
14116
|
+
*/
|
|
14117
|
+
next_attempt_at: string | null;
|
|
14118
|
+
/** @description First 200 characters of the text, or a file's caption. */
|
|
14119
|
+
preview: string | null;
|
|
14120
|
+
/** @description Channel-native recipient (chat id, phone, runner identifier). */
|
|
14121
|
+
recipient: string | null;
|
|
14122
|
+
source: components["schemas"]["OutboxItemSource"];
|
|
14123
|
+
status: components["schemas"]["OutboxItemStatus"];
|
|
14124
|
+
/** @description Display name of the user the message was for, when known. */
|
|
14125
|
+
user_display_name: string | null;
|
|
14126
|
+
};
|
|
14127
|
+
/** @enum {string} */
|
|
14128
|
+
OutboxItemSource: "conversation" | "outbound";
|
|
14129
|
+
/** @enum {string} */
|
|
14130
|
+
OutboxItemStatus: "pending" | "failed";
|
|
14131
|
+
OutboxPendingSummary: {
|
|
14132
|
+
/**
|
|
14133
|
+
* Format: int64
|
|
14134
|
+
* @description Messages waiting to be sent (conversation messages and files, plus
|
|
14135
|
+
* proactive sends such as the approval notice).
|
|
14136
|
+
*/
|
|
14137
|
+
count: number;
|
|
14138
|
+
/**
|
|
14139
|
+
* Format: date-time
|
|
14140
|
+
* @description The soonest scheduled retry, if any is scheduled.
|
|
14141
|
+
*/
|
|
14142
|
+
next_attempt_at: string | null;
|
|
14143
|
+
/**
|
|
14144
|
+
* Format: date-time
|
|
14145
|
+
* @description When the oldest of them was written. `null` when nothing is pending.
|
|
14146
|
+
*/
|
|
14147
|
+
oldest_at: string | null;
|
|
14148
|
+
/**
|
|
14149
|
+
* Format: int64
|
|
14150
|
+
* @description How many of them already failed at least once and are waiting out a
|
|
14151
|
+
* backoff.
|
|
14152
|
+
*/
|
|
14153
|
+
retrying: number;
|
|
14154
|
+
};
|
|
13515
14155
|
/**
|
|
13516
14156
|
* @description One citation note, already parsed.
|
|
13517
14157
|
*
|
|
@@ -13700,7 +14340,7 @@ export interface components {
|
|
|
13700
14340
|
total_cost_usd: number;
|
|
13701
14341
|
};
|
|
13702
14342
|
ScheduledRun: {
|
|
13703
|
-
agent:
|
|
14343
|
+
agent: components["schemas"]["AgentRef"] | null;
|
|
13704
14344
|
allow_self_cancel: boolean;
|
|
13705
14345
|
/** Format: date-time */
|
|
13706
14346
|
created_at: string;
|
|
@@ -13721,7 +14361,7 @@ export interface components {
|
|
|
13721
14361
|
next_fire_at: string | null;
|
|
13722
14362
|
/** Format: int32 */
|
|
13723
14363
|
run_count: number;
|
|
13724
|
-
task_template:
|
|
14364
|
+
task_template: components["schemas"]["TaskTemplateRef"] | null;
|
|
13725
14365
|
timezone: string;
|
|
13726
14366
|
/** Format: date-time */
|
|
13727
14367
|
until: string | null;
|
|
@@ -13734,7 +14374,7 @@ export interface components {
|
|
|
13734
14374
|
* template, the rendered prompt each firing launches, and the tasks it spawned.
|
|
13735
14375
|
*/
|
|
13736
14376
|
ScheduledRunDetail: {
|
|
13737
|
-
agent:
|
|
14377
|
+
agent: components["schemas"]["AgentRef"] | null;
|
|
13738
14378
|
allow_self_cancel: boolean;
|
|
13739
14379
|
bound_params: Record<string, unknown>;
|
|
13740
14380
|
/** Format: date-time */
|
|
@@ -13758,7 +14398,7 @@ export interface components {
|
|
|
13758
14398
|
rendered_prompt: string | null;
|
|
13759
14399
|
/** Format: int32 */
|
|
13760
14400
|
run_count: number;
|
|
13761
|
-
task_template:
|
|
14401
|
+
task_template: components["schemas"]["TaskTemplateRef"] | null;
|
|
13762
14402
|
/** @description Background tasks this run has spawned, newest first. */
|
|
13763
14403
|
tasks: components["schemas"]["RunTask"][];
|
|
13764
14404
|
timezone: string;
|
|
@@ -13851,24 +14491,19 @@ export interface components {
|
|
|
13851
14491
|
slug: string;
|
|
13852
14492
|
};
|
|
13853
14493
|
/**
|
|
13854
|
-
* @description
|
|
13855
|
-
*
|
|
13856
|
-
*
|
|
13857
|
-
*
|
|
13858
|
-
* `pricing[id] * scale` on display and divides the edited value back
|
|
13859
|
-
* down before persisting. Returned in `Vec` form so providers can
|
|
13860
|
-
* declare a stable display order independent of `HashMap` hashing.
|
|
13861
|
-
* Which side of a call a SKU charges for. Lets the dashboard split a recorded
|
|
13862
|
-
* `token_usage` map into input (↑) and output (↓) totals without hardcoding
|
|
13863
|
-
* SKU ids. SKUs partition the tokens — `input` and `cached_input` are disjoint
|
|
13864
|
-
* slices of the prompt — so summing all `Input` SKUs gives the true input
|
|
13865
|
-
* count with no double-counting.
|
|
14494
|
+
* @description What kind of token a SKU counts, as the plugin serving its type declares
|
|
14495
|
+
* it. SKUs partition a call's tokens — `input` and `cached_input` are disjoint
|
|
14496
|
+
* slices of the prompt — so a class's total is the sum of its SKUs, with no
|
|
14497
|
+
* double counting.
|
|
13866
14498
|
* @enum {string}
|
|
13867
14499
|
*/
|
|
13868
|
-
|
|
14500
|
+
SkuClass: "input" | "cached_input" | "cache_write" | "output" | "reasoning" | "other";
|
|
13869
14501
|
SkuDisplayDto: {
|
|
13870
|
-
/**
|
|
13871
|
-
|
|
14502
|
+
/**
|
|
14503
|
+
* @description What kind of token this SKU counts, or `other` for a charge that is not
|
|
14504
|
+
* a token.
|
|
14505
|
+
*/
|
|
14506
|
+
class: components["schemas"]["SkuClass"];
|
|
13872
14507
|
id: string;
|
|
13873
14508
|
/**
|
|
13874
14509
|
* @description Human-readable label including the implicit unit
|
|
@@ -13920,11 +14555,11 @@ export interface components {
|
|
|
13920
14555
|
SubmitResultInput: {
|
|
13921
14556
|
/** @description Required when someone holds the lease; must match the holder. */
|
|
13922
14557
|
claimant?: string | null;
|
|
13923
|
-
content?:
|
|
14558
|
+
content?: components["schemas"]["Value"] | null;
|
|
13924
14559
|
/** @description Shorthand for a failure: the model reads it as a failed tool. */
|
|
13925
14560
|
error?: string | null;
|
|
13926
14561
|
is_error?: boolean;
|
|
13927
|
-
result?:
|
|
14562
|
+
result?: components["schemas"]["Value"] | null;
|
|
13928
14563
|
};
|
|
13929
14564
|
TaskTemplate: {
|
|
13930
14565
|
agent_slug: string;
|
|
@@ -14059,6 +14694,40 @@ export interface components {
|
|
|
14059
14694
|
permissions: string[];
|
|
14060
14695
|
slug: string;
|
|
14061
14696
|
};
|
|
14697
|
+
/**
|
|
14698
|
+
* @description A call's tokens by class: its `token_usage`, summed per [`SkuClass`] by the
|
|
14699
|
+
* core when the call returns — the one moment the plugin that declared the
|
|
14700
|
+
* classes is certainly running, so a record never depends on that plugin
|
|
14701
|
+
* being up when someone reads it. The fields are disjoint: the prompt is
|
|
14702
|
+
* `input + cached_input + cache_write`, the completion `output + reasoning`.
|
|
14703
|
+
*/
|
|
14704
|
+
TokenCounts: {
|
|
14705
|
+
/**
|
|
14706
|
+
* Format: int64
|
|
14707
|
+
* @default 0
|
|
14708
|
+
*/
|
|
14709
|
+
cache_write: number;
|
|
14710
|
+
/**
|
|
14711
|
+
* Format: int64
|
|
14712
|
+
* @default 0
|
|
14713
|
+
*/
|
|
14714
|
+
cached_input: number;
|
|
14715
|
+
/**
|
|
14716
|
+
* Format: int64
|
|
14717
|
+
* @default 0
|
|
14718
|
+
*/
|
|
14719
|
+
input: number;
|
|
14720
|
+
/**
|
|
14721
|
+
* Format: int64
|
|
14722
|
+
* @default 0
|
|
14723
|
+
*/
|
|
14724
|
+
output: number;
|
|
14725
|
+
/**
|
|
14726
|
+
* Format: int64
|
|
14727
|
+
* @default 0
|
|
14728
|
+
*/
|
|
14729
|
+
reasoning: number;
|
|
14730
|
+
};
|
|
14062
14731
|
/** @enum {string} */
|
|
14063
14732
|
ToolChoice: "auto" | "required" | "none";
|
|
14064
14733
|
/**
|
|
@@ -14423,7 +15092,7 @@ export interface components {
|
|
|
14423
15092
|
/** @description When present, replaces the full set of declared parameters. */
|
|
14424
15093
|
parameters?: components["schemas"]["TaskTemplateParam"][] | null;
|
|
14425
15094
|
prompt_template?: string | null;
|
|
14426
|
-
schedule_shape?:
|
|
15095
|
+
schedule_shape?: components["schemas"]["ScheduleShape"] | null;
|
|
14427
15096
|
slug?: string | null;
|
|
14428
15097
|
tool_choose_cron?: boolean | null;
|
|
14429
15098
|
/**
|
|
@@ -14442,7 +15111,7 @@ export interface components {
|
|
|
14442
15111
|
tool_min_delay_seconds?: number | null;
|
|
14443
15112
|
/** Format: int64 */
|
|
14444
15113
|
tool_min_gap_seconds?: number | null;
|
|
14445
|
-
trigger_source?:
|
|
15114
|
+
trigger_source?: components["schemas"]["TriggerSource"] | null;
|
|
14446
15115
|
};
|
|
14447
15116
|
UpdateTelegramChannelInput: {
|
|
14448
15117
|
agent_slug?: string | null;
|