@deepnoodle/mobius 0.0.7 → 0.0.8
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/api/index.d.ts +9 -62
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/schema.d.ts +526 -1003
- package/dist/api/schema.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/api/schema.d.ts
CHANGED
|
@@ -156,7 +156,7 @@ export interface paths {
|
|
|
156
156
|
};
|
|
157
157
|
/**
|
|
158
158
|
* List audit log entries
|
|
159
|
-
* @description Returns an immutable, append-only log of create/update/delete actions performed against org resources. Entries record both the durable actor identity (service account or user) and the credential used, enabling attribution even when keys are later revoked.
|
|
159
|
+
* @description Returns an immutable, append-only log of create/update/delete/archive/restore actions performed against org resources. Entries record both the durable actor identity (service account or user) and the credential used, enabling attribution even when keys are later revoked.
|
|
160
160
|
*
|
|
161
161
|
* Combine `actor_id` + `resource_type` to audit a specific identity's writes to a resource class. Use `created_after` / `created_before` for time-bounded compliance exports.
|
|
162
162
|
*/
|
|
@@ -408,7 +408,7 @@ export interface paths {
|
|
|
408
408
|
put?: never;
|
|
409
409
|
/**
|
|
410
410
|
* Request cancellation of an in-flight run
|
|
411
|
-
* @description
|
|
411
|
+
* @description Records `cancel_requested_at`, terminalizes the run as failed with `error_type=run_cancelled`, and closes any non-terminal jobs created by the run. During migration, `cancel_requested` remains populated as an audit/compatibility field.
|
|
412
412
|
*/
|
|
413
413
|
post: operations["cancelRun"];
|
|
414
414
|
delete?: never;
|
|
@@ -427,8 +427,8 @@ export interface paths {
|
|
|
427
427
|
get?: never;
|
|
428
428
|
put?: never;
|
|
429
429
|
/**
|
|
430
|
-
* Resume
|
|
431
|
-
* @description
|
|
430
|
+
* Resume waiting run paths
|
|
431
|
+
* @description Re-enters any resumable waiting paths, such as paused paths or due timer waits.
|
|
432
432
|
*/
|
|
433
433
|
post: operations["resumeRun"];
|
|
434
434
|
delete?: never;
|
|
@@ -447,8 +447,8 @@ export interface paths {
|
|
|
447
447
|
get?: never;
|
|
448
448
|
put?: never;
|
|
449
449
|
/**
|
|
450
|
-
* Deliver a signal
|
|
451
|
-
* @description Durably enqueues a signal keyed by (run_id, name). If the run is
|
|
450
|
+
* Deliver a run-scoped signal
|
|
451
|
+
* @description Durably enqueues a signal keyed by (run_id, name). If any path in the run is waiting on that topic, the server re-enters that path so it can consume the signal. Otherwise the signal remains in the store until a future path waits for it.
|
|
452
452
|
*/
|
|
453
453
|
post: operations["sendRunSignal"];
|
|
454
454
|
delete?: never;
|
|
@@ -714,7 +714,7 @@ export interface paths {
|
|
|
714
714
|
* Emit one or more custom events from a claimed workflow job
|
|
715
715
|
* @description Publishes a batch of custom run events on behalf of the worker holding the job's current lease. Events are appended to the durable run event store (so they replay via `?since=<seq>`) and fanned out to any live SSE subscribers on the run.
|
|
716
716
|
*
|
|
717
|
-
* Authorization requires `mobius.
|
|
717
|
+
* Authorization requires `mobius.work.execute`. Each event must present the active lease fence (`worker_id` + `attempt`); stale fences are rejected with 409.
|
|
718
718
|
*
|
|
719
719
|
* `type` is a caller-chosen identifier. The `mobius.` prefix is reserved for future server-emitted well-known kinds and is rejected with 400.
|
|
720
720
|
*
|
|
@@ -924,7 +924,7 @@ export interface paths {
|
|
|
924
924
|
};
|
|
925
925
|
/**
|
|
926
926
|
* List projects
|
|
927
|
-
* @description Returns up to 100 projects. Use `search` for prefix-match filtering by name or handle.
|
|
927
|
+
* @description Returns up to 100 projects. Use `search` for prefix-match filtering by name or handle. By default returns active (non-archived) projects; pass `status=archived` to see archived projects, or `status=all` to see both.
|
|
928
928
|
*/
|
|
929
929
|
get: operations["listProjects"];
|
|
930
930
|
put?: never;
|
|
@@ -948,7 +948,7 @@ export interface paths {
|
|
|
948
948
|
};
|
|
949
949
|
/**
|
|
950
950
|
* Get a project
|
|
951
|
-
* @description Requires the `project.
|
|
951
|
+
* @description Requires the `mobius.project.view` permission for the project.
|
|
952
952
|
*/
|
|
953
953
|
get: operations["getProject"];
|
|
954
954
|
put?: never;
|
|
@@ -956,6 +956,8 @@ export interface paths {
|
|
|
956
956
|
/**
|
|
957
957
|
* Delete a project
|
|
958
958
|
* @description Permanently deletes the project and all child resources (workflows, runs, jobs, triggers, webhooks, groups, interactions, actions, agents, service accounts). This operation is irreversible.
|
|
959
|
+
*
|
|
960
|
+
* The project must be archived first; calling delete on an active project returns `409 project_not_archived`. Archive via `POST /v1/projects/{id}/archive`.
|
|
959
961
|
*/
|
|
960
962
|
delete: operations["deleteProject"];
|
|
961
963
|
options?: never;
|
|
@@ -967,6 +969,46 @@ export interface paths {
|
|
|
967
969
|
patch: operations["updateProject"];
|
|
968
970
|
trace?: never;
|
|
969
971
|
};
|
|
972
|
+
"/v1/projects/{id}/archive": {
|
|
973
|
+
parameters: {
|
|
974
|
+
query?: never;
|
|
975
|
+
header?: never;
|
|
976
|
+
path?: never;
|
|
977
|
+
cookie?: never;
|
|
978
|
+
};
|
|
979
|
+
get?: never;
|
|
980
|
+
put?: never;
|
|
981
|
+
/**
|
|
982
|
+
* Archive a project
|
|
983
|
+
* @description Soft-retires the project: triggers and scheduled runs stop firing, edits are blocked, and the project is hidden from the default listing. In-flight runs are allowed to drain. The project can be restored at any time. Idempotent — archiving an already-archived project returns the current state.
|
|
984
|
+
*/
|
|
985
|
+
post: operations["archiveProject"];
|
|
986
|
+
delete?: never;
|
|
987
|
+
options?: never;
|
|
988
|
+
head?: never;
|
|
989
|
+
patch?: never;
|
|
990
|
+
trace?: never;
|
|
991
|
+
};
|
|
992
|
+
"/v1/projects/{id}/restore": {
|
|
993
|
+
parameters: {
|
|
994
|
+
query?: never;
|
|
995
|
+
header?: never;
|
|
996
|
+
path?: never;
|
|
997
|
+
cookie?: never;
|
|
998
|
+
};
|
|
999
|
+
get?: never;
|
|
1000
|
+
put?: never;
|
|
1001
|
+
/**
|
|
1002
|
+
* Restore an archived project
|
|
1003
|
+
* @description Clears the archived state and returns the project to active operation. Triggers and scheduled runs resume on their next natural fire — there is no catch-up backfill of missed fires during the archive window. Idempotent — restoring an active project returns the current state.
|
|
1004
|
+
*/
|
|
1005
|
+
post: operations["restoreProject"];
|
|
1006
|
+
delete?: never;
|
|
1007
|
+
options?: never;
|
|
1008
|
+
head?: never;
|
|
1009
|
+
patch?: never;
|
|
1010
|
+
trace?: never;
|
|
1011
|
+
};
|
|
970
1012
|
"/v1/projects/{id}/config": {
|
|
971
1013
|
parameters: {
|
|
972
1014
|
query?: never;
|
|
@@ -1168,7 +1210,7 @@ export interface paths {
|
|
|
1168
1210
|
put?: never;
|
|
1169
1211
|
/**
|
|
1170
1212
|
* Create an interaction
|
|
1171
|
-
* @description Creates a standalone or run-backed interaction. When `run_id` is provided, `signal_name` is also required and completing the interaction automatically delivers a signal that resumes the
|
|
1213
|
+
* @description Creates a standalone or run-backed interaction. When `run_id` is provided, `signal_name` is also required and completing the interaction automatically delivers a signal that resumes the waiting run path. Omit both for a standalone interaction that completes with no workflow side effect. Workers creating interactions from within a job should use the job-scoped route (`POST /v1/projects/{project}/jobs/{id}/interactions`) instead, which derives the run and signal name automatically.
|
|
1172
1214
|
*/
|
|
1173
1215
|
post: operations["createInteraction"];
|
|
1174
1216
|
delete?: never;
|
|
@@ -1390,7 +1432,7 @@ export interface paths {
|
|
|
1390
1432
|
* Create an agent
|
|
1391
1433
|
* @description Creates an agent bound to a service account. A service account can back multiple agents. The service account can be changed after creation via the PATCH endpoint.
|
|
1392
1434
|
*
|
|
1393
|
-
* If `service_account_id` is omitted, a new service account is auto-created with the same name as the agent and assigned to back it. Auto-creation requires the caller to hold `mobius.
|
|
1435
|
+
* If `service_account_id` is omitted, a new service account is auto-created with the same name as the agent and assigned to back it. Auto-creation requires the caller to hold `mobius.access.manage`. Auto-creation fails if a service account with that name already exists in the project; to bind an existing service account to a new agent, pass `service_account_id` explicitly.
|
|
1394
1436
|
*/
|
|
1395
1437
|
post: operations["createAgent"];
|
|
1396
1438
|
delete?: never;
|
|
@@ -1542,7 +1584,7 @@ export interface paths {
|
|
|
1542
1584
|
put?: never;
|
|
1543
1585
|
/**
|
|
1544
1586
|
* Invoke a workflow tool
|
|
1545
|
-
* @description Starts a workflow run for the named tool (workflow handle) and waits for it to complete up to `timeout_seconds` (default 30s, max 120s). Returns the run output directly when the workflow completes within the timeout. On timeout the response includes the run ID and `status:
|
|
1587
|
+
* @description Starts a workflow run for the named tool (workflow handle) and waits for it to complete up to `timeout_seconds` (default 30s, max 120s). Returns the run output directly when the workflow completes within the timeout. On timeout the response includes the run ID and `status: active` so the caller can switch to polling via `GET /v1/projects/{project}/tools/{handle}/runs/{run_id}`.
|
|
1546
1588
|
*/
|
|
1547
1589
|
post: operations["runTool"];
|
|
1548
1590
|
delete?: never;
|
|
@@ -1585,17 +1627,23 @@ export interface components {
|
|
|
1585
1627
|
message: string;
|
|
1586
1628
|
};
|
|
1587
1629
|
};
|
|
1588
|
-
/** @description Health-check response for load balancers and uptime probes. */
|
|
1589
|
-
HealthResponse: {
|
|
1590
|
-
/** @description Current server status. `ok` when all dependencies are reachable. */
|
|
1591
|
-
status: string;
|
|
1592
|
-
};
|
|
1593
1630
|
/** @description Project ID. */
|
|
1594
1631
|
ProjectID: string;
|
|
1595
1632
|
/** @description Free-form JSON object for caller-defined metadata. */
|
|
1596
1633
|
Metadata: {
|
|
1597
1634
|
[key: string]: unknown;
|
|
1598
1635
|
};
|
|
1636
|
+
/**
|
|
1637
|
+
* @description Key/value tag map. Keys 1–128 chars, values 0–256 chars. Keys with the `mobius:` prefix are system-managed and cannot be set by callers. Maximum 8 tags per resource. Use tags to organize resources by environment, team, cost-center, or any other dimension meaningful to your organization; tags can be filtered on most list endpoints.
|
|
1638
|
+
* @example {
|
|
1639
|
+
* "Environment": "Production",
|
|
1640
|
+
* "Department": "Finance",
|
|
1641
|
+
* "Owner": "team@example.com"
|
|
1642
|
+
* }
|
|
1643
|
+
*/
|
|
1644
|
+
TagMap: {
|
|
1645
|
+
[key: string]: string;
|
|
1646
|
+
};
|
|
1599
1647
|
/**
|
|
1600
1648
|
* @description Declarative UI/input primitive for collecting the response. This is a portable rendering contract, not executable code. Values are `confirm`, `select`, `multi_select`, and `input`.
|
|
1601
1649
|
* @enum {string}
|
|
@@ -1664,6 +1712,8 @@ export interface components {
|
|
|
1664
1712
|
* @description Set when the channel is archived. Archived channels are hidden in the UI but their message history remains accessible.
|
|
1665
1713
|
*/
|
|
1666
1714
|
archived_at?: string | null;
|
|
1715
|
+
/** @description Resource tags applied to this channel. */
|
|
1716
|
+
tags?: components["schemas"]["TagMap"];
|
|
1667
1717
|
/**
|
|
1668
1718
|
* Format: date-time
|
|
1669
1719
|
* @description Timestamp when this channel was created.
|
|
@@ -1787,6 +1837,8 @@ export interface components {
|
|
|
1787
1837
|
private: boolean;
|
|
1788
1838
|
/** @description Optional list of user or agent IDs to add as members at creation time. All receive the `member` role; the creator is added as `admin` separately. */
|
|
1789
1839
|
member_ids?: string[];
|
|
1840
|
+
/** @description Initial tag set. */
|
|
1841
|
+
tags?: components["schemas"]["TagMap"];
|
|
1790
1842
|
};
|
|
1791
1843
|
/** @description Mutable channel fields. */
|
|
1792
1844
|
UpdateChannelRequest: {
|
|
@@ -1796,6 +1848,8 @@ export interface components {
|
|
|
1796
1848
|
topic?: string;
|
|
1797
1849
|
/** @description Toggle invite-only visibility. */
|
|
1798
1850
|
private?: boolean;
|
|
1851
|
+
/** @description When supplied, replaces the user tag set on the channel. System tags (`mobius:*`) are preserved. */
|
|
1852
|
+
tags?: components["schemas"]["TagMap"];
|
|
1799
1853
|
};
|
|
1800
1854
|
/** @description Member identity and role to add to a channel. */
|
|
1801
1855
|
AddChannelMemberRequest: {
|
|
@@ -1858,10 +1912,10 @@ export interface components {
|
|
|
1858
1912
|
/** @description Credential ID used for the request, when applicable */
|
|
1859
1913
|
credential_id?: string;
|
|
1860
1914
|
/**
|
|
1861
|
-
* @description Type of action performed: `create`, `update`, or `
|
|
1915
|
+
* @description Type of action performed: `create`, `update`, `delete`, `archive`, or `restore`.
|
|
1862
1916
|
* @enum {string}
|
|
1863
1917
|
*/
|
|
1864
|
-
action: "create" | "update" | "delete";
|
|
1918
|
+
action: "create" | "update" | "delete" | "archive" | "restore";
|
|
1865
1919
|
/** @description Type of resource affected (e.g., job, channel, document) */
|
|
1866
1920
|
resource_type: string;
|
|
1867
1921
|
/** @description ID of the affected resource */
|
|
@@ -1890,207 +1944,6 @@ export interface components {
|
|
|
1890
1944
|
/** @description Whether more results are available */
|
|
1891
1945
|
has_more: boolean;
|
|
1892
1946
|
};
|
|
1893
|
-
/** @description Set for project-pinned keys; omitted for org-scoped keys. */
|
|
1894
|
-
APIKeyProjectID: components["schemas"]["ProjectID"];
|
|
1895
|
-
/** @description Stored API credential metadata for automation and service access. The raw secret is never returned here; use this object to list, audit, expire, or identify keys by prefix without exposing tokens. */
|
|
1896
|
-
APIKey: {
|
|
1897
|
-
/** @description Unique identifier for this API key. */
|
|
1898
|
-
id: string;
|
|
1899
|
-
/** @description Human-readable label, unique within the org (or org+project for project-pinned keys). */
|
|
1900
|
-
name: string;
|
|
1901
|
-
/** @description First 8 characters of the key, used to identify it without exposing the secret. */
|
|
1902
|
-
key_prefix: string;
|
|
1903
|
-
/**
|
|
1904
|
-
* @description `org` is the standard API key scope; `system` is reserved for platform-level access. Project-pinned versus org-level behavior is determined by `project_id`.
|
|
1905
|
-
* @enum {string}
|
|
1906
|
-
*/
|
|
1907
|
-
scope: "org" | "system";
|
|
1908
|
-
/** @description Explicit permission set granted to this key (e.g. "mobius.job.claim"). */
|
|
1909
|
-
permissions?: string[];
|
|
1910
|
-
/** @description Project this key is pinned to; null or omitted for org-scoped and system keys. */
|
|
1911
|
-
project_id?: components["schemas"]["APIKeyProjectID"];
|
|
1912
|
-
/** @description Optional service account for attribution and quota tracking. */
|
|
1913
|
-
service_account_id?: string;
|
|
1914
|
-
/**
|
|
1915
|
-
* Format: date-time
|
|
1916
|
-
* @description Hard expiry timestamp. Requests using an expired key receive 401.
|
|
1917
|
-
*/
|
|
1918
|
-
expires_at?: string;
|
|
1919
|
-
/**
|
|
1920
|
-
* Format: date-time
|
|
1921
|
-
* @description Timestamp of the most recent authenticated request using this key.
|
|
1922
|
-
*/
|
|
1923
|
-
last_used_at?: string;
|
|
1924
|
-
/**
|
|
1925
|
-
* Format: date-time
|
|
1926
|
-
* @description Timestamp when this key was created.
|
|
1927
|
-
*/
|
|
1928
|
-
created_at: string;
|
|
1929
|
-
/**
|
|
1930
|
-
* Format: date-time
|
|
1931
|
-
* @description Timestamp when this key was last updated.
|
|
1932
|
-
*/
|
|
1933
|
-
updated_at: string;
|
|
1934
|
-
};
|
|
1935
|
-
/** @description Returned only on key creation. Contains the raw `key` value which is not retrievable after this response. */
|
|
1936
|
-
APIKeyCreateResult: {
|
|
1937
|
-
/** @description Unique identifier for the created API key. */
|
|
1938
|
-
id: string;
|
|
1939
|
-
/** @description Human-readable name for the key. */
|
|
1940
|
-
name: string;
|
|
1941
|
-
/** @description First 8 characters of the key for identification. */
|
|
1942
|
-
key_prefix: string;
|
|
1943
|
-
/**
|
|
1944
|
-
* @description Scope of the key. `org` is the standard API key scope, and `system` is reserved for platform-only keys. Project-pinned versus org-level behavior is determined by `project_id`.
|
|
1945
|
-
* @enum {string}
|
|
1946
|
-
*/
|
|
1947
|
-
scope: "org" | "system";
|
|
1948
|
-
/** @description List of permissions granted to this key. */
|
|
1949
|
-
permissions?: string[];
|
|
1950
|
-
/** @description Project this key is pinned to; null or omitted for org-scoped and system keys. */
|
|
1951
|
-
project_id?: components["schemas"]["APIKeyProjectID"];
|
|
1952
|
-
/** @description ID of the service account this key belongs to. */
|
|
1953
|
-
service_account_id?: string;
|
|
1954
|
-
/**
|
|
1955
|
-
* Format: date-time
|
|
1956
|
-
* @description Timestamp when this key expires. Null if it does not expire.
|
|
1957
|
-
*/
|
|
1958
|
-
expires_at?: string;
|
|
1959
|
-
/**
|
|
1960
|
-
* Format: date-time
|
|
1961
|
-
* @description Timestamp of the most recent authenticated request using this key.
|
|
1962
|
-
*/
|
|
1963
|
-
last_used_at?: string;
|
|
1964
|
-
/**
|
|
1965
|
-
* Format: date-time
|
|
1966
|
-
* @description Timestamp when this key was created.
|
|
1967
|
-
*/
|
|
1968
|
-
created_at: string;
|
|
1969
|
-
/**
|
|
1970
|
-
* Format: date-time
|
|
1971
|
-
* @description Timestamp when this key was last updated.
|
|
1972
|
-
*/
|
|
1973
|
-
updated_at: string;
|
|
1974
|
-
/** @description The raw API key. Returned only once at creation — store it securely immediately. */
|
|
1975
|
-
key: string;
|
|
1976
|
-
};
|
|
1977
|
-
APIKeyListResponse: {
|
|
1978
|
-
/** @description The list of results for this page. */
|
|
1979
|
-
items: components["schemas"]["APIKey"][];
|
|
1980
|
-
};
|
|
1981
|
-
/** @description Request shape for creating either a project-pinned key or an org-level key. Choose the project-pinned variant when automation should be unable to cross project boundaries. */
|
|
1982
|
-
CreateAPIKeyRequest: components["schemas"]["CreateProjectPinnedAPIKeyRequest"] | components["schemas"]["CreateOrgOrSystemAPIKeyRequest"];
|
|
1983
|
-
CreateProjectPinnedAPIKeyRequest: {
|
|
1984
|
-
/** @description Human-readable label, unique within the org (or project for project-pinned keys). */
|
|
1985
|
-
name: string;
|
|
1986
|
-
/** @description Set `project_id` to pin this key to exactly one project. When `project_id` is omitted, the request creates an org-level key instead. */
|
|
1987
|
-
project_id: components["schemas"]["ProjectID"];
|
|
1988
|
-
/**
|
|
1989
|
-
* @description Standard API key scope for project-pinned keys; value is always `org`.
|
|
1990
|
-
* @default org
|
|
1991
|
-
* @enum {string}
|
|
1992
|
-
*/
|
|
1993
|
-
scope: "org";
|
|
1994
|
-
/** @description Permissions to grant. Each permission must be held by the creating caller — you cannot grant more than you have. */
|
|
1995
|
-
permissions?: string[];
|
|
1996
|
-
/** @description Associate this key with a service account for attribution. */
|
|
1997
|
-
service_account_id?: string;
|
|
1998
|
-
/**
|
|
1999
|
-
* Format: date-time
|
|
2000
|
-
* @description Optional hard expiry. Omit for a non-expiring key.
|
|
2001
|
-
*/
|
|
2002
|
-
expires_at?: string;
|
|
2003
|
-
};
|
|
2004
|
-
CreateOrgOrSystemAPIKeyRequest: {
|
|
2005
|
-
/** @description Human-readable label, unique within the org (or project for project-pinned keys). */
|
|
2006
|
-
name: string;
|
|
2007
|
-
/**
|
|
2008
|
-
* @description Standard API key scope: `org` for organization keys or `system` for platform-only keys. Project-pinned versus org-level behavior is determined separately by `project_id`.
|
|
2009
|
-
* @default org
|
|
2010
|
-
* @enum {string}
|
|
2011
|
-
*/
|
|
2012
|
-
scope: "org" | "system";
|
|
2013
|
-
/** @description Permissions to grant. Each permission must be held by the creating caller — you cannot grant more than you have. */
|
|
2014
|
-
permissions?: string[];
|
|
2015
|
-
/** @description Associate this key with a service account for attribution. */
|
|
2016
|
-
service_account_id?: string;
|
|
2017
|
-
/**
|
|
2018
|
-
* Format: date-time
|
|
2019
|
-
* @description Optional hard expiry. Omit for a non-expiring key.
|
|
2020
|
-
*/
|
|
2021
|
-
expires_at?: string;
|
|
2022
|
-
};
|
|
2023
|
-
/** @description Server-resolved identity context for the current request. Use this to confirm which org, actor, and auth mechanism the API associated with the supplied credential. */
|
|
2024
|
-
AuthContext: {
|
|
2025
|
-
/** @description Resolved user ID for this request (may be a service account ID for API-key auth). */
|
|
2026
|
-
user_id: string;
|
|
2027
|
-
/** @description Org ID resolved from the authentication credential. */
|
|
2028
|
-
org_id?: string;
|
|
2029
|
-
/** @description Org member role (owner, admin, member) — empty for API-key auth. */
|
|
2030
|
-
role?: string;
|
|
2031
|
-
/** @description How the caller authenticated: `clerk` (browser JWT), `api_key`, or `cli_token`. */
|
|
2032
|
-
auth_type: string;
|
|
2033
|
-
/** @description True when the caller is an owner or admin of the active organization. */
|
|
2034
|
-
is_org_admin: boolean;
|
|
2035
|
-
};
|
|
2036
|
-
ConfirmDeviceCodeRequest: {
|
|
2037
|
-
/** @description The user code displayed in the CLI during the device authorization flow. */
|
|
2038
|
-
user_code: string;
|
|
2039
|
-
/** @description Optional label to identify this credential in the CLI credentials list. */
|
|
2040
|
-
label?: string;
|
|
2041
|
-
/** @description Optional project ID to pin the issued CLI credential to. When set, the resulting token is usable only for that project and must carry the project's handle as a trailing `.<handle>` suffix. */
|
|
2042
|
-
project_id?: string;
|
|
2043
|
-
};
|
|
2044
|
-
ConfirmDeviceCodeResult: {
|
|
2045
|
-
/** @description True when the device code was successfully confirmed and a CLI credential has been issued. */
|
|
2046
|
-
confirmed: boolean;
|
|
2047
|
-
};
|
|
2048
|
-
/**
|
|
2049
|
-
* @description Lifecycle state for a CLI credential. `active` credentials can authenticate requests; `revoked` credentials are retained for audit history but no longer work.
|
|
2050
|
-
* @enum {string}
|
|
2051
|
-
*/
|
|
2052
|
-
CLICredentialStatus: "active" | "revoked";
|
|
2053
|
-
/** @description User-authorized CLI credential metadata. Use it to show local login sessions, identify project-pinned tokens, and revoke stale command-line access without revealing the token itself. */
|
|
2054
|
-
CLICredential: {
|
|
2055
|
-
/** @description Unique identifier for this credential. */
|
|
2056
|
-
id: string;
|
|
2057
|
-
/** @description ID of the user who authorized this credential. */
|
|
2058
|
-
user_id: string;
|
|
2059
|
-
/** @description Project ID the credential is pinned to. Empty when the credential is org-scoped (usable across every project the user can access). */
|
|
2060
|
-
project_id?: string;
|
|
2061
|
-
/** @description Handle of the pinned project, echoed here so clients can format the trailing `.<handle>` suffix on every request. Empty when the credential is not pinned. */
|
|
2062
|
-
project_handle?: string;
|
|
2063
|
-
/** @description Human-readable label identifying this credential. */
|
|
2064
|
-
label: string;
|
|
2065
|
-
/** @description First few characters of the token, shown for identification without exposing the secret. */
|
|
2066
|
-
token_prefix: string;
|
|
2067
|
-
/** @description Credential lifecycle state: `active` or `revoked`. */
|
|
2068
|
-
status: components["schemas"]["CLICredentialStatus"];
|
|
2069
|
-
/**
|
|
2070
|
-
* Format: date-time
|
|
2071
|
-
* @description Timestamp when this credential was created.
|
|
2072
|
-
*/
|
|
2073
|
-
created_at: string;
|
|
2074
|
-
/**
|
|
2075
|
-
* Format: date-time
|
|
2076
|
-
* @description Timestamp when this credential was last updated.
|
|
2077
|
-
*/
|
|
2078
|
-
updated_at: string;
|
|
2079
|
-
/**
|
|
2080
|
-
* Format: date-time
|
|
2081
|
-
* @description Timestamp of the most recent authenticated request using this credential.
|
|
2082
|
-
*/
|
|
2083
|
-
last_used_at?: string;
|
|
2084
|
-
/**
|
|
2085
|
-
* Format: date-time
|
|
2086
|
-
* @description Timestamp when this credential expires. Null if it does not expire.
|
|
2087
|
-
*/
|
|
2088
|
-
expires_at?: string | null;
|
|
2089
|
-
};
|
|
2090
|
-
CLICredentialListResponse: {
|
|
2091
|
-
/** @description The list of credentials issued to the current user. */
|
|
2092
|
-
items: components["schemas"]["CLICredential"][];
|
|
2093
|
-
};
|
|
2094
1947
|
/**
|
|
2095
1948
|
* @description Workflow definition shaped like `workflow.Options`.
|
|
2096
1949
|
*
|
|
@@ -2373,17 +2226,7 @@ export interface components {
|
|
|
2373
2226
|
/** @description Go duration string. */
|
|
2374
2227
|
timeout: string;
|
|
2375
2228
|
/** @description User, group, or agent that should receive the interaction. */
|
|
2376
|
-
target: components["schemas"]["
|
|
2377
|
-
};
|
|
2378
|
-
/** @description Recipient definition used by workflow interaction steps. */
|
|
2379
|
-
WorkflowInteractionTarget: {
|
|
2380
|
-
/**
|
|
2381
|
-
* @description Whether the target is an individual user, a group, or an agent.
|
|
2382
|
-
* @enum {string}
|
|
2383
|
-
*/
|
|
2384
|
-
type: "user" | "group" | "agent";
|
|
2385
|
-
/** @description ID of the target user, group, or agent. */
|
|
2386
|
-
id: string;
|
|
2229
|
+
target: components["schemas"]["InteractionTarget"];
|
|
2387
2230
|
/** @description When true, all group members must respond before the interaction completes. Only meaningful when type is `group`. */
|
|
2388
2231
|
require_all?: boolean;
|
|
2389
2232
|
};
|
|
@@ -2403,6 +2246,8 @@ export interface components {
|
|
|
2403
2246
|
published_as_tool?: boolean;
|
|
2404
2247
|
/** @description User ID of the org member who created this workflow definition. */
|
|
2405
2248
|
created_by: string;
|
|
2249
|
+
/** @description Resource tags applied to this workflow. Inherited by runs at start time; see `WorkflowRun.tags`. */
|
|
2250
|
+
tags?: components["schemas"]["TagMap"];
|
|
2406
2251
|
/**
|
|
2407
2252
|
* Format: date-time
|
|
2408
2253
|
* @description Timestamp when this workflow definition was created.
|
|
@@ -2442,6 +2287,8 @@ export interface components {
|
|
|
2442
2287
|
published_as_tool?: boolean;
|
|
2443
2288
|
/** @description Executable workflow spec to persist as version 1. */
|
|
2444
2289
|
spec: components["schemas"]["WorkflowSpec"];
|
|
2290
|
+
/** @description Initial tag set. */
|
|
2291
|
+
tags?: components["schemas"]["TagMap"];
|
|
2445
2292
|
};
|
|
2446
2293
|
/** @description Updates workflow metadata and optionally creates a new immutable version when `spec` changes. */
|
|
2447
2294
|
UpdateWorkflowRequest: {
|
|
@@ -2453,6 +2300,8 @@ export interface components {
|
|
|
2453
2300
|
published_as_tool?: boolean;
|
|
2454
2301
|
/** @description Replacement executable workflow spec. Supplying this creates a new version. */
|
|
2455
2302
|
spec?: components["schemas"]["WorkflowSpec"];
|
|
2303
|
+
/** @description When supplied, replaces the workflow's tag set. Omit to leave tags unchanged. */
|
|
2304
|
+
tags?: components["schemas"]["TagMap"];
|
|
2456
2305
|
};
|
|
2457
2306
|
/** @description Workflow version metadata without the executable `spec`. Returned by `listWorkflowVersions`. */
|
|
2458
2307
|
WorkflowVersionSummary: {
|
|
@@ -2481,10 +2330,90 @@ export interface components {
|
|
|
2481
2330
|
items: components["schemas"]["WorkflowVersionSummary"][];
|
|
2482
2331
|
};
|
|
2483
2332
|
/**
|
|
2484
|
-
* @description
|
|
2333
|
+
* @description Public run lifecycle. Path-level fields explain why an active run is working, waiting, sleeping, retrying, paused, or blocked at a join.
|
|
2334
|
+
* @enum {string}
|
|
2335
|
+
*/
|
|
2336
|
+
WorkflowRunStatus: "active" | "completed" | "failed";
|
|
2337
|
+
/**
|
|
2338
|
+
* @description Current state of one execution path.
|
|
2485
2339
|
* @enum {string}
|
|
2486
2340
|
*/
|
|
2487
|
-
|
|
2341
|
+
WorkflowRunPathState: "working" | "waiting" | "completed" | "failed";
|
|
2342
|
+
/**
|
|
2343
|
+
* @description What a waiting path is blocked on.
|
|
2344
|
+
* @enum {string}
|
|
2345
|
+
*/
|
|
2346
|
+
WorkflowRunWaitKind: "sleep" | "signal" | "interaction" | "pause" | "join" | "retry";
|
|
2347
|
+
WorkflowRunWaitDetail: {
|
|
2348
|
+
kind: components["schemas"]["WorkflowRunWaitKind"];
|
|
2349
|
+
/**
|
|
2350
|
+
* Format: date-time
|
|
2351
|
+
* @description Earliest time the runtime should inspect or resume this path.
|
|
2352
|
+
*/
|
|
2353
|
+
wake_at?: string;
|
|
2354
|
+
/** @description Signal name this path is waiting for. */
|
|
2355
|
+
signal_name?: string;
|
|
2356
|
+
/** @description Pending interaction linked to this wait. */
|
|
2357
|
+
interaction_id?: string;
|
|
2358
|
+
/** @description Interaction target, when kind is `interaction`. */
|
|
2359
|
+
target?: components["schemas"]["InteractionTarget"];
|
|
2360
|
+
/** @description Human-readable pause or wait reason. */
|
|
2361
|
+
reason?: string;
|
|
2362
|
+
/** @description Join step this path is waiting at. */
|
|
2363
|
+
join_step?: string;
|
|
2364
|
+
/** @description Path IDs still required before a join can proceed. */
|
|
2365
|
+
waiting_for_paths?: string[];
|
|
2366
|
+
/** @description Retry attempt number for `retry` waits. */
|
|
2367
|
+
attempt?: number;
|
|
2368
|
+
/** @description Maximum attempts for `retry` waits. */
|
|
2369
|
+
max_attempts?: number;
|
|
2370
|
+
};
|
|
2371
|
+
WorkflowRunPath: {
|
|
2372
|
+
/** @description Stable execution path identifier, e.g. `main` or `main/each/0`. */
|
|
2373
|
+
path_id: string;
|
|
2374
|
+
state: components["schemas"]["WorkflowRunPathState"];
|
|
2375
|
+
/** @description Present when `state` is `waiting`. */
|
|
2376
|
+
waiting_on?: components["schemas"]["WorkflowRunWaitDetail"];
|
|
2377
|
+
/** @description Path-local failure type when state is `failed`. */
|
|
2378
|
+
error_type?: string;
|
|
2379
|
+
/** @description Path-local failure message when state is `failed`. */
|
|
2380
|
+
error_message?: string;
|
|
2381
|
+
};
|
|
2382
|
+
/** @description Current path counts. Invariants: `total = working + waiting + completed + failed`; `active = working + waiting`. */
|
|
2383
|
+
WorkflowRunPathCounts: {
|
|
2384
|
+
total: number;
|
|
2385
|
+
active: number;
|
|
2386
|
+
working: number;
|
|
2387
|
+
waiting: number;
|
|
2388
|
+
completed: number;
|
|
2389
|
+
failed: number;
|
|
2390
|
+
};
|
|
2391
|
+
/** @description Always-present aggregate of waiting paths. */
|
|
2392
|
+
WorkflowRunWaitSummary: {
|
|
2393
|
+
waiting_paths: number;
|
|
2394
|
+
/** @description Count of waiting paths by `waiting_on.kind`. */
|
|
2395
|
+
kind_counts: {
|
|
2396
|
+
[key: string]: number;
|
|
2397
|
+
};
|
|
2398
|
+
/**
|
|
2399
|
+
* Format: date-time
|
|
2400
|
+
* @description Earliest wake time among waiting paths, or null.
|
|
2401
|
+
*/
|
|
2402
|
+
next_wake_at: string | null;
|
|
2403
|
+
waiting_on_signal_names: string[];
|
|
2404
|
+
interaction_ids: string[];
|
|
2405
|
+
};
|
|
2406
|
+
/** @description Current job-claim summary for this run. `ready` counts pending jobs whose `scheduled_at` has arrived and can be claimed now; `scheduled` counts pending jobs intentionally waiting for a future retry/backoff; `claimed` counts jobs currently held by workers. */
|
|
2407
|
+
WorkflowRunJobCounts: {
|
|
2408
|
+
ready: number;
|
|
2409
|
+
scheduled: number;
|
|
2410
|
+
claimed: number;
|
|
2411
|
+
};
|
|
2412
|
+
WorkflowRunError: {
|
|
2413
|
+
path_id?: string;
|
|
2414
|
+
error_type: string;
|
|
2415
|
+
error_message: string;
|
|
2416
|
+
};
|
|
2488
2417
|
/** @description Runtime record for one workflow execution. */
|
|
2489
2418
|
WorkflowRun: {
|
|
2490
2419
|
/** @description Unique identifier for this run. */
|
|
@@ -2501,8 +2430,16 @@ export interface components {
|
|
|
2501
2430
|
ephemeral: boolean;
|
|
2502
2431
|
/** @description Name of the workflow as recorded at run creation time. */
|
|
2503
2432
|
workflow_name: string;
|
|
2504
|
-
/** @description
|
|
2433
|
+
/** @description Public lifecycle for this run. */
|
|
2505
2434
|
status: components["schemas"]["WorkflowRunStatus"];
|
|
2435
|
+
/** @description Current path counts derived from the run projection. */
|
|
2436
|
+
path_counts: components["schemas"]["WorkflowRunPathCounts"];
|
|
2437
|
+
/** @description Current job claim summary derived from the run projection. */
|
|
2438
|
+
job_counts: components["schemas"]["WorkflowRunJobCounts"];
|
|
2439
|
+
/** @description Always-present aggregate of waiting paths. */
|
|
2440
|
+
wait_summary: components["schemas"]["WorkflowRunWaitSummary"];
|
|
2441
|
+
/** @description Run-level errors that caused a failed lifecycle. */
|
|
2442
|
+
errors: components["schemas"]["WorkflowRunError"][];
|
|
2506
2443
|
/** @description Retry attempt number (1-based). Increments each time the run is retried. */
|
|
2507
2444
|
attempt: number;
|
|
2508
2445
|
/** @description Input values provided when the run was started. */
|
|
@@ -2513,6 +2450,8 @@ export interface components {
|
|
|
2513
2450
|
metadata?: {
|
|
2514
2451
|
[key: string]: string;
|
|
2515
2452
|
};
|
|
2453
|
+
/** @description Resource tags applied to this run. Inherited from the parent workflow at start time, with caller-supplied overrides merged on top. System tags (`mobius:*`) are read-only. */
|
|
2454
|
+
tags?: components["schemas"]["TagMap"];
|
|
2516
2455
|
/** @description Error message from the most recent failure. Present when status is failed. */
|
|
2517
2456
|
error_message?: string;
|
|
2518
2457
|
/** @description Type of the actor that started this run (user, service_account, system). */
|
|
@@ -2523,8 +2462,13 @@ export interface components {
|
|
|
2523
2462
|
initiated_by?: string;
|
|
2524
2463
|
/** @description Caller-supplied idempotency key or correlation ID. */
|
|
2525
2464
|
external_id?: string;
|
|
2526
|
-
/** @description
|
|
2465
|
+
/** @description Compatibility boolean set when cancellation was requested. Use `cancel_requested_at` for audit detail and `status` for terminal checks. */
|
|
2527
2466
|
cancel_requested?: boolean;
|
|
2467
|
+
/**
|
|
2468
|
+
* Format: date-time
|
|
2469
|
+
* @description Timestamp when cancellation was requested.
|
|
2470
|
+
*/
|
|
2471
|
+
cancel_requested_at?: string;
|
|
2528
2472
|
/**
|
|
2529
2473
|
* Format: date-time
|
|
2530
2474
|
* @description Timestamp when this run was created.
|
|
@@ -2551,10 +2495,10 @@ export interface components {
|
|
|
2551
2495
|
*/
|
|
2552
2496
|
wall_clock_deadline_at?: string;
|
|
2553
2497
|
/**
|
|
2554
|
-
* @description Typed run-level failure cause: `run_timeout`, `run_cancelled`, or `
|
|
2498
|
+
* @description Typed run-level failure cause: `run_timeout`, `run_cancelled`, `job_failed`, or `run_failed`. Its own vocabulary, not a superset of the job-level `error_type`. Present when `status=failed`.
|
|
2555
2499
|
* @enum {string}
|
|
2556
2500
|
*/
|
|
2557
|
-
error_type?: "run_timeout" | "run_cancelled" | "job_failed";
|
|
2501
|
+
error_type?: "run_timeout" | "run_cancelled" | "job_failed" | "run_failed";
|
|
2558
2502
|
/** @description Run-level cascade config frozen when the run was started. */
|
|
2559
2503
|
resolved_config?: components["schemas"]["ResolvedConfig"];
|
|
2560
2504
|
/** @description Default job-level cascade config inherited by jobs unless a step overrides it. */
|
|
@@ -2573,6 +2517,8 @@ export interface components {
|
|
|
2573
2517
|
};
|
|
2574
2518
|
/** @description Detailed workflow run including its spec snapshot, terminal result, and jobs. */
|
|
2575
2519
|
WorkflowRunDetail: components["schemas"]["WorkflowRun"] & {
|
|
2520
|
+
/** @description Current path-level execution projection for this run. */
|
|
2521
|
+
paths: components["schemas"]["WorkflowRunPath"][];
|
|
2576
2522
|
/** @description Spec snapshot used to execute this run. */
|
|
2577
2523
|
spec?: components["schemas"]["WorkflowSpec"];
|
|
2578
2524
|
/** @description Base64-encoded terminal result blob */
|
|
@@ -2580,7 +2526,7 @@ export interface components {
|
|
|
2580
2526
|
/** @description Jobs spawned by this run. */
|
|
2581
2527
|
jobs?: components["schemas"]["Job"][];
|
|
2582
2528
|
};
|
|
2583
|
-
/** @description Run a previously-created workflow definition. Selected by `mode: saved` on `POST /v1/projects/{project}/runs`. */
|
|
2529
|
+
/** @description Run a previously-created workflow definition. Selected by `mode: saved` on `POST /v1/projects/{project}/runs`. The run inherits the workflow definition's tags at start time; see the `tags` field below for the override rules. */
|
|
2584
2530
|
StartSavedRunRequest: {
|
|
2585
2531
|
/**
|
|
2586
2532
|
* @description Discriminator value — must be `saved`. (enum property replaced by openapi-typescript)
|
|
@@ -2599,6 +2545,8 @@ export interface components {
|
|
|
2599
2545
|
metadata?: {
|
|
2600
2546
|
[key: string]: string;
|
|
2601
2547
|
};
|
|
2548
|
+
/** @description Tags applied on top of the workflow definition's inherited tags. Caller keys override on conflict; an entry whose value is the empty string opts the inherited key out entirely (so the run does not carry it). Setting a tag value to "" is therefore reserved as the opt-out signal — use a placeholder value if you actually want a stored empty value. */
|
|
2549
|
+
tags?: components["schemas"]["TagMap"];
|
|
2602
2550
|
/** @description Caller-supplied idempotency key or correlation ID attached to the run. */
|
|
2603
2551
|
external_id?: string;
|
|
2604
2552
|
/** @description Run-level cascade config overrides applied when starting the run. */
|
|
@@ -2623,6 +2571,8 @@ export interface components {
|
|
|
2623
2571
|
metadata?: {
|
|
2624
2572
|
[key: string]: string;
|
|
2625
2573
|
};
|
|
2574
|
+
/** @description Initial tags for this inline run. Inline runs have no parent workflow definition, so there is nothing to inherit from — every tag on the run comes from this map. */
|
|
2575
|
+
tags?: components["schemas"]["TagMap"];
|
|
2626
2576
|
/** @description Caller-supplied idempotency key or correlation ID attached to the run. */
|
|
2627
2577
|
external_id?: string;
|
|
2628
2578
|
/** @description Run-level cascade config overrides applied when starting the run. */
|
|
@@ -2647,6 +2597,8 @@ export interface components {
|
|
|
2647
2597
|
metadata?: {
|
|
2648
2598
|
[key: string]: string;
|
|
2649
2599
|
};
|
|
2600
|
+
/** @description Tags applied on top of the bound workflow definition's inherited tags. Caller keys override on conflict; an entry whose value is the empty string opts the inherited key out entirely (so the run does not carry it). Setting a tag value to "" is therefore reserved as the opt-out signal — use a placeholder value if you actually want a stored empty value. */
|
|
2601
|
+
tags?: components["schemas"]["TagMap"];
|
|
2650
2602
|
/** @description Caller-supplied idempotency key or correlation ID attached to the run. */
|
|
2651
2603
|
external_id?: string;
|
|
2652
2604
|
/** @description Run-level cascade config overrides applied when starting the bound workflow. */
|
|
@@ -2785,7 +2737,7 @@ export interface components {
|
|
|
2785
2737
|
* @description Deadline at which the reaper will fail this job with `error_type=execution_timeout` if it has not completed. Present only when `resolved_config` contains an entry with `category="timeouts"` and `key="execution"` whose value resolves to a finite duration.
|
|
2786
2738
|
*/
|
|
2787
2739
|
execution_deadline_at?: string;
|
|
2788
|
-
/** @description Failure cause. Server-produced timeout and cancellation failures use stable tokens such as `claim_timeout`, `liveness_timeout`, `execution_timeout`, and `
|
|
2740
|
+
/** @description Failure cause. Server-produced timeout and cancellation failures use stable tokens such as `claim_timeout`, `liveness_timeout`, `execution_timeout`, `run_cancelled`, `run_timeout`, and `run_failed`; worker-reported failures may use caller-defined class names. Present when `status=failed`. */
|
|
2789
2741
|
error_type?: string;
|
|
2790
2742
|
/** @description Job-level cascade config resolved for this job. */
|
|
2791
2743
|
resolved_config?: components["schemas"]["ResolvedConfig"];
|
|
@@ -2805,7 +2757,7 @@ export interface components {
|
|
|
2805
2757
|
/** @description The list of jobs for this run. */
|
|
2806
2758
|
items: components["schemas"]["Job"][];
|
|
2807
2759
|
};
|
|
2808
|
-
/** @description Delivers an external signal to a
|
|
2760
|
+
/** @description Delivers an external signal to a workflow run. */
|
|
2809
2761
|
SendRunSignalRequest: {
|
|
2810
2762
|
/** @description Signal topic (e.g. "approval", "webhook"). */
|
|
2811
2763
|
name: string;
|
|
@@ -2823,6 +2775,16 @@ export interface components {
|
|
|
2823
2775
|
/** @description Signal topic name matching the wait_signal step's topic. */
|
|
2824
2776
|
name: string;
|
|
2825
2777
|
};
|
|
2778
|
+
/** @description Identifies who should receive an interaction request. Note: distinct from the caller/audit `Actor` vocabulary — a target is a *recipient*, not someone who has acted yet. */
|
|
2779
|
+
InteractionTarget: {
|
|
2780
|
+
/**
|
|
2781
|
+
* @description Target kind: a specific user, an agent queue, or a group.
|
|
2782
|
+
* @enum {string}
|
|
2783
|
+
*/
|
|
2784
|
+
type: "user" | "agent" | "group";
|
|
2785
|
+
/** @description User ID for user; queue name for agent; group ID or handle for group. */
|
|
2786
|
+
id: string;
|
|
2787
|
+
};
|
|
2826
2788
|
/** @description Request hints that describe the safe-use properties of the action. Used by the engine and tooling to decide retry behavior, dry-run eligibility, etc. Unknown request properties are rejected. */
|
|
2827
2789
|
ActionAnnotationsRequest: {
|
|
2828
2790
|
/** @description The action produces the same result when called with the same inputs; safe to retry automatically. */
|
|
@@ -3141,16 +3103,6 @@ export interface components {
|
|
|
3141
3103
|
[key: string]: unknown;
|
|
3142
3104
|
};
|
|
3143
3105
|
};
|
|
3144
|
-
/** @description Identifies who should receive an interaction request. Note: distinct from the caller/audit `Actor` vocabulary — a target is a *recipient*, not someone who has acted yet. */
|
|
3145
|
-
InteractionTarget: {
|
|
3146
|
-
/**
|
|
3147
|
-
* @description Target kind: a specific user, an agent queue, or a group.
|
|
3148
|
-
* @enum {string}
|
|
3149
|
-
*/
|
|
3150
|
-
type: "user" | "agent" | "group";
|
|
3151
|
-
/** @description User ID for user; queue name for agent; group ID or handle for group. */
|
|
3152
|
-
id: string;
|
|
3153
|
-
};
|
|
3154
3106
|
/**
|
|
3155
3107
|
* @description Interaction kind: `approval` captures a decision, `review` captures acknowledgement or notes, and `input` collects free-form data.
|
|
3156
3108
|
* @enum {string}
|
|
@@ -3438,6 +3390,8 @@ export interface components {
|
|
|
3438
3390
|
next_fire_at?: string;
|
|
3439
3391
|
/** @description User ID of the org member who created this trigger. */
|
|
3440
3392
|
created_by?: string;
|
|
3393
|
+
/** @description Resource tags applied to this trigger. */
|
|
3394
|
+
tags?: components["schemas"]["TagMap"];
|
|
3441
3395
|
/**
|
|
3442
3396
|
* Format: date-time
|
|
3443
3397
|
* @description Timestamp when this trigger was created.
|
|
@@ -3516,6 +3470,8 @@ export interface components {
|
|
|
3516
3470
|
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
|
|
3517
3471
|
/** @description Whether the trigger starts enabled. Defaults to true when omitted. */
|
|
3518
3472
|
enabled?: boolean;
|
|
3473
|
+
/** @description Initial tag set. */
|
|
3474
|
+
tags?: components["schemas"]["TagMap"];
|
|
3519
3475
|
};
|
|
3520
3476
|
/** @description Creates a webhook trigger with an inbound receive URL. */
|
|
3521
3477
|
CreateWebhookTriggerRequest: {
|
|
@@ -3534,6 +3490,8 @@ export interface components {
|
|
|
3534
3490
|
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
|
|
3535
3491
|
/** @description Whether the trigger starts enabled. Defaults to true when omitted. */
|
|
3536
3492
|
enabled?: boolean;
|
|
3493
|
+
/** @description Initial tag set. */
|
|
3494
|
+
tags?: components["schemas"]["TagMap"];
|
|
3537
3495
|
};
|
|
3538
3496
|
/** @description Creates an event trigger for platform-originated events. */
|
|
3539
3497
|
CreateEventTriggerRequest: {
|
|
@@ -3552,16 +3510,22 @@ export interface components {
|
|
|
3552
3510
|
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
|
|
3553
3511
|
/** @description Whether the trigger starts enabled. Defaults to true when omitted. */
|
|
3554
3512
|
enabled?: boolean;
|
|
3513
|
+
/** @description Initial tag set. */
|
|
3514
|
+
tags?: components["schemas"]["TagMap"];
|
|
3555
3515
|
};
|
|
3556
3516
|
UpdateTriggerRequest: {
|
|
3557
3517
|
/** @description Replacement human-readable name. */
|
|
3558
3518
|
name?: string;
|
|
3559
3519
|
/** @description Replacement source configuration; its shape must match the trigger kind. */
|
|
3560
3520
|
source_config?: components["schemas"]["TriggerSourceConfig"];
|
|
3521
|
+
/** @description Replacement target set for this trigger. Omit to leave targets unchanged; send an empty array to remove all targets. */
|
|
3522
|
+
targets?: components["schemas"]["CreateTriggerTargetRequest"][];
|
|
3561
3523
|
/** @description Replacement policy for overlapping runs started by this trigger. */
|
|
3562
3524
|
concurrency_policy?: components["schemas"]["ConcurrencyPolicy"];
|
|
3563
3525
|
/** @description Set to false to pause the trigger without deleting it. */
|
|
3564
3526
|
enabled?: boolean;
|
|
3527
|
+
/** @description When supplied, replaces the user tag set on the trigger. System tags (`mobius:*`) are preserved. */
|
|
3528
|
+
tags?: components["schemas"]["TagMap"];
|
|
3565
3529
|
};
|
|
3566
3530
|
/** @description Recently observed worker process for a project. Use sessions to see which machines, users, service accounts, or agents are polling for work and whether they appear stale. */
|
|
3567
3531
|
WorkerSession: {
|
|
@@ -3612,6 +3576,13 @@ export interface components {
|
|
|
3612
3576
|
access_mode: components["schemas"]["ProjectAccessMode"];
|
|
3613
3577
|
/** @description User ID of the org member who created this project. */
|
|
3614
3578
|
created_by?: string;
|
|
3579
|
+
/**
|
|
3580
|
+
* Format: date-time
|
|
3581
|
+
* @description Timestamp when this project was archived. `null` for active projects. Archived projects are read-only and excluded from the default project listing.
|
|
3582
|
+
*/
|
|
3583
|
+
archived_at?: string | null;
|
|
3584
|
+
/** @description Resource tags applied to this project. */
|
|
3585
|
+
tags?: components["schemas"]["TagMap"];
|
|
3615
3586
|
/**
|
|
3616
3587
|
* Format: date-time
|
|
3617
3588
|
* @description Timestamp when this project was created.
|
|
@@ -3636,6 +3607,8 @@ export interface components {
|
|
|
3636
3607
|
description?: string;
|
|
3637
3608
|
/** @description Initial project access policy: `org_open` or `restricted`. */
|
|
3638
3609
|
access_mode?: components["schemas"]["ProjectAccessMode"];
|
|
3610
|
+
/** @description Initial tag set. */
|
|
3611
|
+
tags?: components["schemas"]["TagMap"];
|
|
3639
3612
|
};
|
|
3640
3613
|
UpdateProjectRequest: {
|
|
3641
3614
|
/** @description Replacement human-readable name. */
|
|
@@ -3646,6 +3619,8 @@ export interface components {
|
|
|
3646
3619
|
access_mode?: components["schemas"]["ProjectAccessMode"];
|
|
3647
3620
|
/** @description When transitioning from `org_open` to `restricted`, set true to insert all current org members as project members so nobody loses visibility on the flip. Ignored on other transitions. */
|
|
3648
3621
|
seed_existing_members?: boolean;
|
|
3622
|
+
/** @description When supplied, replaces the user tag set on the project. */
|
|
3623
|
+
tags?: components["schemas"]["TagMap"];
|
|
3649
3624
|
};
|
|
3650
3625
|
/** @description Explicit project membership used when a project is restricted. Use this record to decide who can see or operate on a project outside the default org-wide access model. */
|
|
3651
3626
|
ProjectMember: {
|
|
@@ -3655,6 +3630,8 @@ export interface components {
|
|
|
3655
3630
|
project_id: string;
|
|
3656
3631
|
/** @description ID of the user who is a member. */
|
|
3657
3632
|
user_id: string;
|
|
3633
|
+
/** @description Profile of the member. Embedded by `listProjectMembers` so UIs can render names, emails, and avatars without a separate user lookup. Absent on the `addProjectMember` response. */
|
|
3634
|
+
user?: components["schemas"]["User"];
|
|
3658
3635
|
/** @description Actor type of whoever added this member, if recorded. */
|
|
3659
3636
|
added_by_actor_type?: string;
|
|
3660
3637
|
/** @description Actor ID of whoever added this member, if recorded. */
|
|
@@ -3677,6 +3654,29 @@ export interface components {
|
|
|
3677
3654
|
/** @description User ID of the org member to add to this project. */
|
|
3678
3655
|
user_id: string;
|
|
3679
3656
|
};
|
|
3657
|
+
/** @description Human identity known to the organization. User records are useful for membership lists, role assignment UIs, attribution, and displaying profile information next to actions. */
|
|
3658
|
+
User: {
|
|
3659
|
+
/** @description Clerk user ID. Stable and globally unique across all orgs. */
|
|
3660
|
+
id: string;
|
|
3661
|
+
/** @description Primary email address from Clerk. */
|
|
3662
|
+
email: string;
|
|
3663
|
+
/** @description User's first name from their Clerk profile. */
|
|
3664
|
+
first_name?: string;
|
|
3665
|
+
/** @description User's last name from their Clerk profile. */
|
|
3666
|
+
last_name?: string;
|
|
3667
|
+
/** @description Profile avatar URL from Clerk (may be a Gravatar or uploaded image). */
|
|
3668
|
+
avatar_url?: string;
|
|
3669
|
+
/**
|
|
3670
|
+
* Format: date-time
|
|
3671
|
+
* @description When the user record was first mirrored into Mobius.
|
|
3672
|
+
*/
|
|
3673
|
+
created_at: string;
|
|
3674
|
+
/**
|
|
3675
|
+
* Format: date-time
|
|
3676
|
+
* @description Timestamp when this user record was last synced from Clerk.
|
|
3677
|
+
*/
|
|
3678
|
+
updated_at: string;
|
|
3679
|
+
};
|
|
3680
3680
|
/**
|
|
3681
3681
|
* @description `pending` — queued, not yet attempted. `processing` — currently being delivered. `delivered` — recipient returned 2xx. `failed` — all retry attempts exhausted.
|
|
3682
3682
|
* @enum {string}
|
|
@@ -3691,713 +3691,152 @@ export interface components {
|
|
|
3691
3691
|
/** @description The customer endpoint Mobius POSTs event payloads to. */
|
|
3692
3692
|
url: string;
|
|
3693
3693
|
/** @description Subscribed event types. Use dot notation (`run.completed`, `run.failed`) or wildcards (`run.*` for all run events). */
|
|
3694
|
-
events: string[];
|
|
3695
|
-
/** @description When false, matching events are not delivered. */
|
|
3696
|
-
enabled: boolean;
|
|
3697
|
-
/** @description User ID of the org member who created this webhook. */
|
|
3698
|
-
created_by?: string;
|
|
3699
|
-
/**
|
|
3700
|
-
|
|
3701
|
-
* @description Timestamp when this webhook was created.
|
|
3702
|
-
*/
|
|
3703
|
-
created_at: string;
|
|
3704
|
-
/**
|
|
3705
|
-
* Format: date-time
|
|
3706
|
-
* @description Timestamp when this webhook was last updated.
|
|
3707
|
-
*/
|
|
3708
|
-
updated_at: string;
|
|
3709
|
-
};
|
|
3710
|
-
WebhookListResponse: {
|
|
3711
|
-
/** @description The list of results for this page. */
|
|
3712
|
-
items?: components["schemas"]["Webhook"][];
|
|
3713
|
-
/** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
|
|
3714
|
-
next_cursor?: string;
|
|
3715
|
-
/** @description Whether additional pages are available. */
|
|
3716
|
-
has_more: boolean;
|
|
3717
|
-
};
|
|
3718
|
-
/** @description One delivery record for a webhook event. The daemon claims pending rows, POSTs the payload, and transitions to `delivered` or retries on failure. A delivery reaches `failed` only after exhausting all 10 retry attempts. */
|
|
3719
|
-
WebhookDelivery: {
|
|
3720
|
-
/** @description Unique identifier for this delivery record. */
|
|
3721
|
-
id: string;
|
|
3722
|
-
/** @description ID of the webhook this delivery belongs to. */
|
|
3723
|
-
webhook_id: string;
|
|
3724
|
-
/** @description Run that triggered the event, when applicable. */
|
|
3725
|
-
run_id?: string;
|
|
3726
|
-
/** @description The event type that triggered this delivery (e.g. `run.completed`). */
|
|
3727
|
-
event_type: string;
|
|
3728
|
-
/** @description Current delivery status: `pending`, `delivered`, or `failed`. */
|
|
3729
|
-
status: components["schemas"]["WebhookDeliveryStatus"];
|
|
3730
|
-
/** @description Number of delivery attempts made so far. Max 10. */
|
|
3731
|
-
attempts: number;
|
|
3732
|
-
/** @description Error message from the most recent failed attempt. */
|
|
3733
|
-
last_error?: string;
|
|
3734
|
-
/**
|
|
3735
|
-
* Format: date-time
|
|
3736
|
-
* @description Timestamp when this delivery was first attempted.
|
|
3737
|
-
*/
|
|
3738
|
-
created_at: string;
|
|
3739
|
-
/**
|
|
3740
|
-
* Format: date-time
|
|
3741
|
-
* @description Timestamp of the successful delivery. Absent until delivered.
|
|
3742
|
-
*/
|
|
3743
|
-
delivered_at?: string;
|
|
3744
|
-
};
|
|
3745
|
-
WebhookDeliveryListResponse: {
|
|
3746
|
-
/** @description The list of results for this page. */
|
|
3747
|
-
items?: components["schemas"]["WebhookDelivery"][];
|
|
3748
|
-
/** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
|
|
3749
|
-
next_cursor?: string;
|
|
3750
|
-
/** @description Whether additional pages are available. */
|
|
3751
|
-
has_more: boolean;
|
|
3752
|
-
};
|
|
3753
|
-
CreateWebhookRequest: {
|
|
3754
|
-
/** @description Human-readable name, unique within the project. */
|
|
3755
|
-
name: string;
|
|
3756
|
-
/** @description The endpoint Mobius will POST event payloads to. May be left empty at creation time so a candidate URL can be tested via the ping endpoint before it is saved; events do not fire for webhooks with an empty URL. */
|
|
3757
|
-
url?: string;
|
|
3758
|
-
/** @description Optional HMAC-SHA256 secret. When set, Mobius signs each POST body and includes `X-Mobius-Signature: sha256=<hex>` in the request headers. */
|
|
3759
|
-
signing_secret?: string;
|
|
3760
|
-
/** @description Event types to subscribe to. Use wildcards for broad subscriptions, e.g. `["run.*"]` for all run events. */
|
|
3761
|
-
events: string[];
|
|
3762
|
-
/** @description Whether the webhook starts enabled. Defaults to true when omitted. */
|
|
3763
|
-
enabled?: boolean;
|
|
3764
|
-
};
|
|
3765
|
-
UpdateWebhookRequest: {
|
|
3766
|
-
/** @description Replacement human-readable name. */
|
|
3767
|
-
name?: string;
|
|
3768
|
-
/** @description Replacement endpoint URL. */
|
|
3769
|
-
url?: string;
|
|
3770
|
-
/** @description Replace the current signing secret. Set to empty string to disable signing. Omit to leave the current secret unchanged. */
|
|
3771
|
-
signing_secret?: string;
|
|
3772
|
-
/** @description Replacement event subscriptions. Replaces the entire current list. */
|
|
3773
|
-
events?: string[];
|
|
3774
|
-
/** @description Set to false to disable delivery without deleting the webhook. */
|
|
3775
|
-
enabled?: boolean;
|
|
3776
|
-
};
|
|
3777
|
-
PingWebhookRequest: {
|
|
3778
|
-
/** @description URL to test. When supplied, the ping is sent to this URL instead of the webhook's saved URL — use this to validate a candidate URL before saving it. When omitted, the webhook's current saved URL is used. */
|
|
3779
|
-
url?: string;
|
|
3780
|
-
};
|
|
3781
|
-
PingWebhookResult: {
|
|
3782
|
-
/** @description True if the target responded with a 2xx status code. */
|
|
3783
|
-
success: boolean;
|
|
3784
|
-
/** @description HTTP status code returned by the target. Absent on network error. */
|
|
3785
|
-
status_code?: number;
|
|
3786
|
-
/** @description Error message if the request could not be completed. */
|
|
3787
|
-
error?: string;
|
|
3788
|
-
/** @description Round-trip latency in milliseconds. */
|
|
3789
|
-
latency_ms?: number;
|
|
3790
|
-
};
|
|
3791
|
-
/**
|
|
3792
|
-
* @description `active` — integration is enabled and usable by workflows. `inactive` — manually disabled; no automatic expiry behavior. `expired` — token/credential has expired (e.g., OAuth token not refreshed).
|
|
3793
|
-
* @enum {string}
|
|
3794
|
-
*/
|
|
3795
|
-
IntegrationStatus: "active" | "inactive" | "expired";
|
|
3796
|
-
/** @description Project-scoped connection to an external provider such as Slack, GitHub, or a model service. Workflows and actions use integrations to find provider configuration without embedding secrets in definitions. */
|
|
3797
|
-
Integration: {
|
|
3798
|
-
/** @description Unique identifier for this integration. */
|
|
3799
|
-
id: string;
|
|
3800
|
-
/** @description Human-readable name, unique per `(project, provider)` tuple. */
|
|
3801
|
-
name: string;
|
|
3802
|
-
/** @description Free-form provider identifier (e.g. `openai`, `slack`, `github`). Immutable after creation. */
|
|
3803
|
-
provider: string;
|
|
3804
|
-
/** @description Provider-specific credential and configuration blob stored as JSON. The shape is provider-defined. */
|
|
3805
|
-
config?: {
|
|
3806
|
-
[key: string]: unknown;
|
|
3807
|
-
};
|
|
3808
|
-
/** @description Current integration state: `connected`, `disconnected`, or `error`. */
|
|
3809
|
-
status: components["schemas"]["IntegrationStatus"];
|
|
3810
|
-
/** @description User ID of the org member who created this integration. */
|
|
3811
|
-
created_by?: string;
|
|
3812
|
-
/**
|
|
3813
|
-
* Format: date-time
|
|
3814
|
-
* @description Timestamp when this integration was created.
|
|
3815
|
-
*/
|
|
3816
|
-
created_at: string;
|
|
3817
|
-
/**
|
|
3818
|
-
* Format: date-time
|
|
3819
|
-
* @description Timestamp when this integration was last updated.
|
|
3820
|
-
*/
|
|
3821
|
-
updated_at: string;
|
|
3822
|
-
};
|
|
3823
|
-
IntegrationListResponse: {
|
|
3824
|
-
/** @description The list of results for this page. */
|
|
3825
|
-
items: components["schemas"]["Integration"][];
|
|
3826
|
-
/** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
|
|
3827
|
-
next_cursor?: string;
|
|
3828
|
-
/** @description Whether additional pages are available. */
|
|
3829
|
-
has_more: boolean;
|
|
3830
|
-
};
|
|
3831
|
-
CreateIntegrationRequest: {
|
|
3832
|
-
/** @description Human-readable name. Must be unique per `(project, provider)` tuple. */
|
|
3833
|
-
name: string;
|
|
3834
|
-
/** @description Provider identifier string (e.g. `openai`, `github`). Immutable after creation. */
|
|
3835
|
-
provider: string;
|
|
3836
|
-
/** @description Sensitive credentials (API keys, tokens, secrets). Stored encrypted and never returned in API responses. */
|
|
3837
|
-
credentials?: {
|
|
3838
|
-
[key: string]: unknown;
|
|
3839
|
-
};
|
|
3840
|
-
/** @description Non-sensitive provider-specific settings (e.g. default bucket, from address). */
|
|
3841
|
-
config?: {
|
|
3842
|
-
[key: string]: unknown;
|
|
3843
|
-
};
|
|
3844
|
-
};
|
|
3845
|
-
UpdateIntegrationRequest: {
|
|
3846
|
-
/** @description Updated display name. */
|
|
3847
|
-
name?: string;
|
|
3848
|
-
/** @description Replacement credentials blob (full replace). Stored encrypted and never returned in API responses. */
|
|
3849
|
-
credentials?: {
|
|
3850
|
-
[key: string]: unknown;
|
|
3851
|
-
};
|
|
3852
|
-
/** @description Replacement config blob (full replace, not merge). */
|
|
3853
|
-
config?: {
|
|
3854
|
-
[key: string]: unknown;
|
|
3855
|
-
};
|
|
3856
|
-
/** @description Replacement integration state: `connected`, `disconnected`, or `error`. */
|
|
3857
|
-
status?: components["schemas"]["IntegrationStatus"];
|
|
3858
|
-
};
|
|
3859
|
-
CopyIntegrationRequest: {
|
|
3860
|
-
/** @description ID of the source project. Must be in the same org. */
|
|
3861
|
-
source_project_id: string;
|
|
3862
|
-
/** @description ID of the integration to copy from the source project. */
|
|
3863
|
-
source_integration_id: string;
|
|
3864
|
-
/** @description Name for the copied integration in the destination project. Defaults to the source integration's name. Required if the source name conflicts with an existing `(provider, name)` in this project. */
|
|
3865
|
-
name?: string;
|
|
3866
|
-
};
|
|
3867
|
-
/** @description Current billing entitlement for an organization. Use it to show plan status, trial/grace timing, renewal behavior, and usage caps that may block workflow execution. */
|
|
3868
|
-
BillingSubscription: {
|
|
3869
|
-
/** @description Unique identifier for this subscription. */
|
|
3870
|
-
id: string;
|
|
3871
|
-
/** @description Active plan: `trial`, `free`, `pro`, or `business`. New orgs start on `trial`; the plan downgrades to `free` when the trial expires. */
|
|
3872
|
-
plan_type: string;
|
|
3873
|
-
/** @description Stripe subscription status: `active`, `trialing`, `past_due`, `canceled`, `unpaid`, or `incomplete`. */
|
|
3874
|
-
status: string;
|
|
3875
|
-
/** @description Number of licensed seats included in the subscription. */
|
|
3876
|
-
seat_count: number;
|
|
3877
|
-
/**
|
|
3878
|
-
* Format: date-time
|
|
3879
|
-
* @description Start of the current billing period.
|
|
3880
|
-
*/
|
|
3881
|
-
current_period_start: string;
|
|
3882
|
-
/**
|
|
3883
|
-
* Format: date-time
|
|
3884
|
-
* @description End of the current billing period. Usage resets at this timestamp.
|
|
3885
|
-
*/
|
|
3886
|
-
current_period_end: string;
|
|
3887
|
-
/**
|
|
3888
|
-
* Format: date-time
|
|
3889
|
-
* @description When the trial period expires. Only set for `trial` plan.
|
|
3890
|
-
*/
|
|
3891
|
-
trial_ends_at?: string;
|
|
3892
|
-
/**
|
|
3893
|
-
* Format: date-time
|
|
3894
|
-
* @description When the post-expiry grace period ends. During grace, the org retains access but is prompted to upgrade.
|
|
3895
|
-
*/
|
|
3896
|
-
grace_ends_at?: string;
|
|
3897
|
-
/** @description Days remaining in the trial. 0 when the trial has ended. */
|
|
3898
|
-
trial_days_remaining: number;
|
|
3899
|
-
/** @description True when fewer than 7 days remain in the trial period. */
|
|
3900
|
-
trial_warning: boolean;
|
|
3901
|
-
/**
|
|
3902
|
-
* Format: int64
|
|
3903
|
-
* @description Maximum usage credits allowed per billing period. Workflow execution is blocked when this cap is reached.
|
|
3904
|
-
*/
|
|
3905
|
-
monthly_credit_cap: number;
|
|
3906
|
-
/** @description Maximum number of job steps allowed per individual workflow run. Default: 10,000 (pro/trial), 50,000 (business). */
|
|
3907
|
-
per_run_step_cap: number;
|
|
3908
|
-
/** @description Percentage levels (1–100) of `monthly_credit_cap` at which usage alert notifications are sent. Up to `max_alert_thresholds` from the plan. */
|
|
3909
|
-
alert_thresholds_percent: number[];
|
|
3910
|
-
/** @description When true, the subscription will not renew at `current_period_end`. */
|
|
3911
|
-
cancel_at_period_end: boolean;
|
|
3912
|
-
/**
|
|
3913
|
-
* Format: date-time
|
|
3914
|
-
* @description Timestamp when this subscription was created.
|
|
3915
|
-
*/
|
|
3916
|
-
created_at: string;
|
|
3917
|
-
/**
|
|
3918
|
-
* Format: date-time
|
|
3919
|
-
* @description Timestamp when this subscription was last updated.
|
|
3920
|
-
*/
|
|
3921
|
-
updated_at: string;
|
|
3922
|
-
};
|
|
3923
|
-
/** @description Purchasable plan configuration exposed to clients before checkout. It explains price, included usage, seat limits, and operational caps so users can compare plans before upgrading. */
|
|
3924
|
-
BillingPlan: {
|
|
3925
|
-
/** @description Plan name — `trial`, `pro`, or `business`. */
|
|
3926
|
-
plan_type: string;
|
|
3927
|
-
/** @description Monthly price in cents (USD). */
|
|
3928
|
-
price_cents: number;
|
|
3929
|
-
/**
|
|
3930
|
-
* Format: int64
|
|
3931
|
-
* @description Usage credits included in the base price.
|
|
3932
|
-
*/
|
|
3933
|
-
included_credits: number;
|
|
3934
|
-
/** @description Maximum org members on this plan. 0 means unlimited. */
|
|
3935
|
-
seat_limit: number;
|
|
3936
|
-
/**
|
|
3937
|
-
* Format: int64
|
|
3938
|
-
* @description Default `monthly_credit_cap` applied to new subscriptions on this plan.
|
|
3939
|
-
*/
|
|
3940
|
-
default_monthly_credit_cap: number;
|
|
3941
|
-
/** @description Default `per_run_step_cap` applied to new subscriptions on this plan. */
|
|
3942
|
-
default_per_run_step_cap: number;
|
|
3943
|
-
/** @description Maximum number of alert thresholds configurable on this plan. */
|
|
3944
|
-
max_alert_thresholds: number;
|
|
3945
|
-
/** @description Trial period length in days. 0 for plans without a trial. */
|
|
3946
|
-
trial_days: number;
|
|
3947
|
-
/** @description When true, a payment method is required to start this plan. */
|
|
3948
|
-
credit_card_required: boolean;
|
|
3949
|
-
};
|
|
3950
|
-
BillingPlanListResponse: {
|
|
3951
|
-
/** @description The list of available plans. */
|
|
3952
|
-
items: components["schemas"]["BillingPlan"][];
|
|
3953
|
-
};
|
|
3954
|
-
/** @description Attribution row for usage generated by a single API key. Useful for identifying which automation or service account is driving billing consumption within the current period. */
|
|
3955
|
-
BillingUsageKeySummary: {
|
|
3956
|
-
/** @description The API key responsible for this usage. */
|
|
3957
|
-
api_key_id: string;
|
|
3958
|
-
/** @description Number of usage records attributed to this key in the current period. */
|
|
3959
|
-
count: number;
|
|
3960
|
-
};
|
|
3961
|
-
/** @description Billing-period usage snapshot for an organization. Use it to show remaining capacity, estimated overage, and which categories or API keys are contributing to spend. */
|
|
3962
|
-
BillingUsageSummary: {
|
|
3963
|
-
/**
|
|
3964
|
-
* Format: date-time
|
|
3965
|
-
* @description Start of the current billing period.
|
|
3966
|
-
*/
|
|
3967
|
-
current_period_start: string;
|
|
3968
|
-
/**
|
|
3969
|
-
* Format: date-time
|
|
3970
|
-
* @description End of the current billing period.
|
|
3971
|
-
*/
|
|
3972
|
-
current_period_end: string;
|
|
3973
|
-
/** @description Total usage credits consumed in the current billing period. */
|
|
3974
|
-
current_usage: number;
|
|
3975
|
-
/** @description Included credits from the plan before overage applies. */
|
|
3976
|
-
included_limit: number;
|
|
3977
|
-
/** @description Number of usage records that exceed the included limit. */
|
|
3978
|
-
overage_calls: number;
|
|
3979
|
-
/** @description Estimated overage cost in cents for the current period. */
|
|
3980
|
-
overage_cost: number;
|
|
3981
|
-
/** @description Usage breakdown by resource category (e.g. `run`, `job`). */
|
|
3982
|
-
by_category: {
|
|
3983
|
-
[key: string]: number;
|
|
3984
|
-
};
|
|
3985
|
-
/** @description Per-API-key usage breakdown for cost attribution. */
|
|
3986
|
-
by_api_key: components["schemas"]["BillingUsageKeySummary"][];
|
|
3987
|
-
};
|
|
3988
|
-
/** @description Customer-facing invoice metadata from Stripe. Clients use invoices to display payment status and link users to hosted invoice or PDF views. */
|
|
3989
|
-
Invoice: {
|
|
3990
|
-
/** @description Stripe invoice ID. */
|
|
3991
|
-
id: string;
|
|
3992
|
-
/** @description Stripe invoice status (`draft`, `open`, `paid`, `void`, `uncollectible`). */
|
|
3993
|
-
status: string;
|
|
3994
|
-
/** @description ISO 4217 currency code (e.g. `usd`). */
|
|
3995
|
-
currency: string;
|
|
3996
|
-
/** @description Total amount due in the smallest currency unit (e.g. cents). */
|
|
3997
|
-
amount_due: number;
|
|
3998
|
-
/** @description Amount already paid against this invoice. */
|
|
3999
|
-
amount_paid: number;
|
|
4000
|
-
/**
|
|
4001
|
-
* Format: uri
|
|
4002
|
-
* @description Stripe-hosted invoice page URL for the customer.
|
|
4003
|
-
*/
|
|
4004
|
-
hosted_invoice_url?: string;
|
|
4005
|
-
/**
|
|
4006
|
-
* Format: uri
|
|
4007
|
-
* @description Direct link to the invoice PDF.
|
|
4008
|
-
*/
|
|
4009
|
-
invoice_pdf?: string;
|
|
4010
|
-
/**
|
|
4011
|
-
* Format: date-time
|
|
4012
|
-
* @description Timestamp when this invoice was created by Stripe.
|
|
4013
|
-
*/
|
|
4014
|
-
created_at: string;
|
|
4015
|
-
};
|
|
4016
|
-
InvoiceListResponse: {
|
|
4017
|
-
/** @description The list of recent invoices, newest first. */
|
|
4018
|
-
items: components["schemas"]["Invoice"][];
|
|
4019
|
-
};
|
|
4020
|
-
CreateCheckoutRequest: {
|
|
4021
|
-
/**
|
|
4022
|
-
* Format: uri
|
|
4023
|
-
* @description URL Stripe redirects to after a successful checkout.
|
|
4024
|
-
*/
|
|
4025
|
-
success_url: string;
|
|
4026
|
-
/**
|
|
4027
|
-
* Format: uri
|
|
4028
|
-
* @description URL Stripe redirects to when the user cancels checkout.
|
|
4029
|
-
*/
|
|
4030
|
-
cancel_url: string;
|
|
4031
|
-
};
|
|
4032
|
-
CreatePortalRequest: {
|
|
4033
|
-
/**
|
|
4034
|
-
* Format: uri
|
|
4035
|
-
* @description URL Stripe redirects to after the user exits the customer portal.
|
|
4036
|
-
*/
|
|
4037
|
-
return_url: string;
|
|
4038
|
-
};
|
|
4039
|
-
BillingURLResult: {
|
|
4040
|
-
/**
|
|
4041
|
-
* Format: uri
|
|
4042
|
-
* @description Stripe-hosted URL to redirect the user's browser to.
|
|
4043
|
-
*/
|
|
4044
|
-
url: string;
|
|
4045
|
-
};
|
|
4046
|
-
UpdateBillingLimitsRequest: {
|
|
4047
|
-
/**
|
|
4048
|
-
* Format: int64
|
|
4049
|
-
* @description New monthly credit ceiling. When reached, workflow execution is blocked until the next billing period.
|
|
4050
|
-
*/
|
|
4051
|
-
monthly_credit_cap?: number;
|
|
4052
|
-
/** @description Maximum job steps per workflow run. Prevents runaway runs from consuming unbounded credits. */
|
|
4053
|
-
per_run_step_cap?: number;
|
|
4054
|
-
/** @description Replacement list of alert threshold percentages (1–100). Replaces the full existing list. Must not exceed the plan's `max_alert_thresholds`. */
|
|
4055
|
-
alert_thresholds_percent?: number[];
|
|
4056
|
-
};
|
|
4057
|
-
/** @description Whether the current user has completed initial organization setup. Use this at app startup to decide whether to route the user into onboarding or the normal workspace experience. */
|
|
4058
|
-
OnboardingStatus: {
|
|
4059
|
-
/** @description Whether the user has completed onboarding and has an org */
|
|
4060
|
-
completed: boolean;
|
|
4061
|
-
/** @description The user's org ID (present only when completed is true) */
|
|
4062
|
-
org_id?: string;
|
|
4063
|
-
/** @description The user's org display name (present only when completed is true) */
|
|
4064
|
-
org_name?: string;
|
|
4065
|
-
};
|
|
4066
|
-
OnboardingResult: {
|
|
4067
|
-
/** @description ID of the newly created (or existing) org */
|
|
4068
|
-
org_id: string;
|
|
4069
|
-
/** @description Display name of the org */
|
|
4070
|
-
org_name: string;
|
|
4071
|
-
};
|
|
4072
|
-
/** @description Operational health snapshot for a project. Use it to power dashboards, detect stuck queues or stale workers, and summarize run throughput and failure rates over a recent window. */
|
|
4073
|
-
ProjectMetrics: {
|
|
4074
|
-
/**
|
|
4075
|
-
* Format: date-time
|
|
4076
|
-
* @description Timestamp when this metrics snapshot was computed.
|
|
4077
|
-
*/
|
|
4078
|
-
generated_at: string;
|
|
4079
|
-
/** @description Rolling window width used for rate and failure metrics. Default is 60 minutes. */
|
|
4080
|
-
window_minutes: number;
|
|
4081
|
-
/**
|
|
4082
|
-
* Format: double
|
|
4083
|
-
* @description Average number of new workflow runs started per minute within the window.
|
|
4084
|
-
*/
|
|
4085
|
-
runs_per_minute: number;
|
|
4086
|
-
/** @description Total number of workflow runs started within the window. */
|
|
4087
|
-
total_runs_window: number;
|
|
4088
|
-
/**
|
|
4089
|
-
* Format: double
|
|
4090
|
-
* @description Fraction of completed runs that ended in `failed` status within the window. Range 0.0–1.0.
|
|
4091
|
-
*/
|
|
4092
|
-
failure_rate: number;
|
|
4093
|
-
/**
|
|
4094
|
-
* Format: double
|
|
4095
|
-
* @description Mean wall-clock duration of completed runs within the window, in seconds.
|
|
4096
|
-
*/
|
|
4097
|
-
avg_run_seconds: number;
|
|
4098
|
-
/**
|
|
4099
|
-
* Format: double
|
|
4100
|
-
* @description 95th-percentile job duration (claim time to terminal state) computed across the 40 most recent completed jobs, in seconds. Use this to detect slow or stuck steps.
|
|
4101
|
-
*/
|
|
4102
|
-
p95_step_seconds: number;
|
|
4103
|
-
/** @description Number of jobs currently in `pending` state waiting to be claimed. */
|
|
4104
|
-
queue_depth: number;
|
|
4105
|
-
/** @description Number of workflow runs currently in `running` or `suspended` state. */
|
|
4106
|
-
running_count: number;
|
|
4107
|
-
/** @description Number of workers whose `last_seen_at` is within the 2-minute staleness threshold. */
|
|
4108
|
-
active_workers: number;
|
|
4109
|
-
/** @description Number of workers whose `last_seen_at` has exceeded the 2-minute staleness threshold. */
|
|
4110
|
-
stale_workers: number;
|
|
4111
|
-
/** @description Map of workflow run status → count across all runs in the project (not windowed). Includes all terminal and in-progress statuses. */
|
|
4112
|
-
status_breakdown: {
|
|
4113
|
-
[key: string]: number;
|
|
4114
|
-
};
|
|
4115
|
-
};
|
|
4116
|
-
PreviewPermissionsRequest: {
|
|
4117
|
-
/** @description Role name assigned as a fallback to service accounts that have no explicit assignment at the time of preview. */
|
|
4118
|
-
service_account_default_role?: string;
|
|
4119
|
-
};
|
|
4120
|
-
EnablePermissionsRequest: {
|
|
4121
|
-
/** @description Fallback role name for service accounts with no existing assignment. Applied only to service accounts not covered by the `assignments` list. */
|
|
4122
|
-
service_account_default_role?: string;
|
|
4123
|
-
/** @description Explicit role assignments to create as part of the enable operation. */
|
|
4124
|
-
assignments?: components["schemas"]["PermissionsAssignmentInput"][];
|
|
4125
|
-
};
|
|
4126
|
-
/** @description Desired role assignment supplied while enabling permissions. Use this to make the initial rollout explicit instead of relying only on default roles for users and service accounts. */
|
|
4127
|
-
PermissionsAssignmentInput: {
|
|
4128
|
-
/**
|
|
4129
|
-
* @description Actor type: `user` or `service_account`.
|
|
4130
|
-
* @enum {string}
|
|
4131
|
-
*/
|
|
4132
|
-
actor_type: "user" | "service_account";
|
|
4133
|
-
/** @description ID of the user or service account. */
|
|
4134
|
-
actor_id: string;
|
|
4135
|
-
/** @description Mutually exclusive with `role_name`. */
|
|
4136
|
-
role_id?: string;
|
|
4137
|
-
/** @description Resolved to a role ID server-side. Mutually exclusive with `role_id`. */
|
|
4138
|
-
role_name?: string;
|
|
4139
|
-
/** @description Scope this assignment to a project. Omit for org-wide. */
|
|
4140
|
-
project_id?: string;
|
|
4141
|
-
} & (unknown | unknown);
|
|
4142
|
-
/** @description Role assignment the server would create during a permissions preview or enable operation. Clients can show these proposals before enforcing permissions so admins understand the blast radius. */
|
|
4143
|
-
PermissionsAssignmentProposal: {
|
|
4144
|
-
/**
|
|
4145
|
-
* @description Actor type: `user` or `service_account`.
|
|
4146
|
-
* @enum {string}
|
|
4147
|
-
*/
|
|
4148
|
-
actor_type: "user" | "service_account";
|
|
4149
|
-
/** @description ID of the user or service account. */
|
|
4150
|
-
actor_id: string;
|
|
4151
|
-
/** @description ID of the role that would be assigned. */
|
|
4152
|
-
role_id: string;
|
|
4153
|
-
/** @description Name of the role that would be assigned. */
|
|
4154
|
-
role_name: string;
|
|
4155
|
-
/** @description Project scope for the assignment. Null for org-wide assignments. */
|
|
4156
|
-
project_id?: string | null;
|
|
4157
|
-
};
|
|
4158
|
-
/** @description Current or proposed permissions state, including the full set of role assignments. */
|
|
4159
|
-
PermissionsPlan: {
|
|
4160
|
-
/** @description Whether enforcement is currently (or will be after enable) active. */
|
|
4161
|
-
permissions_enabled: boolean;
|
|
4162
|
-
/** @description The set of role assignments that will be created on enable. */
|
|
4163
|
-
assignments: components["schemas"]["PermissionsAssignmentProposal"][];
|
|
4164
|
-
};
|
|
4165
|
-
/** @description Lightweight org-level switch showing whether permission enforcement is active. Use it to decide whether role assignments are informational or actually gate API access. */
|
|
4166
|
-
PermissionsState: {
|
|
4167
|
-
/** @description Whether enforcement is currently active for the org. */
|
|
4168
|
-
permissions_enabled: boolean;
|
|
4169
|
-
};
|
|
4170
|
-
/** @description Named bundle of permissions assignable to users or service accounts. Roles let admins grant workflow, project, and automation capabilities consistently without editing every actor individually. */
|
|
4171
|
-
Role: {
|
|
4172
|
-
/** @description Unique identifier for this role. */
|
|
4173
|
-
id: string;
|
|
4174
|
-
/** @description Scoping project. Empty for org-wide roles. */
|
|
4175
|
-
project_id?: string;
|
|
4176
|
-
/** @description Human-readable role name, unique within org+project scope. */
|
|
4177
|
-
name: string;
|
|
4178
|
-
/** @description Optional human-readable description of what this role grants. */
|
|
4179
|
-
description: string;
|
|
4180
|
-
/** @description Permission strings granted by this role (e.g. "mobius.job.claim"). */
|
|
4181
|
-
permissions: string[];
|
|
4182
|
-
/** @description True for built-in platform roles that cannot be modified or deleted. */
|
|
4183
|
-
system_defined: boolean;
|
|
4184
|
-
/**
|
|
4185
|
-
* Format: date-time
|
|
4186
|
-
* @description Timestamp when this role was created.
|
|
4187
|
-
*/
|
|
4188
|
-
created_at: string;
|
|
4189
|
-
/**
|
|
4190
|
-
* Format: date-time
|
|
4191
|
-
* @description Timestamp when this role was last updated.
|
|
4192
|
-
*/
|
|
4193
|
-
updated_at: string;
|
|
4194
|
-
};
|
|
4195
|
-
/** @description Binding between an actor and a role, optionally scoped to a project. Use assignments to explain why a user or service account has access and to audit who granted it. */
|
|
4196
|
-
RoleAssignment: {
|
|
4197
|
-
/** @description Unique identifier for this role assignment. */
|
|
4198
|
-
id: string;
|
|
4199
|
-
/**
|
|
4200
|
-
* @description Type of actor this assignment applies to: `user` or `service_account`.
|
|
4201
|
-
* @enum {string}
|
|
4202
|
-
*/
|
|
4203
|
-
actor_type: "user" | "service_account";
|
|
4204
|
-
/** @description User ID or service account ID receiving the role. */
|
|
4205
|
-
actor_id: string;
|
|
4206
|
-
/** @description ID of the assigned role. */
|
|
4207
|
-
role_id: string;
|
|
4208
|
-
/** @description Name of the assigned role. */
|
|
4209
|
-
role_name: string;
|
|
4210
|
-
/** @description Set for project-scoped assignments; empty for org-wide. */
|
|
4211
|
-
project_id?: string;
|
|
4212
|
-
/** @description Actor type of the caller who created this assignment. */
|
|
4213
|
-
granted_by_actor_type?: string;
|
|
4214
|
-
/** @description Actor ID of the caller who created this assignment. */
|
|
4215
|
-
granted_by_actor_id?: string;
|
|
4216
|
-
/**
|
|
4217
|
-
* Format: date-time
|
|
4218
|
-
* @description Timestamp when this assignment was created.
|
|
4219
|
-
*/
|
|
4220
|
-
created_at: string;
|
|
4221
|
-
};
|
|
4222
|
-
RoleListResponse: {
|
|
4223
|
-
/** @description The list of results for this page. */
|
|
4224
|
-
items: components["schemas"]["Role"][];
|
|
4225
|
-
};
|
|
4226
|
-
RoleAssignmentListResponse: {
|
|
4227
|
-
/** @description The list of results for this page. */
|
|
4228
|
-
items: components["schemas"]["RoleAssignment"][];
|
|
4229
|
-
};
|
|
4230
|
-
CreateRoleRequest: {
|
|
4231
|
-
/** @description Project this role belongs to. Custom roles are always project-scoped. */
|
|
4232
|
-
project_id: string;
|
|
4233
|
-
/** @description Unique name within the project. */
|
|
4234
|
-
name: string;
|
|
4235
|
-
/** @description Optional human-readable description of what this role grants. */
|
|
4236
|
-
description?: string;
|
|
4237
|
-
/** @description Permission strings to include (e.g. "mobius.workflow.create"). */
|
|
4238
|
-
permissions: string[];
|
|
4239
|
-
};
|
|
4240
|
-
UpdateRoleRequest: {
|
|
4241
|
-
/** @description Replacement description. */
|
|
4242
|
-
description?: string;
|
|
4243
|
-
/** @description Replaces the existing permissions array entirely. */
|
|
4244
|
-
permissions?: string[];
|
|
4245
|
-
};
|
|
4246
|
-
CreateRoleAssignmentRequest: {
|
|
4247
|
-
/**
|
|
4248
|
-
* @description Type of actor to assign the role to: `user` or `service_account`.
|
|
4249
|
-
* @enum {string}
|
|
4250
|
-
*/
|
|
4251
|
-
actor_type: "user" | "service_account";
|
|
4252
|
-
/** @description User ID or service account ID to assign the role to. */
|
|
4253
|
-
actor_id: string;
|
|
4254
|
-
/** @description Mutually exclusive with `role_name`. */
|
|
4255
|
-
role_id?: string;
|
|
4256
|
-
/** @description Resolved to a role ID server-side. Mutually exclusive with `role_id`. */
|
|
4257
|
-
role_name?: string;
|
|
4258
|
-
/** @description Scope this assignment to a project. Omit for org-wide assignment. */
|
|
4259
|
-
project_id?: string;
|
|
4260
|
-
} & (unknown | unknown);
|
|
4261
|
-
/** @description Human identity known to the organization. User records are useful for membership lists, role assignment UIs, attribution, and displaying profile information next to actions. */
|
|
4262
|
-
User: {
|
|
4263
|
-
/** @description Clerk user ID. Stable and globally unique across all orgs. */
|
|
4264
|
-
id: string;
|
|
4265
|
-
/** @description Primary email address from Clerk. */
|
|
4266
|
-
email: string;
|
|
4267
|
-
/** @description User's first name from their Clerk profile. */
|
|
4268
|
-
first_name?: string;
|
|
4269
|
-
/** @description User's last name from their Clerk profile. */
|
|
4270
|
-
last_name?: string;
|
|
4271
|
-
/** @description Profile avatar URL from Clerk (may be a Gravatar or uploaded image). */
|
|
4272
|
-
avatar_url?: string;
|
|
4273
|
-
/**
|
|
4274
|
-
* Format: date-time
|
|
4275
|
-
* @description When the user record was first mirrored into Mobius.
|
|
4276
|
-
*/
|
|
4277
|
-
created_at: string;
|
|
4278
|
-
/**
|
|
4279
|
-
* Format: date-time
|
|
4280
|
-
* @description Timestamp when this user record was last synced from Clerk.
|
|
4281
|
-
*/
|
|
4282
|
-
updated_at: string;
|
|
4283
|
-
};
|
|
4284
|
-
/**
|
|
4285
|
-
* @description One of the built-in system roles: `Owner`, `Admin`, `Operator`, `Worker`, or `Viewer`. These are seeded at startup and cannot be deleted. `Owner` and `Admin` bypass project-member visibility for restricted projects.
|
|
4286
|
-
* @enum {string}
|
|
4287
|
-
*/
|
|
4288
|
-
SystemRoleName: "Owner" | "Admin" | "Operator" | "Worker" | "Viewer";
|
|
4289
|
-
/** @description Top-level account boundary for users, projects, billing, roles, and shared settings. Use the org to understand default access policy and the handle/name shown across the workspace. */
|
|
4290
|
-
Org: {
|
|
4291
|
-
/** @description Unique identifier for this organization. */
|
|
4292
|
-
id: string;
|
|
4293
|
-
/** @description Human-readable org name. */
|
|
4294
|
-
name: string;
|
|
4295
|
-
/** @description URL-safe slug used in API routes and display. Unique across all orgs. */
|
|
4296
|
-
handle: string;
|
|
4297
|
-
/** @description Arbitrary key-value metadata stored alongside the org. */
|
|
4298
|
-
metadata?: {
|
|
4299
|
-
[key: string]: unknown;
|
|
4300
|
-
};
|
|
4301
|
-
/** @description System-role name assigned at org scope to new org members. Defaults to `Operator`. */
|
|
4302
|
-
default_member_role?: components["schemas"]["SystemRoleName"];
|
|
4303
|
-
/**
|
|
4304
|
-
* @description Access mode applied to newly-created projects when the caller does not pass one explicitly: `org_open` or `restricted`. Changing this only affects future projects.
|
|
4305
|
-
* @enum {string}
|
|
4306
|
-
*/
|
|
4307
|
-
default_project_access_mode?: "org_open" | "restricted";
|
|
3694
|
+
events: string[];
|
|
3695
|
+
/** @description When false, matching events are not delivered. */
|
|
3696
|
+
enabled: boolean;
|
|
3697
|
+
/** @description User ID of the org member who created this webhook. */
|
|
3698
|
+
created_by?: string;
|
|
3699
|
+
/** @description Resource tags applied to this webhook. */
|
|
3700
|
+
tags?: components["schemas"]["TagMap"];
|
|
4308
3701
|
/**
|
|
4309
3702
|
* Format: date-time
|
|
4310
|
-
* @description Timestamp when this
|
|
3703
|
+
* @description Timestamp when this webhook was created.
|
|
4311
3704
|
*/
|
|
4312
3705
|
created_at: string;
|
|
4313
3706
|
/**
|
|
4314
3707
|
* Format: date-time
|
|
4315
|
-
* @description Timestamp when this
|
|
3708
|
+
* @description Timestamp when this webhook was last updated.
|
|
4316
3709
|
*/
|
|
4317
3710
|
updated_at: string;
|
|
4318
3711
|
};
|
|
4319
|
-
|
|
3712
|
+
WebhookListResponse: {
|
|
4320
3713
|
/** @description The list of results for this page. */
|
|
4321
|
-
items
|
|
4322
|
-
/** @description Whether additional pages are available. */
|
|
4323
|
-
has_more?: boolean;
|
|
3714
|
+
items?: components["schemas"]["Webhook"][];
|
|
4324
3715
|
/** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
|
|
4325
3716
|
next_cursor?: string;
|
|
3717
|
+
/** @description Whether additional pages are available. */
|
|
3718
|
+
has_more: boolean;
|
|
4326
3719
|
};
|
|
4327
|
-
|
|
4328
|
-
|
|
4329
|
-
|
|
4330
|
-
/** @description URL-safe slug. Must be globally unique across all orgs. */
|
|
4331
|
-
handle: string;
|
|
4332
|
-
/** @description Arbitrary metadata to attach to the organization. */
|
|
4333
|
-
metadata?: {
|
|
4334
|
-
[key: string]: unknown;
|
|
4335
|
-
};
|
|
4336
|
-
};
|
|
4337
|
-
UpdateOrgRequest: {
|
|
4338
|
-
/** @description Must be non-empty if provided. */
|
|
4339
|
-
name?: string;
|
|
4340
|
-
/** @description Must be non-empty if provided. Changing the handle affects all API route URLs for this org. */
|
|
4341
|
-
handle?: string;
|
|
4342
|
-
/** @description Replacement metadata. */
|
|
4343
|
-
metadata?: {
|
|
4344
|
-
[key: string]: unknown;
|
|
4345
|
-
};
|
|
4346
|
-
/** @description System-role name assigned to new org members at org scope. */
|
|
4347
|
-
default_member_role?: components["schemas"]["SystemRoleName"];
|
|
4348
|
-
/**
|
|
4349
|
-
* @description Access mode applied to newly-created projects: `org_open` or `restricted`.
|
|
4350
|
-
* @enum {string}
|
|
4351
|
-
*/
|
|
4352
|
-
default_project_access_mode?: "org_open" | "restricted";
|
|
4353
|
-
};
|
|
4354
|
-
/** @description User's membership in an organization. Use this record to show who belongs to the org, what their broad org role is, and any embedded user profile needed for member management. */
|
|
4355
|
-
OrgMember: {
|
|
4356
|
-
/** @description Unique identifier for this membership record. */
|
|
3720
|
+
/** @description One delivery record for a webhook event. The daemon claims pending rows, POSTs the payload, and transitions to `delivered` or retries on failure. A delivery reaches `failed` only after exhausting all 10 retry attempts. */
|
|
3721
|
+
WebhookDelivery: {
|
|
3722
|
+
/** @description Unique identifier for this delivery record. */
|
|
4357
3723
|
id: string;
|
|
4358
|
-
/** @description ID of the
|
|
4359
|
-
|
|
4360
|
-
/**
|
|
4361
|
-
|
|
4362
|
-
|
|
4363
|
-
|
|
4364
|
-
|
|
3724
|
+
/** @description ID of the webhook this delivery belongs to. */
|
|
3725
|
+
webhook_id: string;
|
|
3726
|
+
/** @description Run that triggered the event, when applicable. */
|
|
3727
|
+
run_id?: string;
|
|
3728
|
+
/** @description The event type that triggered this delivery (e.g. `run.completed`). */
|
|
3729
|
+
event_type: string;
|
|
3730
|
+
/** @description Current delivery status: `pending`, `delivered`, or `failed`. */
|
|
3731
|
+
status: components["schemas"]["WebhookDeliveryStatus"];
|
|
3732
|
+
/** @description Number of delivery attempts made so far. Max 10. */
|
|
3733
|
+
attempts: number;
|
|
3734
|
+
/** @description Error message from the most recent failed attempt. */
|
|
3735
|
+
last_error?: string;
|
|
4365
3736
|
/**
|
|
4366
3737
|
* Format: date-time
|
|
4367
|
-
* @description Timestamp when this
|
|
3738
|
+
* @description Timestamp when this delivery was first attempted.
|
|
4368
3739
|
*/
|
|
4369
3740
|
created_at: string;
|
|
4370
3741
|
/**
|
|
4371
3742
|
* Format: date-time
|
|
4372
|
-
* @description Timestamp
|
|
3743
|
+
* @description Timestamp of the successful delivery. Absent until delivered.
|
|
4373
3744
|
*/
|
|
4374
|
-
|
|
4375
|
-
/** @description Embedded user profile for this organization member. */
|
|
4376
|
-
user?: components["schemas"]["User"];
|
|
3745
|
+
delivered_at?: string;
|
|
4377
3746
|
};
|
|
4378
|
-
|
|
3747
|
+
WebhookDeliveryListResponse: {
|
|
4379
3748
|
/** @description The list of results for this page. */
|
|
4380
|
-
items
|
|
4381
|
-
/** @description Whether additional pages are available. */
|
|
4382
|
-
has_more?: boolean;
|
|
3749
|
+
items?: components["schemas"]["WebhookDelivery"][];
|
|
4383
3750
|
/** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
|
|
4384
3751
|
next_cursor?: string;
|
|
3752
|
+
/** @description Whether additional pages are available. */
|
|
3753
|
+
has_more: boolean;
|
|
4385
3754
|
};
|
|
4386
|
-
|
|
4387
|
-
/** @description
|
|
4388
|
-
|
|
3755
|
+
CreateWebhookRequest: {
|
|
3756
|
+
/** @description Human-readable name, unique within the project. */
|
|
3757
|
+
name: string;
|
|
3758
|
+
/** @description The endpoint Mobius will POST event payloads to. May be left empty at creation time so a candidate URL can be tested via the ping endpoint before it is saved; events do not fire for webhooks with an empty URL. */
|
|
3759
|
+
url?: string;
|
|
3760
|
+
/** @description Optional HMAC-SHA256 secret. When set, Mobius signs each POST body and includes `X-Mobius-Signature: sha256=<hex>` in the request headers. */
|
|
3761
|
+
signing_secret?: string;
|
|
3762
|
+
/** @description Event types to subscribe to. Use wildcards for broad subscriptions, e.g. `["run.*"]` for all run events. */
|
|
3763
|
+
events: string[];
|
|
3764
|
+
/** @description Whether the webhook starts enabled. Defaults to true when omitted. */
|
|
3765
|
+
enabled?: boolean;
|
|
3766
|
+
/** @description Initial tag set. */
|
|
3767
|
+
tags?: components["schemas"]["TagMap"];
|
|
3768
|
+
};
|
|
3769
|
+
UpdateWebhookRequest: {
|
|
3770
|
+
/** @description Replacement human-readable name. */
|
|
3771
|
+
name?: string;
|
|
3772
|
+
/** @description Replacement endpoint URL. */
|
|
3773
|
+
url?: string;
|
|
3774
|
+
/** @description Replace the current signing secret. Set to empty string to disable signing. Omit to leave the current secret unchanged. */
|
|
3775
|
+
signing_secret?: string;
|
|
3776
|
+
/** @description Replacement event subscriptions. Replaces the entire current list. */
|
|
3777
|
+
events?: string[];
|
|
3778
|
+
/** @description Set to false to disable delivery without deleting the webhook. */
|
|
3779
|
+
enabled?: boolean;
|
|
3780
|
+
/** @description When supplied, replaces the user tag set on the webhook. System tags (`mobius:*`) are preserved. */
|
|
3781
|
+
tags?: components["schemas"]["TagMap"];
|
|
3782
|
+
};
|
|
3783
|
+
PingWebhookRequest: {
|
|
3784
|
+
/** @description URL to test. When supplied, the ping is sent to this URL instead of the webhook's saved URL — use this to validate a candidate URL before saving it. When omitted, the webhook's current saved URL is used. */
|
|
3785
|
+
url?: string;
|
|
3786
|
+
};
|
|
3787
|
+
PingWebhookResult: {
|
|
3788
|
+
/** @description True if the target responded with a 2xx status code. */
|
|
3789
|
+
success: boolean;
|
|
3790
|
+
/** @description HTTP status code returned by the target. Absent on network error. */
|
|
3791
|
+
status_code?: number;
|
|
3792
|
+
/** @description Error message if the request could not be completed. */
|
|
3793
|
+
error?: string;
|
|
3794
|
+
/** @description Round-trip latency in milliseconds. */
|
|
3795
|
+
latency_ms?: number;
|
|
3796
|
+
};
|
|
3797
|
+
/** @description Operational health snapshot for a project. Use it to power dashboards, detect stuck queues or stale workers, and summarize run throughput and failure rates over a recent window. */
|
|
3798
|
+
ProjectMetrics: {
|
|
4389
3799
|
/**
|
|
4390
|
-
*
|
|
4391
|
-
* @
|
|
3800
|
+
* Format: date-time
|
|
3801
|
+
* @description Timestamp when this metrics snapshot was computed.
|
|
4392
3802
|
*/
|
|
4393
|
-
|
|
4394
|
-
|
|
4395
|
-
|
|
3803
|
+
generated_at: string;
|
|
3804
|
+
/** @description Rolling window width used for rate and failure metrics. Default is 60 minutes. */
|
|
3805
|
+
window_minutes: number;
|
|
4396
3806
|
/**
|
|
4397
|
-
*
|
|
4398
|
-
* @
|
|
3807
|
+
* Format: double
|
|
3808
|
+
* @description Average number of new workflow runs started per minute within the window.
|
|
3809
|
+
*/
|
|
3810
|
+
runs_per_minute: number;
|
|
3811
|
+
/** @description Total number of workflow runs started within the window. */
|
|
3812
|
+
total_runs_window: number;
|
|
3813
|
+
/**
|
|
3814
|
+
* Format: double
|
|
3815
|
+
* @description Fraction of completed runs that ended in `failed` status within the window. Range 0.0–1.0.
|
|
3816
|
+
*/
|
|
3817
|
+
failure_rate: number;
|
|
3818
|
+
/**
|
|
3819
|
+
* Format: double
|
|
3820
|
+
* @description Mean wall-clock duration of completed runs within the window, in seconds.
|
|
3821
|
+
*/
|
|
3822
|
+
avg_run_seconds: number;
|
|
3823
|
+
/**
|
|
3824
|
+
* Format: double
|
|
3825
|
+
* @description 95th-percentile job duration (claim time to terminal state) computed across the 40 most recent completed jobs, in seconds. Use this to detect slow or stuck steps.
|
|
4399
3826
|
*/
|
|
4400
|
-
|
|
3827
|
+
p95_step_seconds: number;
|
|
3828
|
+
/** @description Number of jobs currently in `pending` state waiting to be claimed. */
|
|
3829
|
+
queue_depth: number;
|
|
3830
|
+
/** @description Number of workflow runs currently in the `active` lifecycle. */
|
|
3831
|
+
running_count: number;
|
|
3832
|
+
/** @description Number of workers whose `last_seen_at` is within the 2-minute staleness threshold. */
|
|
3833
|
+
active_workers: number;
|
|
3834
|
+
/** @description Number of workers whose `last_seen_at` has exceeded the 2-minute staleness threshold. */
|
|
3835
|
+
stale_workers: number;
|
|
3836
|
+
/** @description Map of workflow run status → count across all runs in the project (not windowed). Includes all terminal and in-progress statuses. */
|
|
3837
|
+
status_breakdown: {
|
|
3838
|
+
[key: string]: number;
|
|
3839
|
+
};
|
|
4401
3840
|
};
|
|
4402
3841
|
InteractionListResponse: {
|
|
4403
3842
|
/** @description The list of results for this page. */
|
|
@@ -4431,7 +3870,7 @@ export interface components {
|
|
|
4431
3870
|
*/
|
|
4432
3871
|
expires_at?: string;
|
|
4433
3872
|
};
|
|
4434
|
-
/** @description Creates a run-backed interaction. Completion delivers `signal_name` to `run_id` so a
|
|
3873
|
+
/** @description Creates a run-backed interaction. Completion delivers `signal_name` to `run_id` so a waiting run path can resume. */
|
|
4435
3874
|
CreateRunBackedInteractionRequest: {
|
|
4436
3875
|
/** @description ID of the workflow run to resume when this interaction is completed. */
|
|
4437
3876
|
run_id: string;
|
|
@@ -4463,11 +3902,6 @@ export interface components {
|
|
|
4463
3902
|
/** @description Optional free-text comment accompanying the response. */
|
|
4464
3903
|
comment?: string;
|
|
4465
3904
|
};
|
|
4466
|
-
/** @description Start of the Slack OAuth installation flow. Redirect users to the authorize URL when they want to connect a Slack workspace to a project. */
|
|
4467
|
-
SlackInstall: {
|
|
4468
|
-
/** @description The Slack OAuth authorize URL to redirect the user to. */
|
|
4469
|
-
authorize_url: string;
|
|
4470
|
-
};
|
|
4471
3905
|
/** @description Project-scoped collection of users used as an interaction target. Groups let workflows route approvals, reviews, and input requests to a team by handle rather than hard-coding individual users. */
|
|
4472
3906
|
Group: {
|
|
4473
3907
|
/** @description Unique identifier for this group. */
|
|
@@ -4605,6 +4039,8 @@ export interface components {
|
|
|
4605
4039
|
status: components["schemas"]["AgentStatus"];
|
|
4606
4040
|
/** @description Current agent presence: `online`, `offline`, or `unknown`. */
|
|
4607
4041
|
presence: components["schemas"]["AgentPresence"];
|
|
4042
|
+
/** @description Resource tags applied to this agent. */
|
|
4043
|
+
tags?: components["schemas"]["TagMap"];
|
|
4608
4044
|
/**
|
|
4609
4045
|
* Format: date-time
|
|
4610
4046
|
* @description Timestamp when this agent was created.
|
|
@@ -4681,6 +4117,8 @@ export interface components {
|
|
|
4681
4117
|
config?: {
|
|
4682
4118
|
[key: string]: unknown;
|
|
4683
4119
|
};
|
|
4120
|
+
/** @description Initial tag set. */
|
|
4121
|
+
tags?: components["schemas"]["TagMap"];
|
|
4684
4122
|
};
|
|
4685
4123
|
UpdateAgentRequest: {
|
|
4686
4124
|
/** @description Replacement service account. Must be active and belong to the same project. */
|
|
@@ -4701,6 +4139,8 @@ export interface components {
|
|
|
4701
4139
|
};
|
|
4702
4140
|
/** @description Replacement agent status: `active` or `disabled`. */
|
|
4703
4141
|
status?: components["schemas"]["AgentStatus"];
|
|
4142
|
+
/** @description When supplied, replaces the user tag set on the agent. System tags (`mobius:*`) are preserved. */
|
|
4143
|
+
tags?: components["schemas"]["TagMap"];
|
|
4704
4144
|
};
|
|
4705
4145
|
CreateAgentSessionRequest: {
|
|
4706
4146
|
/** @description Connection mechanism identifier (e.g. "sse", "polling"). */
|
|
@@ -4710,68 +4150,6 @@ export interface components {
|
|
|
4710
4150
|
[key: string]: unknown;
|
|
4711
4151
|
};
|
|
4712
4152
|
};
|
|
4713
|
-
/**
|
|
4714
|
-
* @description `active` allows authentication and job claims; `disabled` blocks them but preserves the record and its assignments.
|
|
4715
|
-
* @enum {string}
|
|
4716
|
-
*/
|
|
4717
|
-
ServiceAccountStatus: "active" | "disabled";
|
|
4718
|
-
/** @description Non-human identity used by automation, agents, and API keys. Service accounts make ownership, permissions, and credential rotation explicit without tying machine access to a human user. */
|
|
4719
|
-
ServiceAccount: {
|
|
4720
|
-
/** @description Unique identifier for this service account. */
|
|
4721
|
-
id: string;
|
|
4722
|
-
/** @description Human-readable name for this service account. Immutable after creation. */
|
|
4723
|
-
name: string;
|
|
4724
|
-
/** @description Optional human-readable description. */
|
|
4725
|
-
description?: string;
|
|
4726
|
-
/** @description Current service account status: `active` or `disabled`. */
|
|
4727
|
-
status: components["schemas"]["ServiceAccountStatus"];
|
|
4728
|
-
/** @description Optional org member responsible for this service account. */
|
|
4729
|
-
owner_user_id?: string;
|
|
4730
|
-
/** @description Arbitrary key-value metadata. Subject to size and nesting depth limits. */
|
|
4731
|
-
metadata?: {
|
|
4732
|
-
[key: string]: unknown;
|
|
4733
|
-
};
|
|
4734
|
-
/**
|
|
4735
|
-
* Format: date-time
|
|
4736
|
-
* @description Timestamp when this service account was created.
|
|
4737
|
-
*/
|
|
4738
|
-
created_at: string;
|
|
4739
|
-
/**
|
|
4740
|
-
* Format: date-time
|
|
4741
|
-
* @description Timestamp when this service account was last updated.
|
|
4742
|
-
*/
|
|
4743
|
-
updated_at: string;
|
|
4744
|
-
};
|
|
4745
|
-
ServiceAccountListResponse: {
|
|
4746
|
-
/** @description The list of results for this page. */
|
|
4747
|
-
items: components["schemas"]["ServiceAccount"][];
|
|
4748
|
-
};
|
|
4749
|
-
CreateServiceAccountRequest: {
|
|
4750
|
-
/** @description Human-readable name for this service account. Immutable after creation. */
|
|
4751
|
-
name: string;
|
|
4752
|
-
/** @description Optional human-readable description. */
|
|
4753
|
-
description?: string;
|
|
4754
|
-
/** @description Org member responsible for this service account. */
|
|
4755
|
-
owner_user_id?: string;
|
|
4756
|
-
/** @description Arbitrary metadata to attach to the service account. */
|
|
4757
|
-
metadata?: {
|
|
4758
|
-
[key: string]: unknown;
|
|
4759
|
-
};
|
|
4760
|
-
/** @description One or more role IDs to assign at creation time. All assignments are created atomically with the service account. Requires `mobius.permission.manage`. Each role must belong to this project or be org-scoped (project_id empty). */
|
|
4761
|
-
role_ids?: string[];
|
|
4762
|
-
};
|
|
4763
|
-
UpdateServiceAccountRequest: {
|
|
4764
|
-
/** @description Replacement description. */
|
|
4765
|
-
description?: string;
|
|
4766
|
-
/** @description Replacement service account status: `active` or `disabled`. */
|
|
4767
|
-
status?: components["schemas"]["ServiceAccountStatus"];
|
|
4768
|
-
/** @description ID of the org member responsible for this service account. */
|
|
4769
|
-
owner_user_id?: string;
|
|
4770
|
-
/** @description Replacement metadata. */
|
|
4771
|
-
metadata?: {
|
|
4772
|
-
[key: string]: unknown;
|
|
4773
|
-
};
|
|
4774
|
-
};
|
|
4775
4153
|
/** @description Published workflow exposed as an invokable tool. Clients can use this definition to list available tools and render input forms from the JSON Schema before starting a run. */
|
|
4776
4154
|
ToolDefinition: {
|
|
4777
4155
|
/** @description Tool name (workflow handle). Stable across publish/unpublish cycles. */
|
|
@@ -4792,7 +4170,7 @@ export interface components {
|
|
|
4792
4170
|
input?: {
|
|
4793
4171
|
[key: string]: unknown;
|
|
4794
4172
|
};
|
|
4795
|
-
/** @description How long (in seconds) to wait for synchronous completion. Default 30, max 120. If the run does not complete within this window the response is 202 with status
|
|
4173
|
+
/** @description How long (in seconds) to wait for synchronous completion. Default 30, max 120. If the run does not complete within this window the response is 202 with status active. */
|
|
4796
4174
|
timeout_seconds?: number;
|
|
4797
4175
|
};
|
|
4798
4176
|
/** @description Status envelope for a tool invocation backed by a workflow run. Use it to poll asynchronous work, read completed output, or surface failure details to the caller. */
|
|
@@ -4800,10 +4178,10 @@ export interface components {
|
|
|
4800
4178
|
/** @description Unique run identifier for polling. */
|
|
4801
4179
|
run_id: string;
|
|
4802
4180
|
/**
|
|
4803
|
-
* @description
|
|
4181
|
+
* @description Workflow run lifecycle: `active`, `completed`, or `failed`.
|
|
4804
4182
|
* @enum {string}
|
|
4805
4183
|
*/
|
|
4806
|
-
status: "
|
|
4184
|
+
status: "active" | "completed" | "failed";
|
|
4807
4185
|
/** @description Run output. Present when status is "completed". */
|
|
4808
4186
|
output?: {
|
|
4809
4187
|
[key: string]: unknown;
|
|
@@ -4917,12 +4295,22 @@ export interface components {
|
|
|
4917
4295
|
CursorParam: string;
|
|
4918
4296
|
/** @description Maximum number of items to return */
|
|
4919
4297
|
LimitParam: number;
|
|
4298
|
+
/**
|
|
4299
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
4300
|
+
*
|
|
4301
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
4302
|
+
*
|
|
4303
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
4304
|
+
*/
|
|
4305
|
+
TagFilterParam: string[];
|
|
4920
4306
|
/** @description Optional project scope for this request. When `project_id` is provided, the API key operation is resolved in that project's permission context. When `project_id` is omitted, the request is treated as org-level and project-pinned keys are excluded. */
|
|
4921
4307
|
APIKeyProjectIDParam: components["schemas"]["ProjectID"];
|
|
4922
4308
|
/** @description Trigger target ID. */
|
|
4923
4309
|
TriggerTargetIDParam: string;
|
|
4924
4310
|
/** @description Group ID or handle. */
|
|
4925
4311
|
GroupParam: string;
|
|
4312
|
+
/** @description Widget ID within the dashboard. */
|
|
4313
|
+
widget_id: string;
|
|
4926
4314
|
};
|
|
4927
4315
|
requestBodies: never;
|
|
4928
4316
|
headers: never;
|
|
@@ -4937,6 +4325,14 @@ export interface operations {
|
|
|
4937
4325
|
kind?: "dm" | "channel";
|
|
4938
4326
|
/** @description Filter by private flag. */
|
|
4939
4327
|
private?: boolean;
|
|
4328
|
+
/**
|
|
4329
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
4330
|
+
*
|
|
4331
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
4332
|
+
*
|
|
4333
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
4334
|
+
*/
|
|
4335
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
4940
4336
|
/** @description Cursor for pagination (opaque string from previous response) */
|
|
4941
4337
|
cursor?: components["parameters"]["CursorParam"];
|
|
4942
4338
|
/** @description Maximum number of items to return */
|
|
@@ -5317,7 +4713,7 @@ export interface operations {
|
|
|
5317
4713
|
actor_type?: string;
|
|
5318
4714
|
/** @description Filter by actor ID */
|
|
5319
4715
|
actor_id?: string;
|
|
5320
|
-
/** @description Filter by action (create, update, delete) */
|
|
4716
|
+
/** @description Filter by action (create, update, delete, archive, restore) */
|
|
5321
4717
|
action?: string;
|
|
5322
4718
|
/** @description Filter to entries created after this timestamp */
|
|
5323
4719
|
created_after?: string;
|
|
@@ -5349,6 +4745,14 @@ export interface operations {
|
|
|
5349
4745
|
listWorkflows: {
|
|
5350
4746
|
parameters: {
|
|
5351
4747
|
query?: {
|
|
4748
|
+
/**
|
|
4749
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
4750
|
+
*
|
|
4751
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
4752
|
+
*
|
|
4753
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
4754
|
+
*/
|
|
4755
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
5352
4756
|
/** @description Opaque pagination cursor returned from the previous response. */
|
|
5353
4757
|
cursor?: string;
|
|
5354
4758
|
/** @description Maximum number of results to return per page. */
|
|
@@ -5654,6 +5058,15 @@ export interface operations {
|
|
|
5654
5058
|
400: components["responses"]["BadRequest"];
|
|
5655
5059
|
401: components["responses"]["Unauthorized"];
|
|
5656
5060
|
404: components["responses"]["NotFound"];
|
|
5061
|
+
/** @description Conflict — the target project is archived. Code `project_archived`. Restore the project before starting new runs; in-flight runs continue regardless. */
|
|
5062
|
+
409: {
|
|
5063
|
+
headers: {
|
|
5064
|
+
[name: string]: unknown;
|
|
5065
|
+
};
|
|
5066
|
+
content: {
|
|
5067
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
5068
|
+
};
|
|
5069
|
+
};
|
|
5657
5070
|
429: components["responses"]["TooManyRequests"];
|
|
5658
5071
|
};
|
|
5659
5072
|
};
|
|
@@ -5728,7 +5141,23 @@ export interface operations {
|
|
|
5728
5141
|
* "definition_version": 3,
|
|
5729
5142
|
* "ephemeral": false,
|
|
5730
5143
|
* "workflow_name": "document-review",
|
|
5731
|
-
* "status": "
|
|
5144
|
+
* "status": "active",
|
|
5145
|
+
* "path_counts": {
|
|
5146
|
+
* "total": 1,
|
|
5147
|
+
* "active": 1,
|
|
5148
|
+
* "working": 1,
|
|
5149
|
+
* "waiting": 0,
|
|
5150
|
+
* "completed": 0,
|
|
5151
|
+
* "failed": 0
|
|
5152
|
+
* },
|
|
5153
|
+
* "wait_summary": {
|
|
5154
|
+
* "waiting_paths": 0,
|
|
5155
|
+
* "kind_counts": {},
|
|
5156
|
+
* "next_wake_at": null,
|
|
5157
|
+
* "waiting_on_signal_names": [],
|
|
5158
|
+
* "interaction_ids": []
|
|
5159
|
+
* },
|
|
5160
|
+
* "errors": [],
|
|
5732
5161
|
* "attempt": 1,
|
|
5733
5162
|
* "inputs": {
|
|
5734
5163
|
* "document_id": "doc_01hw1m9z8y7x6w5v4u3t2s1r0q"
|
|
@@ -5752,6 +5181,15 @@ export interface operations {
|
|
|
5752
5181
|
400: components["responses"]["BadRequest"];
|
|
5753
5182
|
401: components["responses"]["Unauthorized"];
|
|
5754
5183
|
404: components["responses"]["NotFound"];
|
|
5184
|
+
/** @description Conflict — the target project is archived. Code `project_archived`. Restore the project before starting new runs; in-flight runs continue regardless. */
|
|
5185
|
+
409: {
|
|
5186
|
+
headers: {
|
|
5187
|
+
[name: string]: unknown;
|
|
5188
|
+
};
|
|
5189
|
+
content: {
|
|
5190
|
+
"application/json": components["schemas"]["ErrorResponse"];
|
|
5191
|
+
};
|
|
5192
|
+
};
|
|
5755
5193
|
429: components["responses"]["TooManyRequests"];
|
|
5756
5194
|
};
|
|
5757
5195
|
};
|
|
@@ -5860,7 +5298,7 @@ export interface operations {
|
|
|
5860
5298
|
/**
|
|
5861
5299
|
* @example event: run_updated
|
|
5862
5300
|
* id: 42
|
|
5863
|
-
* data: {"type":"run_updated","run_id":"run_01hw1n1a2b3c4d5e6f7g8h9j0k","seq":42,"timestamp":"2026-04-24T14:45:00Z","data":{"status":"
|
|
5301
|
+
* data: {"type":"run_updated","run_id":"run_01hw1n1a2b3c4d5e6f7g8h9j0k","seq":42,"timestamp":"2026-04-24T14:45:00Z","data":{"status":"active"}}
|
|
5864
5302
|
*
|
|
5865
5303
|
* :keepalive
|
|
5866
5304
|
*/
|
|
@@ -6560,6 +5998,14 @@ export interface operations {
|
|
|
6560
5998
|
kind?: components["schemas"]["TriggerKind"];
|
|
6561
5999
|
/** @description Filter to enabled or disabled triggers. */
|
|
6562
6000
|
enabled?: boolean;
|
|
6001
|
+
/**
|
|
6002
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
6003
|
+
*
|
|
6004
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
6005
|
+
*
|
|
6006
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
6007
|
+
*/
|
|
6008
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
6563
6009
|
/** @description Opaque pagination cursor returned from the previous response. */
|
|
6564
6010
|
cursor?: string;
|
|
6565
6011
|
/** @description Maximum number of results to return per page. */
|
|
@@ -6997,6 +6443,16 @@ export interface operations {
|
|
|
6997
6443
|
query?: {
|
|
6998
6444
|
/** @description Prefix-match filter applied to project name and handle. */
|
|
6999
6445
|
search?: string;
|
|
6446
|
+
/** @description Lifecycle filter. `active` (default) returns non-archived projects; `archived` returns archived projects only; `all` returns both. */
|
|
6447
|
+
status?: "active" | "archived" | "all";
|
|
6448
|
+
/**
|
|
6449
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
6450
|
+
*
|
|
6451
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
6452
|
+
*
|
|
6453
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
6454
|
+
*/
|
|
6455
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
7000
6456
|
};
|
|
7001
6457
|
header?: never;
|
|
7002
6458
|
path?: never;
|
|
@@ -7089,6 +6545,7 @@ export interface operations {
|
|
|
7089
6545
|
};
|
|
7090
6546
|
401: components["responses"]["Unauthorized"];
|
|
7091
6547
|
404: components["responses"]["NotFound"];
|
|
6548
|
+
409: components["responses"]["Conflict"];
|
|
7092
6549
|
};
|
|
7093
6550
|
};
|
|
7094
6551
|
updateProject: {
|
|
@@ -7122,6 +6579,56 @@ export interface operations {
|
|
|
7122
6579
|
409: components["responses"]["Conflict"];
|
|
7123
6580
|
};
|
|
7124
6581
|
};
|
|
6582
|
+
archiveProject: {
|
|
6583
|
+
parameters: {
|
|
6584
|
+
query?: never;
|
|
6585
|
+
header?: never;
|
|
6586
|
+
path: {
|
|
6587
|
+
/** @description Resource ID. */
|
|
6588
|
+
id: components["parameters"]["IDParam"];
|
|
6589
|
+
};
|
|
6590
|
+
cookie?: never;
|
|
6591
|
+
};
|
|
6592
|
+
requestBody?: never;
|
|
6593
|
+
responses: {
|
|
6594
|
+
/** @description OK */
|
|
6595
|
+
200: {
|
|
6596
|
+
headers: {
|
|
6597
|
+
[name: string]: unknown;
|
|
6598
|
+
};
|
|
6599
|
+
content: {
|
|
6600
|
+
"application/json": components["schemas"]["Project"];
|
|
6601
|
+
};
|
|
6602
|
+
};
|
|
6603
|
+
401: components["responses"]["Unauthorized"];
|
|
6604
|
+
404: components["responses"]["NotFound"];
|
|
6605
|
+
};
|
|
6606
|
+
};
|
|
6607
|
+
restoreProject: {
|
|
6608
|
+
parameters: {
|
|
6609
|
+
query?: never;
|
|
6610
|
+
header?: never;
|
|
6611
|
+
path: {
|
|
6612
|
+
/** @description Resource ID. */
|
|
6613
|
+
id: components["parameters"]["IDParam"];
|
|
6614
|
+
};
|
|
6615
|
+
cookie?: never;
|
|
6616
|
+
};
|
|
6617
|
+
requestBody?: never;
|
|
6618
|
+
responses: {
|
|
6619
|
+
/** @description OK */
|
|
6620
|
+
200: {
|
|
6621
|
+
headers: {
|
|
6622
|
+
[name: string]: unknown;
|
|
6623
|
+
};
|
|
6624
|
+
content: {
|
|
6625
|
+
"application/json": components["schemas"]["Project"];
|
|
6626
|
+
};
|
|
6627
|
+
};
|
|
6628
|
+
401: components["responses"]["Unauthorized"];
|
|
6629
|
+
404: components["responses"]["NotFound"];
|
|
6630
|
+
};
|
|
6631
|
+
};
|
|
7125
6632
|
getProjectConfig: {
|
|
7126
6633
|
parameters: {
|
|
7127
6634
|
query?: never;
|
|
@@ -7306,6 +6813,14 @@ export interface operations {
|
|
|
7306
6813
|
query?: {
|
|
7307
6814
|
/** @description Filter by enabled/disabled state. */
|
|
7308
6815
|
enabled?: boolean;
|
|
6816
|
+
/**
|
|
6817
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
6818
|
+
*
|
|
6819
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
6820
|
+
*
|
|
6821
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
6822
|
+
*/
|
|
6823
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
7309
6824
|
/** @description Opaque pagination cursor returned from the previous response. */
|
|
7310
6825
|
cursor?: string;
|
|
7311
6826
|
/** @description Maximum number of results to return per page. */
|
|
@@ -8152,6 +7667,14 @@ export interface operations {
|
|
|
8152
7667
|
service_account_id?: string;
|
|
8153
7668
|
/** @description Filter by administrative status (active/inactive), independent of presence. */
|
|
8154
7669
|
status?: components["schemas"]["AgentStatus"];
|
|
7670
|
+
/**
|
|
7671
|
+
* @description Filter results by tag. Repeatable; multiple values combine with AND. Format: `Key:Value`, `Key:*` for any value, `Key:a,b,c` for IN.
|
|
7672
|
+
*
|
|
7673
|
+
* Tag values containing `:` or `,` cannot be filtered with this grammar — the parser splits on those literally. Constrain values to plain identifiers when you intend to filter on them.
|
|
7674
|
+
*
|
|
7675
|
+
* Not supported on the runs list — runs are too high-cardinality for ad-hoc tag filtering. To narrow runs by parent workflow, use the workflow-scoped endpoint `GET /v1/projects/{project}/workflows/{id}/runs` and inspect `tags` on each run client-side.
|
|
7676
|
+
*/
|
|
7677
|
+
tag?: components["parameters"]["TagFilterParam"];
|
|
8155
7678
|
/** @description Maximum number of items to return */
|
|
8156
7679
|
limit?: components["parameters"]["LimitParam"];
|
|
8157
7680
|
};
|
|
@@ -8537,7 +8060,7 @@ export interface operations {
|
|
|
8537
8060
|
"application/json": components["schemas"]["ToolRun"];
|
|
8538
8061
|
};
|
|
8539
8062
|
};
|
|
8540
|
-
/** @description Accepted — run is
|
|
8063
|
+
/** @description Accepted — run is active; poll for result */
|
|
8541
8064
|
202: {
|
|
8542
8065
|
headers: {
|
|
8543
8066
|
[name: string]: unknown;
|
|
@@ -8546,7 +8069,7 @@ export interface operations {
|
|
|
8546
8069
|
/**
|
|
8547
8070
|
* @example {
|
|
8548
8071
|
* "run_id": "run_01hw1n1a2b3c4d5e6f7g8h9j0k",
|
|
8549
|
-
* "status": "
|
|
8072
|
+
* "status": "active"
|
|
8550
8073
|
* }
|
|
8551
8074
|
*/
|
|
8552
8075
|
"application/json": components["schemas"]["ToolRun"];
|