@1claw/openapi-spec 0.43.0 → 0.43.1
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/openapi.json +293 -78
- package/openapi.yaml +208 -59
- package/package.json +1 -1
package/openapi.json
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "1Claw API",
|
|
5
|
-
"version": "2.
|
|
6
|
-
"description": "Secure secret management for AI agents. Provides vaults, secrets,\npolicy-based access control, agent identity, Intents API,\nsharing, billing, and audit logging. Automations
|
|
5
|
+
"version": "2.30.0",
|
|
6
|
+
"description": "Secure secret management for AI agents. Provides vaults, secrets,\npolicy-based access control, agent identity, Intents API,\nsharing, billing, and audit logging. Automations (workflow_spec),\ncloud runtimes with interactive shell sessions, agent memory,\nand discovery.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
|
|
7
7
|
"contact": {
|
|
8
8
|
"email": "ops@1claw.xyz"
|
|
9
9
|
}
|
|
@@ -11008,6 +11008,104 @@
|
|
|
11008
11008
|
}
|
|
11009
11009
|
}
|
|
11010
11010
|
},
|
|
11011
|
+
"/v1/runtimes/{runtimeId}/shell/session": {
|
|
11012
|
+
"post": {
|
|
11013
|
+
"tags": [
|
|
11014
|
+
"Runtimes"
|
|
11015
|
+
],
|
|
11016
|
+
"summary": "Create interactive shell session",
|
|
11017
|
+
"description": "Human-only. Creates a short-lived WebSocket session token for the\nruntime's PTY terminal. Requires step-up auth via `password`,\n`totp_code`, `passkey_credential`, or `reauth_token` (from\n`POST /v1/auth/reauth` with purpose `runtime_shell`).\nRuntime must have `shell_access_enabled` and be running.\nEnabling shell on a running runtime may require stop/start, or\nthe server may auto-reconcile the sidecar on connect.\n",
|
|
11018
|
+
"operationId": "createShellSession",
|
|
11019
|
+
"parameters": [
|
|
11020
|
+
{
|
|
11021
|
+
"name": "runtimeId",
|
|
11022
|
+
"in": "path",
|
|
11023
|
+
"required": true,
|
|
11024
|
+
"schema": {
|
|
11025
|
+
"type": "string",
|
|
11026
|
+
"format": "uuid"
|
|
11027
|
+
}
|
|
11028
|
+
}
|
|
11029
|
+
],
|
|
11030
|
+
"requestBody": {
|
|
11031
|
+
"required": true,
|
|
11032
|
+
"content": {
|
|
11033
|
+
"application/json": {
|
|
11034
|
+
"schema": {
|
|
11035
|
+
"$ref": "#/components/schemas/ShellSessionRequest"
|
|
11036
|
+
}
|
|
11037
|
+
}
|
|
11038
|
+
}
|
|
11039
|
+
},
|
|
11040
|
+
"responses": {
|
|
11041
|
+
"200": {
|
|
11042
|
+
"description": "Shell session created",
|
|
11043
|
+
"content": {
|
|
11044
|
+
"application/json": {
|
|
11045
|
+
"schema": {
|
|
11046
|
+
"$ref": "#/components/schemas/ShellSessionResponse"
|
|
11047
|
+
}
|
|
11048
|
+
}
|
|
11049
|
+
}
|
|
11050
|
+
},
|
|
11051
|
+
"400": {
|
|
11052
|
+
"$ref": "#/components/responses/BadRequest"
|
|
11053
|
+
},
|
|
11054
|
+
"401": {
|
|
11055
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
11056
|
+
},
|
|
11057
|
+
"403": {
|
|
11058
|
+
"$ref": "#/components/responses/Forbidden"
|
|
11059
|
+
},
|
|
11060
|
+
"404": {
|
|
11061
|
+
"$ref": "#/components/responses/NotFound"
|
|
11062
|
+
}
|
|
11063
|
+
}
|
|
11064
|
+
}
|
|
11065
|
+
},
|
|
11066
|
+
"/v1/runtimes/{runtimeId}/shell/passkey/begin": {
|
|
11067
|
+
"post": {
|
|
11068
|
+
"tags": [
|
|
11069
|
+
"Runtimes"
|
|
11070
|
+
],
|
|
11071
|
+
"summary": "Begin shell passkey assertion",
|
|
11072
|
+
"description": "Human-only. Starts a WebAuthn assertion ceremony for shell\nstep-up auth (social/Google users without a password).\n",
|
|
11073
|
+
"operationId": "beginShellPasskey",
|
|
11074
|
+
"parameters": [
|
|
11075
|
+
{
|
|
11076
|
+
"name": "runtimeId",
|
|
11077
|
+
"in": "path",
|
|
11078
|
+
"required": true,
|
|
11079
|
+
"schema": {
|
|
11080
|
+
"type": "string",
|
|
11081
|
+
"format": "uuid"
|
|
11082
|
+
}
|
|
11083
|
+
}
|
|
11084
|
+
],
|
|
11085
|
+
"responses": {
|
|
11086
|
+
"200": {
|
|
11087
|
+
"description": "Passkey challenge for shell session",
|
|
11088
|
+
"content": {
|
|
11089
|
+
"application/json": {
|
|
11090
|
+
"schema": {
|
|
11091
|
+
"type": "object",
|
|
11092
|
+
"additionalProperties": true
|
|
11093
|
+
}
|
|
11094
|
+
}
|
|
11095
|
+
}
|
|
11096
|
+
},
|
|
11097
|
+
"401": {
|
|
11098
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
11099
|
+
},
|
|
11100
|
+
"403": {
|
|
11101
|
+
"$ref": "#/components/responses/Forbidden"
|
|
11102
|
+
},
|
|
11103
|
+
"404": {
|
|
11104
|
+
"$ref": "#/components/responses/NotFound"
|
|
11105
|
+
}
|
|
11106
|
+
}
|
|
11107
|
+
}
|
|
11108
|
+
},
|
|
11011
11109
|
"/v1/agents/{agent_id}/memory": {
|
|
11012
11110
|
"get": {
|
|
11013
11111
|
"tags": [
|
|
@@ -19949,42 +20047,61 @@
|
|
|
19949
20047
|
"CreateAutomationRequest": {
|
|
19950
20048
|
"type": "object",
|
|
19951
20049
|
"required": [
|
|
19952
|
-
"name"
|
|
20050
|
+
"name",
|
|
20051
|
+
"agent_id",
|
|
20052
|
+
"trigger_type",
|
|
20053
|
+
"workflow_spec"
|
|
19953
20054
|
],
|
|
20055
|
+
"description": "Create an automation. `workflow_spec` is required and must be either\na JSON array of steps or `{ \"steps\": [...] }`. Dashboard `schedule`\ntrigger_type is accepted and normalized to `cron`. For cron triggers,\n`cron_expr` is required.\n",
|
|
19954
20056
|
"properties": {
|
|
19955
20057
|
"name": {
|
|
19956
20058
|
"type": "string"
|
|
19957
20059
|
},
|
|
19958
|
-
"description": {
|
|
19959
|
-
"type": "string"
|
|
19960
|
-
},
|
|
19961
20060
|
"agent_id": {
|
|
19962
20061
|
"type": "string",
|
|
19963
20062
|
"format": "uuid"
|
|
19964
20063
|
},
|
|
19965
20064
|
"trigger_type": {
|
|
19966
20065
|
"type": "string",
|
|
20066
|
+
"description": "cron | event | webhook | manual (alias schedule → cron)",
|
|
19967
20067
|
"enum": [
|
|
19968
|
-
"
|
|
19969
|
-
"webhook",
|
|
20068
|
+
"cron",
|
|
19970
20069
|
"event",
|
|
19971
|
-
"
|
|
20070
|
+
"webhook",
|
|
20071
|
+
"manual",
|
|
20072
|
+
"schedule"
|
|
19972
20073
|
]
|
|
19973
20074
|
},
|
|
19974
|
-
"
|
|
19975
|
-
"type": "
|
|
19976
|
-
"
|
|
20075
|
+
"cron_expr": {
|
|
20076
|
+
"type": "string",
|
|
20077
|
+
"description": "Required when trigger_type is cron (or schedule)",
|
|
20078
|
+
"example": "0 */6 * * *"
|
|
19977
20079
|
},
|
|
19978
|
-
"
|
|
19979
|
-
"type": "string"
|
|
20080
|
+
"timezone": {
|
|
20081
|
+
"type": "string",
|
|
20082
|
+
"default": "UTC",
|
|
20083
|
+
"example": "UTC"
|
|
19980
20084
|
},
|
|
19981
|
-
"
|
|
20085
|
+
"event_filter": {
|
|
19982
20086
|
"type": "object",
|
|
19983
|
-
"additionalProperties": true
|
|
20087
|
+
"additionalProperties": true,
|
|
20088
|
+
"nullable": true
|
|
19984
20089
|
},
|
|
19985
|
-
"
|
|
19986
|
-
"
|
|
19987
|
-
"
|
|
20090
|
+
"workflow_spec": {
|
|
20091
|
+
"description": "Workflow steps. Accepts a bare array `[...]` or\n`{ \"steps\": [...] }` (dashboard / preset shape).\n",
|
|
20092
|
+
"oneOf": [
|
|
20093
|
+
{
|
|
20094
|
+
"type": "array",
|
|
20095
|
+
"items": {
|
|
20096
|
+
"type": "object",
|
|
20097
|
+
"additionalProperties": true
|
|
20098
|
+
}
|
|
20099
|
+
},
|
|
20100
|
+
{
|
|
20101
|
+
"type": "object",
|
|
20102
|
+
"additionalProperties": true
|
|
20103
|
+
}
|
|
20104
|
+
]
|
|
19988
20105
|
}
|
|
19989
20106
|
}
|
|
19990
20107
|
},
|
|
@@ -19994,32 +20111,32 @@
|
|
|
19994
20111
|
"name": {
|
|
19995
20112
|
"type": "string"
|
|
19996
20113
|
},
|
|
19997
|
-
"
|
|
19998
|
-
"type": "string"
|
|
19999
|
-
},
|
|
20000
|
-
"agent_id": {
|
|
20001
|
-
"type": "string",
|
|
20002
|
-
"format": "uuid"
|
|
20003
|
-
},
|
|
20004
|
-
"trigger_type": {
|
|
20114
|
+
"cron_expr": {
|
|
20005
20115
|
"type": "string",
|
|
20006
|
-
"
|
|
20007
|
-
"schedule",
|
|
20008
|
-
"webhook",
|
|
20009
|
-
"event",
|
|
20010
|
-
"manual"
|
|
20011
|
-
]
|
|
20012
|
-
},
|
|
20013
|
-
"trigger_config": {
|
|
20014
|
-
"type": "object",
|
|
20015
|
-
"additionalProperties": true
|
|
20116
|
+
"nullable": true
|
|
20016
20117
|
},
|
|
20017
|
-
"
|
|
20118
|
+
"timezone": {
|
|
20018
20119
|
"type": "string"
|
|
20019
20120
|
},
|
|
20020
|
-
"
|
|
20121
|
+
"event_filter": {
|
|
20021
20122
|
"type": "object",
|
|
20022
|
-
"additionalProperties": true
|
|
20123
|
+
"additionalProperties": true,
|
|
20124
|
+
"nullable": true
|
|
20125
|
+
},
|
|
20126
|
+
"workflow_spec": {
|
|
20127
|
+
"oneOf": [
|
|
20128
|
+
{
|
|
20129
|
+
"type": "array",
|
|
20130
|
+
"items": {
|
|
20131
|
+
"type": "object",
|
|
20132
|
+
"additionalProperties": true
|
|
20133
|
+
}
|
|
20134
|
+
},
|
|
20135
|
+
{
|
|
20136
|
+
"type": "object",
|
|
20137
|
+
"additionalProperties": true
|
|
20138
|
+
}
|
|
20139
|
+
]
|
|
20023
20140
|
},
|
|
20024
20141
|
"is_active": {
|
|
20025
20142
|
"type": "boolean"
|
|
@@ -20030,8 +20147,11 @@
|
|
|
20030
20147
|
"type": "object",
|
|
20031
20148
|
"required": [
|
|
20032
20149
|
"id",
|
|
20150
|
+
"agent_id",
|
|
20033
20151
|
"name",
|
|
20034
20152
|
"trigger_type",
|
|
20153
|
+
"timezone",
|
|
20154
|
+
"workflow_spec",
|
|
20035
20155
|
"is_active",
|
|
20036
20156
|
"created_at",
|
|
20037
20157
|
"updated_at"
|
|
@@ -20041,58 +20161,58 @@
|
|
|
20041
20161
|
"type": "string",
|
|
20042
20162
|
"format": "uuid"
|
|
20043
20163
|
},
|
|
20044
|
-
"name": {
|
|
20045
|
-
"type": "string"
|
|
20046
|
-
},
|
|
20047
|
-
"description": {
|
|
20048
|
-
"type": "string",
|
|
20049
|
-
"nullable": true
|
|
20050
|
-
},
|
|
20051
20164
|
"agent_id": {
|
|
20052
20165
|
"type": "string",
|
|
20053
|
-
"format": "uuid"
|
|
20054
|
-
|
|
20166
|
+
"format": "uuid"
|
|
20167
|
+
},
|
|
20168
|
+
"name": {
|
|
20169
|
+
"type": "string"
|
|
20055
20170
|
},
|
|
20056
20171
|
"trigger_type": {
|
|
20057
20172
|
"type": "string",
|
|
20058
20173
|
"enum": [
|
|
20059
|
-
"
|
|
20060
|
-
"webhook",
|
|
20174
|
+
"cron",
|
|
20061
20175
|
"event",
|
|
20176
|
+
"webhook",
|
|
20062
20177
|
"manual"
|
|
20063
20178
|
]
|
|
20064
20179
|
},
|
|
20065
|
-
"
|
|
20066
|
-
"type": "object",
|
|
20067
|
-
"additionalProperties": true,
|
|
20068
|
-
"nullable": true
|
|
20069
|
-
},
|
|
20070
|
-
"action_type": {
|
|
20180
|
+
"cron_expr": {
|
|
20071
20181
|
"type": "string",
|
|
20072
20182
|
"nullable": true
|
|
20073
20183
|
},
|
|
20074
|
-
"
|
|
20184
|
+
"timezone": {
|
|
20185
|
+
"type": "string"
|
|
20186
|
+
},
|
|
20187
|
+
"event_filter": {
|
|
20075
20188
|
"type": "object",
|
|
20076
20189
|
"additionalProperties": true,
|
|
20077
20190
|
"nullable": true
|
|
20078
20191
|
},
|
|
20192
|
+
"workflow_spec": {
|
|
20193
|
+
"oneOf": [
|
|
20194
|
+
{
|
|
20195
|
+
"type": "array",
|
|
20196
|
+
"items": {
|
|
20197
|
+
"type": "object",
|
|
20198
|
+
"additionalProperties": true
|
|
20199
|
+
}
|
|
20200
|
+
},
|
|
20201
|
+
{
|
|
20202
|
+
"type": "object",
|
|
20203
|
+
"additionalProperties": true
|
|
20204
|
+
}
|
|
20205
|
+
]
|
|
20206
|
+
},
|
|
20079
20207
|
"is_active": {
|
|
20080
20208
|
"type": "boolean"
|
|
20081
20209
|
},
|
|
20082
|
-
"
|
|
20083
|
-
"type": "string",
|
|
20084
|
-
"nullable": true
|
|
20085
|
-
},
|
|
20086
|
-
"schedule_expression": {
|
|
20087
|
-
"type": "string",
|
|
20088
|
-
"nullable": true
|
|
20089
|
-
},
|
|
20090
|
-
"next_run_at": {
|
|
20210
|
+
"last_run_at": {
|
|
20091
20211
|
"type": "string",
|
|
20092
20212
|
"format": "date-time",
|
|
20093
20213
|
"nullable": true
|
|
20094
20214
|
},
|
|
20095
|
-
"
|
|
20215
|
+
"next_run_at": {
|
|
20096
20216
|
"type": "string",
|
|
20097
20217
|
"format": "date-time",
|
|
20098
20218
|
"nullable": true
|
|
@@ -20126,8 +20246,11 @@
|
|
|
20126
20246
|
"required": [
|
|
20127
20247
|
"id",
|
|
20128
20248
|
"automation_id",
|
|
20249
|
+
"agent_id",
|
|
20129
20250
|
"status",
|
|
20130
|
-
"started_at"
|
|
20251
|
+
"started_at",
|
|
20252
|
+
"tokens_used",
|
|
20253
|
+
"cost_cents"
|
|
20131
20254
|
],
|
|
20132
20255
|
"properties": {
|
|
20133
20256
|
"id": {
|
|
@@ -20138,32 +20261,45 @@
|
|
|
20138
20261
|
"type": "string",
|
|
20139
20262
|
"format": "uuid"
|
|
20140
20263
|
},
|
|
20264
|
+
"agent_id": {
|
|
20265
|
+
"type": "string",
|
|
20266
|
+
"format": "uuid"
|
|
20267
|
+
},
|
|
20141
20268
|
"status": {
|
|
20142
20269
|
"type": "string",
|
|
20143
20270
|
"enum": [
|
|
20144
20271
|
"pending",
|
|
20145
20272
|
"running",
|
|
20146
20273
|
"completed",
|
|
20147
|
-
"failed"
|
|
20274
|
+
"failed",
|
|
20275
|
+
"denied"
|
|
20148
20276
|
]
|
|
20149
20277
|
},
|
|
20278
|
+
"step_results": {
|
|
20279
|
+
"nullable": true
|
|
20280
|
+
},
|
|
20281
|
+
"error": {
|
|
20282
|
+
"type": "string",
|
|
20283
|
+
"nullable": true
|
|
20284
|
+
},
|
|
20285
|
+
"trigger_source": {
|
|
20286
|
+
"type": "string",
|
|
20287
|
+
"nullable": true
|
|
20288
|
+
},
|
|
20150
20289
|
"started_at": {
|
|
20151
20290
|
"type": "string",
|
|
20152
20291
|
"format": "date-time"
|
|
20153
20292
|
},
|
|
20154
|
-
"
|
|
20293
|
+
"finished_at": {
|
|
20155
20294
|
"type": "string",
|
|
20156
20295
|
"format": "date-time",
|
|
20157
20296
|
"nullable": true
|
|
20158
20297
|
},
|
|
20159
|
-
"
|
|
20160
|
-
"type": "
|
|
20161
|
-
"additionalProperties": true,
|
|
20162
|
-
"nullable": true
|
|
20298
|
+
"tokens_used": {
|
|
20299
|
+
"type": "integer"
|
|
20163
20300
|
},
|
|
20164
|
-
"
|
|
20165
|
-
"type": "
|
|
20166
|
-
"nullable": true
|
|
20301
|
+
"cost_cents": {
|
|
20302
|
+
"type": "integer"
|
|
20167
20303
|
}
|
|
20168
20304
|
}
|
|
20169
20305
|
},
|
|
@@ -20230,6 +20366,17 @@
|
|
|
20230
20366
|
"jwt",
|
|
20231
20367
|
"public"
|
|
20232
20368
|
]
|
|
20369
|
+
},
|
|
20370
|
+
"shell_access_enabled": {
|
|
20371
|
+
"type": "boolean",
|
|
20372
|
+
"default": false
|
|
20373
|
+
},
|
|
20374
|
+
"shell_auth_policy": {
|
|
20375
|
+
"type": "string",
|
|
20376
|
+
"description": "Step-up auth policy for shell (e.g. password, passkey, totp)"
|
|
20377
|
+
},
|
|
20378
|
+
"shell_max_session_minutes": {
|
|
20379
|
+
"type": "integer"
|
|
20233
20380
|
}
|
|
20234
20381
|
}
|
|
20235
20382
|
},
|
|
@@ -20273,6 +20420,15 @@
|
|
|
20273
20420
|
"jwt",
|
|
20274
20421
|
"public"
|
|
20275
20422
|
]
|
|
20423
|
+
},
|
|
20424
|
+
"shell_access_enabled": {
|
|
20425
|
+
"type": "boolean"
|
|
20426
|
+
},
|
|
20427
|
+
"shell_auth_policy": {
|
|
20428
|
+
"type": "string"
|
|
20429
|
+
},
|
|
20430
|
+
"shell_max_session_minutes": {
|
|
20431
|
+
"type": "integer"
|
|
20276
20432
|
}
|
|
20277
20433
|
}
|
|
20278
20434
|
},
|
|
@@ -20361,6 +20517,15 @@
|
|
|
20361
20517
|
],
|
|
20362
20518
|
"nullable": true
|
|
20363
20519
|
},
|
|
20520
|
+
"shell_access_enabled": {
|
|
20521
|
+
"type": "boolean"
|
|
20522
|
+
},
|
|
20523
|
+
"shell_auth_policy": {
|
|
20524
|
+
"type": "string"
|
|
20525
|
+
},
|
|
20526
|
+
"shell_max_session_minutes": {
|
|
20527
|
+
"type": "integer"
|
|
20528
|
+
},
|
|
20364
20529
|
"monthly_hours_used": {
|
|
20365
20530
|
"type": "number",
|
|
20366
20531
|
"nullable": true
|
|
@@ -20408,6 +20573,56 @@
|
|
|
20408
20573
|
}
|
|
20409
20574
|
}
|
|
20410
20575
|
},
|
|
20576
|
+
"ShellSessionRequest": {
|
|
20577
|
+
"type": "object",
|
|
20578
|
+
"description": "Step-up credentials for an interactive shell session.\nProvide one of password, totp_code, passkey_credential, or reauth_token.\n",
|
|
20579
|
+
"properties": {
|
|
20580
|
+
"password": {
|
|
20581
|
+
"type": "string"
|
|
20582
|
+
},
|
|
20583
|
+
"totp_code": {
|
|
20584
|
+
"type": "string"
|
|
20585
|
+
},
|
|
20586
|
+
"passkey_credential": {
|
|
20587
|
+
"type": "object",
|
|
20588
|
+
"additionalProperties": true
|
|
20589
|
+
},
|
|
20590
|
+
"reauth_token": {
|
|
20591
|
+
"type": "string",
|
|
20592
|
+
"description": "Single-use `rat_` token from POST /v1/auth/reauth (purpose runtime_shell)"
|
|
20593
|
+
}
|
|
20594
|
+
}
|
|
20595
|
+
},
|
|
20596
|
+
"ShellSessionResponse": {
|
|
20597
|
+
"type": "object",
|
|
20598
|
+
"required": [
|
|
20599
|
+
"session_token",
|
|
20600
|
+
"ws_url",
|
|
20601
|
+
"expires_in",
|
|
20602
|
+
"runtime_id",
|
|
20603
|
+
"max_session_minutes"
|
|
20604
|
+
],
|
|
20605
|
+
"properties": {
|
|
20606
|
+
"session_token": {
|
|
20607
|
+
"type": "string"
|
|
20608
|
+
},
|
|
20609
|
+
"ws_url": {
|
|
20610
|
+
"type": "string",
|
|
20611
|
+
"description": "WebSocket URL for the PTY terminal"
|
|
20612
|
+
},
|
|
20613
|
+
"expires_in": {
|
|
20614
|
+
"type": "integer",
|
|
20615
|
+
"format": "int64"
|
|
20616
|
+
},
|
|
20617
|
+
"runtime_id": {
|
|
20618
|
+
"type": "string",
|
|
20619
|
+
"format": "uuid"
|
|
20620
|
+
},
|
|
20621
|
+
"max_session_minutes": {
|
|
20622
|
+
"type": "integer"
|
|
20623
|
+
}
|
|
20624
|
+
}
|
|
20625
|
+
},
|
|
20411
20626
|
"MemoryEntry": {
|
|
20412
20627
|
"type": "object",
|
|
20413
20628
|
"required": [
|
package/openapi.yaml
CHANGED
|
@@ -2,12 +2,13 @@ openapi: 3.1.0
|
|
|
2
2
|
|
|
3
3
|
info:
|
|
4
4
|
title: 1Claw API
|
|
5
|
-
version: 2.
|
|
5
|
+
version: 2.30.0
|
|
6
6
|
description: |
|
|
7
7
|
Secure secret management for AI agents. Provides vaults, secrets,
|
|
8
8
|
policy-based access control, agent identity, Intents API,
|
|
9
|
-
sharing, billing, and audit logging. Automations
|
|
10
|
-
agent memory,
|
|
9
|
+
sharing, billing, and audit logging. Automations (workflow_spec),
|
|
10
|
+
cloud runtimes with interactive shell sessions, agent memory,
|
|
11
|
+
and discovery.
|
|
11
12
|
|
|
12
13
|
All endpoints require JWT Bearer authentication unless marked with
|
|
13
14
|
`security: []`.
|
|
@@ -7009,6 +7010,78 @@ paths:
|
|
|
7009
7010
|
"401":
|
|
7010
7011
|
$ref: "#/components/responses/Unauthorized"
|
|
7011
7012
|
|
|
7013
|
+
/v1/runtimes/{runtimeId}/shell/session:
|
|
7014
|
+
post:
|
|
7015
|
+
tags: [Runtimes]
|
|
7016
|
+
summary: Create interactive shell session
|
|
7017
|
+
description: |
|
|
7018
|
+
Human-only. Creates a short-lived WebSocket session token for the
|
|
7019
|
+
runtime's PTY terminal. Requires step-up auth via `password`,
|
|
7020
|
+
`totp_code`, `passkey_credential`, or `reauth_token` (from
|
|
7021
|
+
`POST /v1/auth/reauth` with purpose `runtime_shell`).
|
|
7022
|
+
Runtime must have `shell_access_enabled` and be running.
|
|
7023
|
+
Enabling shell on a running runtime may require stop/start, or
|
|
7024
|
+
the server may auto-reconcile the sidecar on connect.
|
|
7025
|
+
operationId: createShellSession
|
|
7026
|
+
parameters:
|
|
7027
|
+
- name: runtimeId
|
|
7028
|
+
in: path
|
|
7029
|
+
required: true
|
|
7030
|
+
schema:
|
|
7031
|
+
type: string
|
|
7032
|
+
format: uuid
|
|
7033
|
+
requestBody:
|
|
7034
|
+
required: true
|
|
7035
|
+
content:
|
|
7036
|
+
application/json:
|
|
7037
|
+
schema:
|
|
7038
|
+
$ref: "#/components/schemas/ShellSessionRequest"
|
|
7039
|
+
responses:
|
|
7040
|
+
"200":
|
|
7041
|
+
description: Shell session created
|
|
7042
|
+
content:
|
|
7043
|
+
application/json:
|
|
7044
|
+
schema:
|
|
7045
|
+
$ref: "#/components/schemas/ShellSessionResponse"
|
|
7046
|
+
"400":
|
|
7047
|
+
$ref: "#/components/responses/BadRequest"
|
|
7048
|
+
"401":
|
|
7049
|
+
$ref: "#/components/responses/Unauthorized"
|
|
7050
|
+
"403":
|
|
7051
|
+
$ref: "#/components/responses/Forbidden"
|
|
7052
|
+
"404":
|
|
7053
|
+
$ref: "#/components/responses/NotFound"
|
|
7054
|
+
|
|
7055
|
+
/v1/runtimes/{runtimeId}/shell/passkey/begin:
|
|
7056
|
+
post:
|
|
7057
|
+
tags: [Runtimes]
|
|
7058
|
+
summary: Begin shell passkey assertion
|
|
7059
|
+
description: |
|
|
7060
|
+
Human-only. Starts a WebAuthn assertion ceremony for shell
|
|
7061
|
+
step-up auth (social/Google users without a password).
|
|
7062
|
+
operationId: beginShellPasskey
|
|
7063
|
+
parameters:
|
|
7064
|
+
- name: runtimeId
|
|
7065
|
+
in: path
|
|
7066
|
+
required: true
|
|
7067
|
+
schema:
|
|
7068
|
+
type: string
|
|
7069
|
+
format: uuid
|
|
7070
|
+
responses:
|
|
7071
|
+
"200":
|
|
7072
|
+
description: Passkey challenge for shell session
|
|
7073
|
+
content:
|
|
7074
|
+
application/json:
|
|
7075
|
+
schema:
|
|
7076
|
+
type: object
|
|
7077
|
+
additionalProperties: true
|
|
7078
|
+
"401":
|
|
7079
|
+
$ref: "#/components/responses/Unauthorized"
|
|
7080
|
+
"403":
|
|
7081
|
+
$ref: "#/components/responses/Forbidden"
|
|
7082
|
+
"404":
|
|
7083
|
+
$ref: "#/components/responses/NotFound"
|
|
7084
|
+
|
|
7012
7085
|
# ---------------------------------------------------------------------------
|
|
7013
7086
|
# Agent Memory
|
|
7014
7087
|
# ---------------------------------------------------------------------------
|
|
@@ -13124,97 +13197,110 @@ components:
|
|
|
13124
13197
|
|
|
13125
13198
|
CreateAutomationRequest:
|
|
13126
13199
|
type: object
|
|
13127
|
-
required: [name]
|
|
13200
|
+
required: [name, agent_id, trigger_type, workflow_spec]
|
|
13201
|
+
description: |
|
|
13202
|
+
Create an automation. `workflow_spec` is required and must be either
|
|
13203
|
+
a JSON array of steps or `{ "steps": [...] }`. Dashboard `schedule`
|
|
13204
|
+
trigger_type is accepted and normalized to `cron`. For cron triggers,
|
|
13205
|
+
`cron_expr` is required.
|
|
13128
13206
|
properties:
|
|
13129
13207
|
name:
|
|
13130
13208
|
type: string
|
|
13131
|
-
description:
|
|
13132
|
-
type: string
|
|
13133
13209
|
agent_id:
|
|
13134
13210
|
type: string
|
|
13135
13211
|
format: uuid
|
|
13136
13212
|
trigger_type:
|
|
13137
13213
|
type: string
|
|
13138
|
-
|
|
13139
|
-
|
|
13140
|
-
|
|
13141
|
-
|
|
13142
|
-
|
|
13214
|
+
description: cron | event | webhook | manual (alias schedule → cron)
|
|
13215
|
+
enum: [cron, event, webhook, manual, schedule]
|
|
13216
|
+
cron_expr:
|
|
13217
|
+
type: string
|
|
13218
|
+
description: Required when trigger_type is cron (or schedule)
|
|
13219
|
+
example: "0 */6 * * *"
|
|
13220
|
+
timezone:
|
|
13143
13221
|
type: string
|
|
13144
|
-
|
|
13222
|
+
default: UTC
|
|
13223
|
+
example: UTC
|
|
13224
|
+
event_filter:
|
|
13145
13225
|
type: object
|
|
13146
13226
|
additionalProperties: true
|
|
13147
|
-
|
|
13148
|
-
|
|
13149
|
-
|
|
13227
|
+
nullable: true
|
|
13228
|
+
workflow_spec:
|
|
13229
|
+
description: |
|
|
13230
|
+
Workflow steps. Accepts a bare array `[...]` or
|
|
13231
|
+
`{ "steps": [...] }` (dashboard / preset shape).
|
|
13232
|
+
oneOf:
|
|
13233
|
+
- type: array
|
|
13234
|
+
items:
|
|
13235
|
+
type: object
|
|
13236
|
+
additionalProperties: true
|
|
13237
|
+
- type: object
|
|
13238
|
+
additionalProperties: true
|
|
13150
13239
|
|
|
13151
13240
|
UpdateAutomationRequest:
|
|
13152
13241
|
type: object
|
|
13153
13242
|
properties:
|
|
13154
13243
|
name:
|
|
13155
13244
|
type: string
|
|
13156
|
-
|
|
13157
|
-
type: string
|
|
13158
|
-
agent_id:
|
|
13159
|
-
type: string
|
|
13160
|
-
format: uuid
|
|
13161
|
-
trigger_type:
|
|
13245
|
+
cron_expr:
|
|
13162
13246
|
type: string
|
|
13163
|
-
|
|
13164
|
-
|
|
13165
|
-
type: object
|
|
13166
|
-
additionalProperties: true
|
|
13167
|
-
action_type:
|
|
13247
|
+
nullable: true
|
|
13248
|
+
timezone:
|
|
13168
13249
|
type: string
|
|
13169
|
-
|
|
13250
|
+
event_filter:
|
|
13170
13251
|
type: object
|
|
13171
13252
|
additionalProperties: true
|
|
13253
|
+
nullable: true
|
|
13254
|
+
workflow_spec:
|
|
13255
|
+
oneOf:
|
|
13256
|
+
- type: array
|
|
13257
|
+
items:
|
|
13258
|
+
type: object
|
|
13259
|
+
additionalProperties: true
|
|
13260
|
+
- type: object
|
|
13261
|
+
additionalProperties: true
|
|
13172
13262
|
is_active:
|
|
13173
13263
|
type: boolean
|
|
13174
13264
|
|
|
13175
13265
|
AutomationResponse:
|
|
13176
13266
|
type: object
|
|
13177
|
-
required: [id, name, trigger_type, is_active, created_at, updated_at]
|
|
13267
|
+
required: [id, agent_id, name, trigger_type, timezone, workflow_spec, is_active, created_at, updated_at]
|
|
13178
13268
|
properties:
|
|
13179
13269
|
id:
|
|
13180
13270
|
type: string
|
|
13181
13271
|
format: uuid
|
|
13182
|
-
name:
|
|
13183
|
-
type: string
|
|
13184
|
-
description:
|
|
13185
|
-
type: string
|
|
13186
|
-
nullable: true
|
|
13187
13272
|
agent_id:
|
|
13188
13273
|
type: string
|
|
13189
13274
|
format: uuid
|
|
13190
|
-
|
|
13275
|
+
name:
|
|
13276
|
+
type: string
|
|
13191
13277
|
trigger_type:
|
|
13192
13278
|
type: string
|
|
13193
|
-
enum: [
|
|
13194
|
-
|
|
13195
|
-
type: object
|
|
13196
|
-
additionalProperties: true
|
|
13197
|
-
nullable: true
|
|
13198
|
-
action_type:
|
|
13279
|
+
enum: [cron, event, webhook, manual]
|
|
13280
|
+
cron_expr:
|
|
13199
13281
|
type: string
|
|
13200
13282
|
nullable: true
|
|
13201
|
-
|
|
13283
|
+
timezone:
|
|
13284
|
+
type: string
|
|
13285
|
+
event_filter:
|
|
13202
13286
|
type: object
|
|
13203
13287
|
additionalProperties: true
|
|
13204
13288
|
nullable: true
|
|
13289
|
+
workflow_spec:
|
|
13290
|
+
oneOf:
|
|
13291
|
+
- type: array
|
|
13292
|
+
items:
|
|
13293
|
+
type: object
|
|
13294
|
+
additionalProperties: true
|
|
13295
|
+
- type: object
|
|
13296
|
+
additionalProperties: true
|
|
13205
13297
|
is_active:
|
|
13206
13298
|
type: boolean
|
|
13207
|
-
|
|
13208
|
-
type: string
|
|
13209
|
-
nullable: true
|
|
13210
|
-
schedule_expression:
|
|
13211
|
-
type: string
|
|
13212
|
-
nullable: true
|
|
13213
|
-
next_run_at:
|
|
13299
|
+
last_run_at:
|
|
13214
13300
|
type: string
|
|
13215
13301
|
format: date-time
|
|
13216
13302
|
nullable: true
|
|
13217
|
-
|
|
13303
|
+
next_run_at:
|
|
13218
13304
|
type: string
|
|
13219
13305
|
format: date-time
|
|
13220
13306
|
nullable: true
|
|
@@ -13236,7 +13322,7 @@ components:
|
|
|
13236
13322
|
|
|
13237
13323
|
AutomationRunResponse:
|
|
13238
13324
|
type: object
|
|
13239
|
-
required: [id, automation_id, status, started_at]
|
|
13325
|
+
required: [id, automation_id, agent_id, status, started_at, tokens_used, cost_cents]
|
|
13240
13326
|
properties:
|
|
13241
13327
|
id:
|
|
13242
13328
|
type: string
|
|
@@ -13244,23 +13330,31 @@ components:
|
|
|
13244
13330
|
automation_id:
|
|
13245
13331
|
type: string
|
|
13246
13332
|
format: uuid
|
|
13333
|
+
agent_id:
|
|
13334
|
+
type: string
|
|
13335
|
+
format: uuid
|
|
13247
13336
|
status:
|
|
13248
13337
|
type: string
|
|
13249
|
-
enum: [pending, running, completed, failed]
|
|
13338
|
+
enum: [pending, running, completed, failed, denied]
|
|
13339
|
+
step_results:
|
|
13340
|
+
nullable: true
|
|
13341
|
+
error:
|
|
13342
|
+
type: string
|
|
13343
|
+
nullable: true
|
|
13344
|
+
trigger_source:
|
|
13345
|
+
type: string
|
|
13346
|
+
nullable: true
|
|
13250
13347
|
started_at:
|
|
13251
13348
|
type: string
|
|
13252
13349
|
format: date-time
|
|
13253
|
-
|
|
13350
|
+
finished_at:
|
|
13254
13351
|
type: string
|
|
13255
13352
|
format: date-time
|
|
13256
13353
|
nullable: true
|
|
13257
|
-
|
|
13258
|
-
type:
|
|
13259
|
-
|
|
13260
|
-
|
|
13261
|
-
error:
|
|
13262
|
-
type: string
|
|
13263
|
-
nullable: true
|
|
13354
|
+
tokens_used:
|
|
13355
|
+
type: integer
|
|
13356
|
+
cost_cents:
|
|
13357
|
+
type: integer
|
|
13264
13358
|
|
|
13265
13359
|
AutomationRunListResponse:
|
|
13266
13360
|
type: object
|
|
@@ -13304,6 +13398,14 @@ components:
|
|
|
13304
13398
|
inbound_auth:
|
|
13305
13399
|
type: string
|
|
13306
13400
|
enum: [api_key, jwt, public]
|
|
13401
|
+
shell_access_enabled:
|
|
13402
|
+
type: boolean
|
|
13403
|
+
default: false
|
|
13404
|
+
shell_auth_policy:
|
|
13405
|
+
type: string
|
|
13406
|
+
description: Step-up auth policy for shell (e.g. password, passkey, totp)
|
|
13407
|
+
shell_max_session_minutes:
|
|
13408
|
+
type: integer
|
|
13307
13409
|
|
|
13308
13410
|
UpdateRuntimeRequest:
|
|
13309
13411
|
type: object
|
|
@@ -13331,6 +13433,12 @@ components:
|
|
|
13331
13433
|
inbound_auth:
|
|
13332
13434
|
type: string
|
|
13333
13435
|
enum: [api_key, jwt, public]
|
|
13436
|
+
shell_access_enabled:
|
|
13437
|
+
type: boolean
|
|
13438
|
+
shell_auth_policy:
|
|
13439
|
+
type: string
|
|
13440
|
+
shell_max_session_minutes:
|
|
13441
|
+
type: integer
|
|
13334
13442
|
|
|
13335
13443
|
RuntimeResponse:
|
|
13336
13444
|
type: object
|
|
@@ -13383,6 +13491,12 @@ components:
|
|
|
13383
13491
|
type: string
|
|
13384
13492
|
enum: [api_key, jwt, public]
|
|
13385
13493
|
nullable: true
|
|
13494
|
+
shell_access_enabled:
|
|
13495
|
+
type: boolean
|
|
13496
|
+
shell_auth_policy:
|
|
13497
|
+
type: string
|
|
13498
|
+
shell_max_session_minutes:
|
|
13499
|
+
type: integer
|
|
13386
13500
|
monthly_hours_used:
|
|
13387
13501
|
type: number
|
|
13388
13502
|
nullable: true
|
|
@@ -13414,6 +13528,41 @@ components:
|
|
|
13414
13528
|
type: string
|
|
13415
13529
|
nullable: true
|
|
13416
13530
|
|
|
13531
|
+
ShellSessionRequest:
|
|
13532
|
+
type: object
|
|
13533
|
+
description: |
|
|
13534
|
+
Step-up credentials for an interactive shell session.
|
|
13535
|
+
Provide one of password, totp_code, passkey_credential, or reauth_token.
|
|
13536
|
+
properties:
|
|
13537
|
+
password:
|
|
13538
|
+
type: string
|
|
13539
|
+
totp_code:
|
|
13540
|
+
type: string
|
|
13541
|
+
passkey_credential:
|
|
13542
|
+
type: object
|
|
13543
|
+
additionalProperties: true
|
|
13544
|
+
reauth_token:
|
|
13545
|
+
type: string
|
|
13546
|
+
description: Single-use `rat_` token from POST /v1/auth/reauth (purpose runtime_shell)
|
|
13547
|
+
|
|
13548
|
+
ShellSessionResponse:
|
|
13549
|
+
type: object
|
|
13550
|
+
required: [session_token, ws_url, expires_in, runtime_id, max_session_minutes]
|
|
13551
|
+
properties:
|
|
13552
|
+
session_token:
|
|
13553
|
+
type: string
|
|
13554
|
+
ws_url:
|
|
13555
|
+
type: string
|
|
13556
|
+
description: WebSocket URL for the PTY terminal
|
|
13557
|
+
expires_in:
|
|
13558
|
+
type: integer
|
|
13559
|
+
format: int64
|
|
13560
|
+
runtime_id:
|
|
13561
|
+
type: string
|
|
13562
|
+
format: uuid
|
|
13563
|
+
max_session_minutes:
|
|
13564
|
+
type: integer
|
|
13565
|
+
|
|
13417
13566
|
# --- Agent Memory ---
|
|
13418
13567
|
|
|
13419
13568
|
MemoryEntry:
|