@soat/sdk 0.42.0 → 0.44.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/dist/index.cjs +14 -5
- package/dist/index.d.cts +85 -21
- package/dist/index.d.mts +85 -21
- package/dist/index.mjs +14 -5
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -960,7 +960,14 @@ var AiProviders = class {
|
|
|
960
960
|
/**
|
|
961
961
|
* Create an AI provider
|
|
962
962
|
*
|
|
963
|
-
* Creates a new LLM provider configuration
|
|
963
|
+
* Creates a new LLM provider configuration.
|
|
964
|
+
*
|
|
965
|
+
* A `bedrock` or `vertex` record must carry a credential of its own — a
|
|
966
|
+
* linked `secret_id`, or an `apiKey` in `config`. Without one the provider
|
|
967
|
+
* SDK signs with the server's own credentials (the AWS default credential
|
|
968
|
+
* chain, Google Application Default Credentials), which is refused with
|
|
969
|
+
* `400 VALIDATION_FAILED` unless the deployment allows it.
|
|
970
|
+
*
|
|
964
971
|
*/
|
|
965
972
|
static createAiProvider(options) {
|
|
966
973
|
return (options.client ?? client).post({
|
|
@@ -1018,7 +1025,7 @@ var AiProviders = class {
|
|
|
1018
1025
|
* Asks the provider which models it can run, using this provider record's own credentials and configuration, and returns provider-native model ids — the same strings `default_model` and an agent's `model` carry.
|
|
1019
1026
|
* Which models are reachable is a property of the credential, not of the provider type: a Vertex provider sees only the publisher models its Google Cloud project and location serve, and a Bedrock provider only the foundation models enabled in its region. Reading the list is how a caller avoids pinning a model that fails at generation time.
|
|
1020
1027
|
* Not every provider type can answer. `azure` lists deployments an operator named rather than models, and `ollama` lists whatever was pulled onto that host, so both return `400 MODEL_LISTING_UNSUPPORTED`.
|
|
1021
|
-
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret
|
|
1028
|
+
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret — IAM keys or a Bedrock API key, a Google service-account key. A record with no `secret_id` would fall back to the server's own credentials (the AWS default credential chain, Google Application Default Credentials); it can list only on a deployment that allows a record to use them, and returns `400 AI_PROVIDER_MISCONFIGURED` otherwise.
|
|
1022
1029
|
* A Vertex record needs no `config.project` when its secret is a service-account key, since the key file names its own project. A Vertex record in express mode (API key) cannot list at all: the publisher-model listing rejects API keys and needs a credential that asserts a principal, so it returns `400 MODEL_LISTING_UNSUPPORTED`.
|
|
1023
1030
|
* The Vertex answer is the publisher catalogue the record's `config.location` region serves. The project behind the credential is billed and quota'd for the call but does not filter the result, so a listed model may still be unavailable to that project at generation time.
|
|
1024
1031
|
*
|
|
@@ -2969,7 +2976,7 @@ var Orchestrations = class {
|
|
|
2969
2976
|
/**
|
|
2970
2977
|
* List orchestration runs
|
|
2971
2978
|
*
|
|
2972
|
-
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, or by whether the run has a parent at all.
|
|
2979
|
+
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, by status, or by whether the run has a parent at all.
|
|
2973
2980
|
*
|
|
2974
2981
|
* Note when aggregating: a run's `usage` covers its whole subtree, so summing it over a list that contains both a parent and its children counts the children more than once. Pass `nested=false` to sum over runs a caller started.
|
|
2975
2982
|
*/
|
|
@@ -3244,7 +3251,9 @@ var Quotas = class {
|
|
|
3244
3251
|
/**
|
|
3245
3252
|
* Create a quota
|
|
3246
3253
|
*
|
|
3247
|
-
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor
|
|
3254
|
+
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor`; `storage_bytes` is valid for `scope: project` only. Any other scope/metric pair is rejected with 400 (no attribution exists to enforce it). An `actor` quota caps one end user's spend, matched from the generation's session; a null `scope_ref` means one budget *per* actor rather than a pooled project total. A `cost_usd` quota may name one `meter_type` to cap; omitting it caps every priced meter. A duplicate quota (same project, scope, scope_ref, metric, window, meter_type) is rejected with 409.
|
|
3255
|
+
*
|
|
3256
|
+
* `storage_bytes` caps a stored total rather than a windowed one, so it takes `window: current` and every other metric refuses that value (400 either way). It is enforced at the corpus write paths — file upload and create, document create, document ingest and re-ingest, memory-entry create — with `409 QUOTA_STORAGE_EXCEEDED` and no `Retry-After`, since no window reset clears a footprint.
|
|
3248
3257
|
*/
|
|
3249
3258
|
static createQuota(options) {
|
|
3250
3259
|
return (options.client ?? client).post({
|
|
@@ -3551,7 +3560,7 @@ var Tasks = class {
|
|
|
3551
3560
|
/**
|
|
3552
3561
|
* List tasks
|
|
3553
3562
|
*
|
|
3554
|
-
* Lists tasks (the board query). Filter by workflow, state, status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
3563
|
+
* Lists tasks (the board query). Filter by workflow, state, status, automation status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
3555
3564
|
*/
|
|
3556
3565
|
static listTasks(options) {
|
|
3557
3566
|
return (options?.client ?? client).get({
|
package/dist/index.d.cts
CHANGED
|
@@ -3099,7 +3099,7 @@ type WorkflowResourceProperties = {
|
|
|
3099
3099
|
} | null;
|
|
3100
3100
|
};
|
|
3101
3101
|
/**
|
|
3102
|
-
* Creates a quota — a project-scoped cap that blocks (`enforce`) or reports (`monitor`) when a windowed aggregate is exceeded. `requests` quotas are enforced by the request middleware; `tokens`/`cost_usd` quotas at the pre-generation check. Mirrors the quotas REST contract; `scope`, `metric`, and `
|
|
3102
|
+
* Creates a quota — a project-scoped cap that blocks (`enforce`) or reports (`monitor`) when a windowed aggregate is exceeded. `requests` quotas are enforced by the request middleware; `tokens`/`cost_usd` quotas at the pre-generation check. Mirrors the quotas REST contract; `scope`, `metric`, `window`, and `meter_type` are immutable after creation (only `limit`, `mode`, and `on_unpriced` update).
|
|
3103
3103
|
*/
|
|
3104
3104
|
type QuotaResourceProperties = {
|
|
3105
3105
|
/**
|
|
@@ -3113,13 +3113,13 @@ type QuotaResourceProperties = {
|
|
|
3113
3113
|
/**
|
|
3114
3114
|
* The metric being capped
|
|
3115
3115
|
*/
|
|
3116
|
-
metric: 'requests' | 'tokens' | 'cost_usd';
|
|
3116
|
+
metric: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
3117
3117
|
/**
|
|
3118
|
-
* The window over which the metric is aggregated
|
|
3118
|
+
* The window over which the metric is aggregated. storage_bytes caps a stored total rather than a windowed one, so it takes current and refuses every other value; current is refused for every other metric.
|
|
3119
3119
|
*/
|
|
3120
|
-
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month';
|
|
3120
|
+
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
3121
3121
|
/**
|
|
3122
|
-
* The cap. Positive integer for requests/tokens; fractional allowed for cost_usd.
|
|
3122
|
+
* The cap. Positive integer for requests/tokens/storage_bytes (bytes); fractional allowed for cost_usd.
|
|
3123
3123
|
*/
|
|
3124
3124
|
limit: number;
|
|
3125
3125
|
/**
|
|
@@ -3130,6 +3130,10 @@ type QuotaResourceProperties = {
|
|
|
3130
3130
|
* Only for metric cost_usd. What an enforce quota does over a pricing blackout — block (the default) refuses generations with 409 QUOTA_UNENFORCEABLE, allow accepts the unmeasurable spend. See the quotas REST contract.
|
|
3131
3131
|
*/
|
|
3132
3132
|
on_unpriced?: 'block' | 'allow';
|
|
3133
|
+
/**
|
|
3134
|
+
* Only for metric cost_usd. The meter this cap answers for; omit it and the cap sums every priced meter. See the quotas REST contract.
|
|
3135
|
+
*/
|
|
3136
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage';
|
|
3133
3137
|
};
|
|
3134
3138
|
/**
|
|
3135
3139
|
* Creates a guardrail — an action-class document (`class`/`guard`) that gates tool-call autonomy. Attach it to a tool or agent via that resource's `guardrail_ids` (a `{ "ref": … }` to this resource in the same template resolves to its physical id at deploy time). Mirrors the guardrails REST contract; `class`/`default_class`/`guard`/`escalate` are flattened here from the REST API's single `document` object.
|
|
@@ -5041,16 +5045,23 @@ type Quota = {
|
|
|
5041
5045
|
* Public id of the api key / agent / actor the quota applies to. For `api_key` and `agent` scope, NULL means all entities of that scope type in the project. For `actor` scope, NULL means one budget *per* actor rather than a pooled total across all actors.
|
|
5042
5046
|
*/
|
|
5043
5047
|
scope_ref?: string | null;
|
|
5044
|
-
metric?: 'requests' | 'tokens' | 'cost_usd';
|
|
5045
|
-
|
|
5048
|
+
metric?: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
5049
|
+
/**
|
|
5050
|
+
* The window the metric is aggregated over; `current` on storage_bytes, which caps a stored total and never resets.
|
|
5051
|
+
*/
|
|
5052
|
+
window?: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
5046
5053
|
limit?: number;
|
|
5047
5054
|
mode?: 'enforce' | 'monitor';
|
|
5055
|
+
/**
|
|
5056
|
+
* The meter a cost_usd cap answers for. Null is every priced meter, which is what a quota created without one carries.
|
|
5057
|
+
*/
|
|
5058
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage' | null;
|
|
5048
5059
|
/**
|
|
5049
5060
|
* Pricing posture of a cost_usd quota over an unpriced blackout — block refuses generations, allow lets them through (the quota_unpriced exception is filed either way, and for a partly priced window, which no posture refuses). Null for metrics with no pricing dependency.
|
|
5050
5061
|
*/
|
|
5051
5062
|
on_unpriced?: 'block' | 'allow' | null;
|
|
5052
5063
|
/**
|
|
5053
|
-
* Current fixed-window usage for the requests metric. Null for token/cost quotas (which aggregate the usage meter at check time rather than keeping a counter) and in list responses.
|
|
5064
|
+
* Current fixed-window usage for the requests metric. Null for token/cost quotas (which aggregate the usage meter at check time rather than keeping a counter), null for storage_bytes (a stored total has no window and no counter — read the footprint from the storage meter), and null in list responses.
|
|
5054
5065
|
*/
|
|
5055
5066
|
current_usage?: {
|
|
5056
5067
|
window_key?: string;
|
|
@@ -7635,7 +7646,7 @@ type CreateAiProviderData = {
|
|
|
7635
7646
|
*/
|
|
7636
7647
|
default_model: string;
|
|
7637
7648
|
/**
|
|
7638
|
-
* Secret ID containing API credentials
|
|
7649
|
+
* Secret ID containing API credentials. Required for `bedrock` and `vertex` unless `config.apiKey` carries one.
|
|
7639
7650
|
*/
|
|
7640
7651
|
secret_id?: string;
|
|
7641
7652
|
/**
|
|
@@ -9395,6 +9406,10 @@ type CreateDocumentErrors = {
|
|
|
9395
9406
|
* Forbidden
|
|
9396
9407
|
*/
|
|
9397
9408
|
403: ErrorResponse;
|
|
9409
|
+
/**
|
|
9410
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
9411
|
+
*/
|
|
9412
|
+
409: ErrorResponse;
|
|
9398
9413
|
};
|
|
9399
9414
|
type CreateDocumentError = CreateDocumentErrors[keyof CreateDocumentErrors];
|
|
9400
9415
|
type CreateDocumentResponses = {
|
|
@@ -9460,7 +9475,7 @@ type IngestDocumentErrors = {
|
|
|
9460
9475
|
*/
|
|
9461
9476
|
403: ErrorResponse;
|
|
9462
9477
|
/**
|
|
9463
|
-
* The file already backs a Document (a file can only be ingested once
|
|
9478
|
+
* The file already backs a Document (a file can only be ingested once — use `POST /documents/{document_id}/ingest` to re-process the existing document, or upload a new copy of the file to ingest it separately), or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total).
|
|
9464
9479
|
*/
|
|
9465
9480
|
409: ErrorResponse;
|
|
9466
9481
|
/**
|
|
@@ -9679,6 +9694,10 @@ type ReingestDocumentErrors = {
|
|
|
9679
9694
|
* Document not found
|
|
9680
9695
|
*/
|
|
9681
9696
|
404: ErrorResponse;
|
|
9697
|
+
/**
|
|
9698
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
9699
|
+
*/
|
|
9700
|
+
409: ErrorResponse;
|
|
9682
9701
|
/**
|
|
9683
9702
|
* The file is too large to re-ingest synchronously (`?wait=true`). Retry in background mode.
|
|
9684
9703
|
*/
|
|
@@ -10188,6 +10207,10 @@ type CreateDatasetItemErrors = {
|
|
|
10188
10207
|
* Dataset not found
|
|
10189
10208
|
*/
|
|
10190
10209
|
404: unknown;
|
|
10210
|
+
/**
|
|
10211
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). A fixture is a corpus write like a document, so it is bounded by the same cap; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total.
|
|
10212
|
+
*/
|
|
10213
|
+
409: unknown;
|
|
10191
10214
|
};
|
|
10192
10215
|
type CreateDatasetItemResponses = {
|
|
10193
10216
|
/**
|
|
@@ -10240,7 +10263,7 @@ type CreateDatasetItemFromGenerationErrors = {
|
|
|
10240
10263
|
*/
|
|
10241
10264
|
404: unknown;
|
|
10242
10265
|
/**
|
|
10243
|
-
* The generation has not completed,
|
|
10266
|
+
* The generation has not completed, its content was never stored or has been purged, or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total)
|
|
10244
10267
|
*/
|
|
10245
10268
|
409: unknown;
|
|
10246
10269
|
};
|
|
@@ -11028,6 +11051,10 @@ type CreateFileData = {
|
|
|
11028
11051
|
url: '/api/v1/files';
|
|
11029
11052
|
};
|
|
11030
11053
|
type CreateFileErrors = {
|
|
11054
|
+
/**
|
|
11055
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11056
|
+
*/
|
|
11057
|
+
409: ErrorResponse;
|
|
11031
11058
|
/**
|
|
11032
11059
|
* Internal server error
|
|
11033
11060
|
*/
|
|
@@ -11081,6 +11108,10 @@ type UploadFileErrors = {
|
|
|
11081
11108
|
* Insufficient permissions
|
|
11082
11109
|
*/
|
|
11083
11110
|
403: ErrorResponse;
|
|
11111
|
+
/**
|
|
11112
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11113
|
+
*/
|
|
11114
|
+
409: ErrorResponse;
|
|
11084
11115
|
};
|
|
11085
11116
|
type UploadFileError = UploadFileErrors[keyof UploadFileErrors];
|
|
11086
11117
|
type UploadFileResponses = {
|
|
@@ -11109,6 +11140,10 @@ type UploadFileBase64Errors = {
|
|
|
11109
11140
|
* Insufficient permissions
|
|
11110
11141
|
*/
|
|
11111
11142
|
403: ErrorResponse;
|
|
11143
|
+
/**
|
|
11144
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11145
|
+
*/
|
|
11146
|
+
409: ErrorResponse;
|
|
11112
11147
|
};
|
|
11113
11148
|
type UploadFileBase64Error = UploadFileBase64Errors[keyof UploadFileBase64Errors];
|
|
11114
11149
|
type UploadFileBase64Responses = {
|
|
@@ -11167,7 +11202,7 @@ type UploadFileWithTokenErrors = {
|
|
|
11167
11202
|
*/
|
|
11168
11203
|
404: ErrorResponse;
|
|
11169
11204
|
/**
|
|
11170
|
-
* Upload token already used
|
|
11205
|
+
* Upload token already used, or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`)
|
|
11171
11206
|
*/
|
|
11172
11207
|
409: ErrorResponse;
|
|
11173
11208
|
/**
|
|
@@ -12966,6 +13001,10 @@ type CreateMemoryEntryErrors = {
|
|
|
12966
13001
|
* Memory not found
|
|
12967
13002
|
*/
|
|
12968
13003
|
404: unknown;
|
|
13004
|
+
/**
|
|
13005
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
13006
|
+
*/
|
|
13007
|
+
409: unknown;
|
|
12969
13008
|
/**
|
|
12970
13009
|
* Internal server error
|
|
12971
13010
|
*/
|
|
@@ -13675,6 +13714,12 @@ type ListOrchestrationRunsData = {
|
|
|
13675
13714
|
* Contradicting `parent_orchestration_run_id` with `nested=false` is a `400`; any value other than `true` or `false` is a `400`.
|
|
13676
13715
|
*/
|
|
13677
13716
|
nested?: boolean;
|
|
13717
|
+
/**
|
|
13718
|
+
* Filter by run status. Repeat the parameter to OR values — `status=queued&status=running&status=sleeping&status=awaiting_input` is the set still driving, which is how a caller finds live work without paging every run the project ever started.
|
|
13719
|
+
*
|
|
13720
|
+
* There is no `non_terminal` shorthand on purpose: which statuses count as live is the caller's policy. A value outside the enum, empty string included, is a `400`.
|
|
13721
|
+
*/
|
|
13722
|
+
status?: Array<'queued' | 'running' | 'sleeping' | 'awaiting_input' | 'succeeded' | 'failed' | 'cancelled' | 'expired'>;
|
|
13678
13723
|
/**
|
|
13679
13724
|
* Maximum number of results to return
|
|
13680
13725
|
*/
|
|
@@ -14442,13 +14487,13 @@ type CreateQuotaData = {
|
|
|
14442
14487
|
/**
|
|
14443
14488
|
* The metric being capped
|
|
14444
14489
|
*/
|
|
14445
|
-
metric: 'requests' | 'tokens' | 'cost_usd';
|
|
14490
|
+
metric: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
14446
14491
|
/**
|
|
14447
|
-
* The window over which the metric is aggregated
|
|
14492
|
+
* The window over which the metric is aggregated. `current` is the only accepted value for storage_bytes (a stored total is not aggregated over time) and is refused for every other metric.
|
|
14448
14493
|
*/
|
|
14449
|
-
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month';
|
|
14494
|
+
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
14450
14495
|
/**
|
|
14451
|
-
* The cap. Must be a positive integer for requests/tokens; fractional values are allowed for cost_usd.
|
|
14496
|
+
* The cap. Must be a positive integer for requests/tokens/storage_bytes (bytes); fractional values are allowed for cost_usd.
|
|
14452
14497
|
*/
|
|
14453
14498
|
limit: number;
|
|
14454
14499
|
/**
|
|
@@ -14459,6 +14504,10 @@ type CreateQuotaData = {
|
|
|
14459
14504
|
* Only for metric cost_usd (400 on any other metric). What an enforce quota does when the current window is a pricing blackout — several metered llm_tokens events, none of them priced, so the aggregate is 0 however much was actually spent. Platform meters such as compute_execution are read for the aggregate but never for this verdict. block (the default) refuses new generations with 409 QUOTA_UNENFORCEABLE until pricing is configured; allow accepts the unmeasurable spend explicitly. Either way a quota_unpriced exception is filed. monitor-mode quotas never block regardless. A partly priced window is not a blackout: no posture refuses it, it is enforced on its priced total, and it files the same exception.
|
|
14460
14505
|
*/
|
|
14461
14506
|
on_unpriced?: 'block' | 'allow';
|
|
14507
|
+
/**
|
|
14508
|
+
* Only for metric cost_usd (400 on any other metric). The meter this cap answers for. Omit it and the cap sums every priced meter, which is the existing behaviour; name one and only that meter's cost counts, so an AI spend cap is not consumed by platform meters the operator prices (and vice versa). Part of the quota's identity, so two meter scopes can share a scope/metric/window and neither conflicts with an unscoped cap. Immutable after creation — replace the quota to change it.
|
|
14509
|
+
*/
|
|
14510
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage';
|
|
14462
14511
|
};
|
|
14463
14512
|
path?: never;
|
|
14464
14513
|
query?: never;
|
|
@@ -15334,6 +15383,12 @@ type ListTasksData = {
|
|
|
15334
15383
|
workflow_id?: string;
|
|
15335
15384
|
state?: string;
|
|
15336
15385
|
status?: 'open' | 'closed';
|
|
15386
|
+
/**
|
|
15387
|
+
* Filter by the current state's dispatch status. Repeat the parameter to OR values. `none` selects the tasks whose `automation_status` is `null` — the ones that never entered a state with an automation. It is a value a task really holds, so it is a value of the filter too; the parameter's own absence already means "every task".
|
|
15388
|
+
*
|
|
15389
|
+
* A value outside the enum, empty string included, is a `400`.
|
|
15390
|
+
*/
|
|
15391
|
+
automation_status?: Array<'running' | 'completed' | 'failed' | 'unrouted' | 'paused' | 'none'>;
|
|
15337
15392
|
assignee?: string;
|
|
15338
15393
|
/**
|
|
15339
15394
|
* Maximum number of results to return
|
|
@@ -17635,7 +17690,14 @@ declare class AiProviders {
|
|
|
17635
17690
|
/**
|
|
17636
17691
|
* Create an AI provider
|
|
17637
17692
|
*
|
|
17638
|
-
* Creates a new LLM provider configuration
|
|
17693
|
+
* Creates a new LLM provider configuration.
|
|
17694
|
+
*
|
|
17695
|
+
* A `bedrock` or `vertex` record must carry a credential of its own — a
|
|
17696
|
+
* linked `secret_id`, or an `apiKey` in `config`. Without one the provider
|
|
17697
|
+
* SDK signs with the server's own credentials (the AWS default credential
|
|
17698
|
+
* chain, Google Application Default Credentials), which is refused with
|
|
17699
|
+
* `400 VALIDATION_FAILED` unless the deployment allows it.
|
|
17700
|
+
*
|
|
17639
17701
|
*/
|
|
17640
17702
|
static createAiProvider<ThrowOnError extends boolean = false>(options: Options<CreateAiProviderData, ThrowOnError>): RequestResult<CreateAiProviderResponses, CreateAiProviderErrors, ThrowOnError>;
|
|
17641
17703
|
/**
|
|
@@ -17665,7 +17727,7 @@ declare class AiProviders {
|
|
|
17665
17727
|
* Asks the provider which models it can run, using this provider record's own credentials and configuration, and returns provider-native model ids — the same strings `default_model` and an agent's `model` carry.
|
|
17666
17728
|
* Which models are reachable is a property of the credential, not of the provider type: a Vertex provider sees only the publisher models its Google Cloud project and location serve, and a Bedrock provider only the foundation models enabled in its region. Reading the list is how a caller avoids pinning a model that fails at generation time.
|
|
17667
17729
|
* Not every provider type can answer. `azure` lists deployments an operator named rather than models, and `ollama` lists whatever was pulled onto that host, so both return `400 MODEL_LISTING_UNSUPPORTED`.
|
|
17668
|
-
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret
|
|
17730
|
+
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret — IAM keys or a Bedrock API key, a Google service-account key. A record with no `secret_id` would fall back to the server's own credentials (the AWS default credential chain, Google Application Default Credentials); it can list only on a deployment that allows a record to use them, and returns `400 AI_PROVIDER_MISCONFIGURED` otherwise.
|
|
17669
17731
|
* A Vertex record needs no `config.project` when its secret is a service-account key, since the key file names its own project. A Vertex record in express mode (API key) cannot list at all: the publisher-model listing rejects API keys and needs a credential that asserts a principal, so it returns `400 MODEL_LISTING_UNSUPPORTED`.
|
|
17670
17732
|
* The Vertex answer is the publisher catalogue the record's `config.location` region serves. The project behind the credential is billed and quota'd for the call but does not filter the result, so a listed model may still be unavailable to that project at generation time.
|
|
17671
17733
|
*
|
|
@@ -18672,7 +18734,7 @@ declare class Orchestrations {
|
|
|
18672
18734
|
/**
|
|
18673
18735
|
* List orchestration runs
|
|
18674
18736
|
*
|
|
18675
|
-
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, or by whether the run has a parent at all.
|
|
18737
|
+
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, by status, or by whether the run has a parent at all.
|
|
18676
18738
|
*
|
|
18677
18739
|
* Note when aggregating: a run's `usage` covers its whole subtree, so summing it over a list that contains both a parent and its children counts the children more than once. Pass `nested=false` to sum over runs a caller started.
|
|
18678
18740
|
*/
|
|
@@ -18811,7 +18873,9 @@ declare class Quotas {
|
|
|
18811
18873
|
/**
|
|
18812
18874
|
* Create a quota
|
|
18813
18875
|
*
|
|
18814
|
-
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor
|
|
18876
|
+
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor`; `storage_bytes` is valid for `scope: project` only. Any other scope/metric pair is rejected with 400 (no attribution exists to enforce it). An `actor` quota caps one end user's spend, matched from the generation's session; a null `scope_ref` means one budget *per* actor rather than a pooled project total. A `cost_usd` quota may name one `meter_type` to cap; omitting it caps every priced meter. A duplicate quota (same project, scope, scope_ref, metric, window, meter_type) is rejected with 409.
|
|
18877
|
+
*
|
|
18878
|
+
* `storage_bytes` caps a stored total rather than a windowed one, so it takes `window: current` and every other metric refuses that value (400 either way). It is enforced at the corpus write paths — file upload and create, document create, document ingest and re-ingest, memory-entry create — with `409 QUOTA_STORAGE_EXCEEDED` and no `Retry-After`, since no window reset clears a footprint.
|
|
18815
18879
|
*/
|
|
18816
18880
|
static createQuota<ThrowOnError extends boolean = false>(options: Options<CreateQuotaData, ThrowOnError>): RequestResult<CreateQuotaResponses, CreateQuotaErrors, ThrowOnError>;
|
|
18817
18881
|
/**
|
|
@@ -18960,7 +19024,7 @@ declare class Tasks {
|
|
|
18960
19024
|
/**
|
|
18961
19025
|
* List tasks
|
|
18962
19026
|
*
|
|
18963
|
-
* Lists tasks (the board query). Filter by workflow, state, status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
19027
|
+
* Lists tasks (the board query). Filter by workflow, state, status, automation status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
18964
19028
|
*/
|
|
18965
19029
|
static listTasks<ThrowOnError extends boolean = false>(options?: Options<ListTasksData, ThrowOnError>): RequestResult<ListTasksResponses, ListTasksErrors, ThrowOnError>;
|
|
18966
19030
|
/**
|
package/dist/index.d.mts
CHANGED
|
@@ -3099,7 +3099,7 @@ type WorkflowResourceProperties = {
|
|
|
3099
3099
|
} | null;
|
|
3100
3100
|
};
|
|
3101
3101
|
/**
|
|
3102
|
-
* Creates a quota — a project-scoped cap that blocks (`enforce`) or reports (`monitor`) when a windowed aggregate is exceeded. `requests` quotas are enforced by the request middleware; `tokens`/`cost_usd` quotas at the pre-generation check. Mirrors the quotas REST contract; `scope`, `metric`, and `
|
|
3102
|
+
* Creates a quota — a project-scoped cap that blocks (`enforce`) or reports (`monitor`) when a windowed aggregate is exceeded. `requests` quotas are enforced by the request middleware; `tokens`/`cost_usd` quotas at the pre-generation check. Mirrors the quotas REST contract; `scope`, `metric`, `window`, and `meter_type` are immutable after creation (only `limit`, `mode`, and `on_unpriced` update).
|
|
3103
3103
|
*/
|
|
3104
3104
|
type QuotaResourceProperties = {
|
|
3105
3105
|
/**
|
|
@@ -3113,13 +3113,13 @@ type QuotaResourceProperties = {
|
|
|
3113
3113
|
/**
|
|
3114
3114
|
* The metric being capped
|
|
3115
3115
|
*/
|
|
3116
|
-
metric: 'requests' | 'tokens' | 'cost_usd';
|
|
3116
|
+
metric: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
3117
3117
|
/**
|
|
3118
|
-
* The window over which the metric is aggregated
|
|
3118
|
+
* The window over which the metric is aggregated. storage_bytes caps a stored total rather than a windowed one, so it takes current and refuses every other value; current is refused for every other metric.
|
|
3119
3119
|
*/
|
|
3120
|
-
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month';
|
|
3120
|
+
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
3121
3121
|
/**
|
|
3122
|
-
* The cap. Positive integer for requests/tokens; fractional allowed for cost_usd.
|
|
3122
|
+
* The cap. Positive integer for requests/tokens/storage_bytes (bytes); fractional allowed for cost_usd.
|
|
3123
3123
|
*/
|
|
3124
3124
|
limit: number;
|
|
3125
3125
|
/**
|
|
@@ -3130,6 +3130,10 @@ type QuotaResourceProperties = {
|
|
|
3130
3130
|
* Only for metric cost_usd. What an enforce quota does over a pricing blackout — block (the default) refuses generations with 409 QUOTA_UNENFORCEABLE, allow accepts the unmeasurable spend. See the quotas REST contract.
|
|
3131
3131
|
*/
|
|
3132
3132
|
on_unpriced?: 'block' | 'allow';
|
|
3133
|
+
/**
|
|
3134
|
+
* Only for metric cost_usd. The meter this cap answers for; omit it and the cap sums every priced meter. See the quotas REST contract.
|
|
3135
|
+
*/
|
|
3136
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage';
|
|
3133
3137
|
};
|
|
3134
3138
|
/**
|
|
3135
3139
|
* Creates a guardrail — an action-class document (`class`/`guard`) that gates tool-call autonomy. Attach it to a tool or agent via that resource's `guardrail_ids` (a `{ "ref": … }` to this resource in the same template resolves to its physical id at deploy time). Mirrors the guardrails REST contract; `class`/`default_class`/`guard`/`escalate` are flattened here from the REST API's single `document` object.
|
|
@@ -5041,16 +5045,23 @@ type Quota = {
|
|
|
5041
5045
|
* Public id of the api key / agent / actor the quota applies to. For `api_key` and `agent` scope, NULL means all entities of that scope type in the project. For `actor` scope, NULL means one budget *per* actor rather than a pooled total across all actors.
|
|
5042
5046
|
*/
|
|
5043
5047
|
scope_ref?: string | null;
|
|
5044
|
-
metric?: 'requests' | 'tokens' | 'cost_usd';
|
|
5045
|
-
|
|
5048
|
+
metric?: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
5049
|
+
/**
|
|
5050
|
+
* The window the metric is aggregated over; `current` on storage_bytes, which caps a stored total and never resets.
|
|
5051
|
+
*/
|
|
5052
|
+
window?: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
5046
5053
|
limit?: number;
|
|
5047
5054
|
mode?: 'enforce' | 'monitor';
|
|
5055
|
+
/**
|
|
5056
|
+
* The meter a cost_usd cap answers for. Null is every priced meter, which is what a quota created without one carries.
|
|
5057
|
+
*/
|
|
5058
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage' | null;
|
|
5048
5059
|
/**
|
|
5049
5060
|
* Pricing posture of a cost_usd quota over an unpriced blackout — block refuses generations, allow lets them through (the quota_unpriced exception is filed either way, and for a partly priced window, which no posture refuses). Null for metrics with no pricing dependency.
|
|
5050
5061
|
*/
|
|
5051
5062
|
on_unpriced?: 'block' | 'allow' | null;
|
|
5052
5063
|
/**
|
|
5053
|
-
* Current fixed-window usage for the requests metric. Null for token/cost quotas (which aggregate the usage meter at check time rather than keeping a counter) and in list responses.
|
|
5064
|
+
* Current fixed-window usage for the requests metric. Null for token/cost quotas (which aggregate the usage meter at check time rather than keeping a counter), null for storage_bytes (a stored total has no window and no counter — read the footprint from the storage meter), and null in list responses.
|
|
5054
5065
|
*/
|
|
5055
5066
|
current_usage?: {
|
|
5056
5067
|
window_key?: string;
|
|
@@ -7635,7 +7646,7 @@ type CreateAiProviderData = {
|
|
|
7635
7646
|
*/
|
|
7636
7647
|
default_model: string;
|
|
7637
7648
|
/**
|
|
7638
|
-
* Secret ID containing API credentials
|
|
7649
|
+
* Secret ID containing API credentials. Required for `bedrock` and `vertex` unless `config.apiKey` carries one.
|
|
7639
7650
|
*/
|
|
7640
7651
|
secret_id?: string;
|
|
7641
7652
|
/**
|
|
@@ -9395,6 +9406,10 @@ type CreateDocumentErrors = {
|
|
|
9395
9406
|
* Forbidden
|
|
9396
9407
|
*/
|
|
9397
9408
|
403: ErrorResponse;
|
|
9409
|
+
/**
|
|
9410
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
9411
|
+
*/
|
|
9412
|
+
409: ErrorResponse;
|
|
9398
9413
|
};
|
|
9399
9414
|
type CreateDocumentError = CreateDocumentErrors[keyof CreateDocumentErrors];
|
|
9400
9415
|
type CreateDocumentResponses = {
|
|
@@ -9460,7 +9475,7 @@ type IngestDocumentErrors = {
|
|
|
9460
9475
|
*/
|
|
9461
9476
|
403: ErrorResponse;
|
|
9462
9477
|
/**
|
|
9463
|
-
* The file already backs a Document (a file can only be ingested once
|
|
9478
|
+
* The file already backs a Document (a file can only be ingested once — use `POST /documents/{document_id}/ingest` to re-process the existing document, or upload a new copy of the file to ingest it separately), or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total).
|
|
9464
9479
|
*/
|
|
9465
9480
|
409: ErrorResponse;
|
|
9466
9481
|
/**
|
|
@@ -9679,6 +9694,10 @@ type ReingestDocumentErrors = {
|
|
|
9679
9694
|
* Document not found
|
|
9680
9695
|
*/
|
|
9681
9696
|
404: ErrorResponse;
|
|
9697
|
+
/**
|
|
9698
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
9699
|
+
*/
|
|
9700
|
+
409: ErrorResponse;
|
|
9682
9701
|
/**
|
|
9683
9702
|
* The file is too large to re-ingest synchronously (`?wait=true`). Retry in background mode.
|
|
9684
9703
|
*/
|
|
@@ -10188,6 +10207,10 @@ type CreateDatasetItemErrors = {
|
|
|
10188
10207
|
* Dataset not found
|
|
10189
10208
|
*/
|
|
10190
10209
|
404: unknown;
|
|
10210
|
+
/**
|
|
10211
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). A fixture is a corpus write like a document, so it is bounded by the same cap; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total.
|
|
10212
|
+
*/
|
|
10213
|
+
409: unknown;
|
|
10191
10214
|
};
|
|
10192
10215
|
type CreateDatasetItemResponses = {
|
|
10193
10216
|
/**
|
|
@@ -10240,7 +10263,7 @@ type CreateDatasetItemFromGenerationErrors = {
|
|
|
10240
10263
|
*/
|
|
10241
10264
|
404: unknown;
|
|
10242
10265
|
/**
|
|
10243
|
-
* The generation has not completed,
|
|
10266
|
+
* The generation has not completed, its content was never stored or has been purged, or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`; delete stored content or raise the quota — no `Retry-After` is sent, since no window reset clears a stored total)
|
|
10244
10267
|
*/
|
|
10245
10268
|
409: unknown;
|
|
10246
10269
|
};
|
|
@@ -11028,6 +11051,10 @@ type CreateFileData = {
|
|
|
11028
11051
|
url: '/api/v1/files';
|
|
11029
11052
|
};
|
|
11030
11053
|
type CreateFileErrors = {
|
|
11054
|
+
/**
|
|
11055
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11056
|
+
*/
|
|
11057
|
+
409: ErrorResponse;
|
|
11031
11058
|
/**
|
|
11032
11059
|
* Internal server error
|
|
11033
11060
|
*/
|
|
@@ -11081,6 +11108,10 @@ type UploadFileErrors = {
|
|
|
11081
11108
|
* Insufficient permissions
|
|
11082
11109
|
*/
|
|
11083
11110
|
403: ErrorResponse;
|
|
11111
|
+
/**
|
|
11112
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11113
|
+
*/
|
|
11114
|
+
409: ErrorResponse;
|
|
11084
11115
|
};
|
|
11085
11116
|
type UploadFileError = UploadFileErrors[keyof UploadFileErrors];
|
|
11086
11117
|
type UploadFileResponses = {
|
|
@@ -11109,6 +11140,10 @@ type UploadFileBase64Errors = {
|
|
|
11109
11140
|
* Insufficient permissions
|
|
11110
11141
|
*/
|
|
11111
11142
|
403: ErrorResponse;
|
|
11143
|
+
/**
|
|
11144
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
11145
|
+
*/
|
|
11146
|
+
409: ErrorResponse;
|
|
11112
11147
|
};
|
|
11113
11148
|
type UploadFileBase64Error = UploadFileBase64Errors[keyof UploadFileBase64Errors];
|
|
11114
11149
|
type UploadFileBase64Responses = {
|
|
@@ -11167,7 +11202,7 @@ type UploadFileWithTokenErrors = {
|
|
|
11167
11202
|
*/
|
|
11168
11203
|
404: ErrorResponse;
|
|
11169
11204
|
/**
|
|
11170
|
-
* Upload token already used
|
|
11205
|
+
* Upload token already used, or the project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`)
|
|
11171
11206
|
*/
|
|
11172
11207
|
409: ErrorResponse;
|
|
11173
11208
|
/**
|
|
@@ -12966,6 +13001,10 @@ type CreateMemoryEntryErrors = {
|
|
|
12966
13001
|
* Memory not found
|
|
12967
13002
|
*/
|
|
12968
13003
|
404: unknown;
|
|
13004
|
+
/**
|
|
13005
|
+
* The project's `storage_bytes` quota is exceeded (`QUOTA_STORAGE_EXCEEDED`). Delete stored content, or raise the quota — no window reset clears a stored total, so no `Retry-After` is sent.
|
|
13006
|
+
*/
|
|
13007
|
+
409: unknown;
|
|
12969
13008
|
/**
|
|
12970
13009
|
* Internal server error
|
|
12971
13010
|
*/
|
|
@@ -13675,6 +13714,12 @@ type ListOrchestrationRunsData = {
|
|
|
13675
13714
|
* Contradicting `parent_orchestration_run_id` with `nested=false` is a `400`; any value other than `true` or `false` is a `400`.
|
|
13676
13715
|
*/
|
|
13677
13716
|
nested?: boolean;
|
|
13717
|
+
/**
|
|
13718
|
+
* Filter by run status. Repeat the parameter to OR values — `status=queued&status=running&status=sleeping&status=awaiting_input` is the set still driving, which is how a caller finds live work without paging every run the project ever started.
|
|
13719
|
+
*
|
|
13720
|
+
* There is no `non_terminal` shorthand on purpose: which statuses count as live is the caller's policy. A value outside the enum, empty string included, is a `400`.
|
|
13721
|
+
*/
|
|
13722
|
+
status?: Array<'queued' | 'running' | 'sleeping' | 'awaiting_input' | 'succeeded' | 'failed' | 'cancelled' | 'expired'>;
|
|
13678
13723
|
/**
|
|
13679
13724
|
* Maximum number of results to return
|
|
13680
13725
|
*/
|
|
@@ -14442,13 +14487,13 @@ type CreateQuotaData = {
|
|
|
14442
14487
|
/**
|
|
14443
14488
|
* The metric being capped
|
|
14444
14489
|
*/
|
|
14445
|
-
metric: 'requests' | 'tokens' | 'cost_usd';
|
|
14490
|
+
metric: 'requests' | 'tokens' | 'cost_usd' | 'storage_bytes';
|
|
14446
14491
|
/**
|
|
14447
|
-
* The window over which the metric is aggregated
|
|
14492
|
+
* The window over which the metric is aggregated. `current` is the only accepted value for storage_bytes (a stored total is not aggregated over time) and is refused for every other metric.
|
|
14448
14493
|
*/
|
|
14449
|
-
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month';
|
|
14494
|
+
window: 'rolling_1m' | 'rolling_1h' | 'rolling_24h' | 'calendar_month' | 'current';
|
|
14450
14495
|
/**
|
|
14451
|
-
* The cap. Must be a positive integer for requests/tokens; fractional values are allowed for cost_usd.
|
|
14496
|
+
* The cap. Must be a positive integer for requests/tokens/storage_bytes (bytes); fractional values are allowed for cost_usd.
|
|
14452
14497
|
*/
|
|
14453
14498
|
limit: number;
|
|
14454
14499
|
/**
|
|
@@ -14459,6 +14504,10 @@ type CreateQuotaData = {
|
|
|
14459
14504
|
* Only for metric cost_usd (400 on any other metric). What an enforce quota does when the current window is a pricing blackout — several metered llm_tokens events, none of them priced, so the aggregate is 0 however much was actually spent. Platform meters such as compute_execution are read for the aggregate but never for this verdict. block (the default) refuses new generations with 409 QUOTA_UNENFORCEABLE until pricing is configured; allow accepts the unmeasurable spend explicitly. Either way a quota_unpriced exception is filed. monitor-mode quotas never block regardless. A partly priced window is not a blackout: no posture refuses it, it is enforced on its priced total, and it files the same exception.
|
|
14460
14505
|
*/
|
|
14461
14506
|
on_unpriced?: 'block' | 'allow';
|
|
14507
|
+
/**
|
|
14508
|
+
* Only for metric cost_usd (400 on any other metric). The meter this cap answers for. Omit it and the cap sums every priced meter, which is the existing behaviour; name one and only that meter's cost counts, so an AI spend cap is not consumed by platform meters the operator prices (and vice versa). Part of the quota's identity, so two meter scopes can share a scope/metric/window and neither conflicts with an unscoped cap. Immutable after creation — replace the quota to change it.
|
|
14509
|
+
*/
|
|
14510
|
+
meter_type?: 'llm_tokens' | 'compute_execution' | 'api_request' | 'storage';
|
|
14462
14511
|
};
|
|
14463
14512
|
path?: never;
|
|
14464
14513
|
query?: never;
|
|
@@ -15334,6 +15383,12 @@ type ListTasksData = {
|
|
|
15334
15383
|
workflow_id?: string;
|
|
15335
15384
|
state?: string;
|
|
15336
15385
|
status?: 'open' | 'closed';
|
|
15386
|
+
/**
|
|
15387
|
+
* Filter by the current state's dispatch status. Repeat the parameter to OR values. `none` selects the tasks whose `automation_status` is `null` — the ones that never entered a state with an automation. It is a value a task really holds, so it is a value of the filter too; the parameter's own absence already means "every task".
|
|
15388
|
+
*
|
|
15389
|
+
* A value outside the enum, empty string included, is a `400`.
|
|
15390
|
+
*/
|
|
15391
|
+
automation_status?: Array<'running' | 'completed' | 'failed' | 'unrouted' | 'paused' | 'none'>;
|
|
15337
15392
|
assignee?: string;
|
|
15338
15393
|
/**
|
|
15339
15394
|
* Maximum number of results to return
|
|
@@ -17635,7 +17690,14 @@ declare class AiProviders {
|
|
|
17635
17690
|
/**
|
|
17636
17691
|
* Create an AI provider
|
|
17637
17692
|
*
|
|
17638
|
-
* Creates a new LLM provider configuration
|
|
17693
|
+
* Creates a new LLM provider configuration.
|
|
17694
|
+
*
|
|
17695
|
+
* A `bedrock` or `vertex` record must carry a credential of its own — a
|
|
17696
|
+
* linked `secret_id`, or an `apiKey` in `config`. Without one the provider
|
|
17697
|
+
* SDK signs with the server's own credentials (the AWS default credential
|
|
17698
|
+
* chain, Google Application Default Credentials), which is refused with
|
|
17699
|
+
* `400 VALIDATION_FAILED` unless the deployment allows it.
|
|
17700
|
+
*
|
|
17639
17701
|
*/
|
|
17640
17702
|
static createAiProvider<ThrowOnError extends boolean = false>(options: Options<CreateAiProviderData, ThrowOnError>): RequestResult<CreateAiProviderResponses, CreateAiProviderErrors, ThrowOnError>;
|
|
17641
17703
|
/**
|
|
@@ -17665,7 +17727,7 @@ declare class AiProviders {
|
|
|
17665
17727
|
* Asks the provider which models it can run, using this provider record's own credentials and configuration, and returns provider-native model ids — the same strings `default_model` and an agent's `model` carry.
|
|
17666
17728
|
* Which models are reachable is a property of the credential, not of the provider type: a Vertex provider sees only the publisher models its Google Cloud project and location serve, and a Bedrock provider only the foundation models enabled in its region. Reading the list is how a caller avoids pinning a model that fails at generation time.
|
|
17667
17729
|
* Not every provider type can answer. `azure` lists deployments an operator named rather than models, and `ollama` lists whatever was pulled onto that host, so both return `400 MODEL_LISTING_UNSUPPORTED`.
|
|
17668
|
-
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret
|
|
17730
|
+
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret — IAM keys or a Bedrock API key, a Google service-account key. A record with no `secret_id` would fall back to the server's own credentials (the AWS default credential chain, Google Application Default Credentials); it can list only on a deployment that allows a record to use them, and returns `400 AI_PROVIDER_MISCONFIGURED` otherwise.
|
|
17669
17731
|
* A Vertex record needs no `config.project` when its secret is a service-account key, since the key file names its own project. A Vertex record in express mode (API key) cannot list at all: the publisher-model listing rejects API keys and needs a credential that asserts a principal, so it returns `400 MODEL_LISTING_UNSUPPORTED`.
|
|
17670
17732
|
* The Vertex answer is the publisher catalogue the record's `config.location` region serves. The project behind the credential is billed and quota'd for the call but does not filter the result, so a listed model may still be unavailable to that project at generation time.
|
|
17671
17733
|
*
|
|
@@ -18672,7 +18734,7 @@ declare class Orchestrations {
|
|
|
18672
18734
|
/**
|
|
18673
18735
|
* List orchestration runs
|
|
18674
18736
|
*
|
|
18675
|
-
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, or by whether the run has a parent at all.
|
|
18737
|
+
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, by status, or by whether the run has a parent at all.
|
|
18676
18738
|
*
|
|
18677
18739
|
* Note when aggregating: a run's `usage` covers its whole subtree, so summing it over a list that contains both a parent and its children counts the children more than once. Pass `nested=false` to sum over runs a caller started.
|
|
18678
18740
|
*/
|
|
@@ -18811,7 +18873,9 @@ declare class Quotas {
|
|
|
18811
18873
|
/**
|
|
18812
18874
|
* Create a quota
|
|
18813
18875
|
*
|
|
18814
|
-
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor
|
|
18876
|
+
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor`; `storage_bytes` is valid for `scope: project` only. Any other scope/metric pair is rejected with 400 (no attribution exists to enforce it). An `actor` quota caps one end user's spend, matched from the generation's session; a null `scope_ref` means one budget *per* actor rather than a pooled project total. A `cost_usd` quota may name one `meter_type` to cap; omitting it caps every priced meter. A duplicate quota (same project, scope, scope_ref, metric, window, meter_type) is rejected with 409.
|
|
18877
|
+
*
|
|
18878
|
+
* `storage_bytes` caps a stored total rather than a windowed one, so it takes `window: current` and every other metric refuses that value (400 either way). It is enforced at the corpus write paths — file upload and create, document create, document ingest and re-ingest, memory-entry create — with `409 QUOTA_STORAGE_EXCEEDED` and no `Retry-After`, since no window reset clears a footprint.
|
|
18815
18879
|
*/
|
|
18816
18880
|
static createQuota<ThrowOnError extends boolean = false>(options: Options<CreateQuotaData, ThrowOnError>): RequestResult<CreateQuotaResponses, CreateQuotaErrors, ThrowOnError>;
|
|
18817
18881
|
/**
|
|
@@ -18960,7 +19024,7 @@ declare class Tasks {
|
|
|
18960
19024
|
/**
|
|
18961
19025
|
* List tasks
|
|
18962
19026
|
*
|
|
18963
|
-
* Lists tasks (the board query). Filter by workflow, state, status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
19027
|
+
* Lists tasks (the board query). Filter by workflow, state, status, automation status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
18964
19028
|
*/
|
|
18965
19029
|
static listTasks<ThrowOnError extends boolean = false>(options?: Options<ListTasksData, ThrowOnError>): RequestResult<ListTasksResponses, ListTasksErrors, ThrowOnError>;
|
|
18966
19030
|
/**
|
package/dist/index.mjs
CHANGED
|
@@ -959,7 +959,14 @@ var AiProviders = class {
|
|
|
959
959
|
/**
|
|
960
960
|
* Create an AI provider
|
|
961
961
|
*
|
|
962
|
-
* Creates a new LLM provider configuration
|
|
962
|
+
* Creates a new LLM provider configuration.
|
|
963
|
+
*
|
|
964
|
+
* A `bedrock` or `vertex` record must carry a credential of its own — a
|
|
965
|
+
* linked `secret_id`, or an `apiKey` in `config`. Without one the provider
|
|
966
|
+
* SDK signs with the server's own credentials (the AWS default credential
|
|
967
|
+
* chain, Google Application Default Credentials), which is refused with
|
|
968
|
+
* `400 VALIDATION_FAILED` unless the deployment allows it.
|
|
969
|
+
*
|
|
963
970
|
*/
|
|
964
971
|
static createAiProvider(options) {
|
|
965
972
|
return (options.client ?? client).post({
|
|
@@ -1017,7 +1024,7 @@ var AiProviders = class {
|
|
|
1017
1024
|
* Asks the provider which models it can run, using this provider record's own credentials and configuration, and returns provider-native model ids — the same strings `default_model` and an agent's `model` carry.
|
|
1018
1025
|
* Which models are reachable is a property of the credential, not of the provider type: a Vertex provider sees only the publisher models its Google Cloud project and location serve, and a Bedrock provider only the foundation models enabled in its region. Reading the list is how a caller avoids pinning a model that fails at generation time.
|
|
1019
1026
|
* Not every provider type can answer. `azure` lists deployments an operator named rather than models, and `ollama` lists whatever was pulled onto that host, so both return `400 MODEL_LISTING_UNSUPPORTED`.
|
|
1020
|
-
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret
|
|
1027
|
+
* Listing resolves credentials the same way generation does, so a record that can generate can list. The API-key types (`openai`, `groq`, `xai`, `gateway`, `custom`, `anthropic`, `google`) use the record's linked secret and cannot list without one. `bedrock` and `vertex` use the linked secret — IAM keys or a Bedrock API key, a Google service-account key. A record with no `secret_id` would fall back to the server's own credentials (the AWS default credential chain, Google Application Default Credentials); it can list only on a deployment that allows a record to use them, and returns `400 AI_PROVIDER_MISCONFIGURED` otherwise.
|
|
1021
1028
|
* A Vertex record needs no `config.project` when its secret is a service-account key, since the key file names its own project. A Vertex record in express mode (API key) cannot list at all: the publisher-model listing rejects API keys and needs a credential that asserts a principal, so it returns `400 MODEL_LISTING_UNSUPPORTED`.
|
|
1022
1029
|
* The Vertex answer is the publisher catalogue the record's `config.location` region serves. The project behind the credential is billed and quota'd for the call but does not filter the result, so a listed model may still be unavailable to that project at generation time.
|
|
1023
1030
|
*
|
|
@@ -2968,7 +2975,7 @@ var Orchestrations = class {
|
|
|
2968
2975
|
/**
|
|
2969
2976
|
* List orchestration runs
|
|
2970
2977
|
*
|
|
2971
|
-
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, or by whether the run has a parent at all.
|
|
2978
|
+
* Returns orchestration runs the caller can access, optionally filtered by orchestration, by parent run, by status, or by whether the run has a parent at all.
|
|
2972
2979
|
*
|
|
2973
2980
|
* Note when aggregating: a run's `usage` covers its whole subtree, so summing it over a list that contains both a parent and its children counts the children more than once. Pass `nested=false` to sum over runs a caller started.
|
|
2974
2981
|
*/
|
|
@@ -3243,7 +3250,9 @@ var Quotas = class {
|
|
|
3243
3250
|
/**
|
|
3244
3251
|
* Create a quota
|
|
3245
3252
|
*
|
|
3246
|
-
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor
|
|
3253
|
+
* Creates a project-scoped quota. `requests` is valid for `scope: project`/`api_key`; `tokens` and `cost_usd` are valid for `scope: project`/`agent`/`actor`; `storage_bytes` is valid for `scope: project` only. Any other scope/metric pair is rejected with 400 (no attribution exists to enforce it). An `actor` quota caps one end user's spend, matched from the generation's session; a null `scope_ref` means one budget *per* actor rather than a pooled project total. A `cost_usd` quota may name one `meter_type` to cap; omitting it caps every priced meter. A duplicate quota (same project, scope, scope_ref, metric, window, meter_type) is rejected with 409.
|
|
3254
|
+
*
|
|
3255
|
+
* `storage_bytes` caps a stored total rather than a windowed one, so it takes `window: current` and every other metric refuses that value (400 either way). It is enforced at the corpus write paths — file upload and create, document create, document ingest and re-ingest, memory-entry create — with `409 QUOTA_STORAGE_EXCEEDED` and no `Retry-After`, since no window reset clears a footprint.
|
|
3247
3256
|
*/
|
|
3248
3257
|
static createQuota(options) {
|
|
3249
3258
|
return (options.client ?? client).post({
|
|
@@ -3550,7 +3559,7 @@ var Tasks = class {
|
|
|
3550
3559
|
/**
|
|
3551
3560
|
* List tasks
|
|
3552
3561
|
*
|
|
3553
|
-
* Lists tasks (the board query). Filter by workflow, state, status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
3562
|
+
* Lists tasks (the board query). Filter by workflow, state, status, automation status, or assignee — `GET /tasks?workflow_id=...&state=...` is one board column.
|
|
3554
3563
|
*/
|
|
3555
3564
|
static listTasks(options) {
|
|
3556
3565
|
return (options?.client ?? client).get({
|