@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.
Files changed (3) hide show
  1. package/openapi.json +293 -78
  2. package/openapi.yaml +208 -59
  3. 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.29.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, cloud runtimes,\nagent memory, and discovery.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
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
- "schedule",
19969
- "webhook",
20068
+ "cron",
19970
20069
  "event",
19971
- "manual"
20070
+ "webhook",
20071
+ "manual",
20072
+ "schedule"
19972
20073
  ]
19973
20074
  },
19974
- "trigger_config": {
19975
- "type": "object",
19976
- "additionalProperties": true
20075
+ "cron_expr": {
20076
+ "type": "string",
20077
+ "description": "Required when trigger_type is cron (or schedule)",
20078
+ "example": "0 */6 * * *"
19977
20079
  },
19978
- "action_type": {
19979
- "type": "string"
20080
+ "timezone": {
20081
+ "type": "string",
20082
+ "default": "UTC",
20083
+ "example": "UTC"
19980
20084
  },
19981
- "action_config": {
20085
+ "event_filter": {
19982
20086
  "type": "object",
19983
- "additionalProperties": true
20087
+ "additionalProperties": true,
20088
+ "nullable": true
19984
20089
  },
19985
- "is_active": {
19986
- "type": "boolean",
19987
- "default": true
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
- "description": {
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
- "enum": [
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
- "action_type": {
20118
+ "timezone": {
20018
20119
  "type": "string"
20019
20120
  },
20020
- "action_config": {
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
- "nullable": true
20166
+ "format": "uuid"
20167
+ },
20168
+ "name": {
20169
+ "type": "string"
20055
20170
  },
20056
20171
  "trigger_type": {
20057
20172
  "type": "string",
20058
20173
  "enum": [
20059
- "schedule",
20060
- "webhook",
20174
+ "cron",
20061
20175
  "event",
20176
+ "webhook",
20062
20177
  "manual"
20063
20178
  ]
20064
20179
  },
20065
- "trigger_config": {
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
- "action_config": {
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
- "webhook_url": {
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
- "last_run_at": {
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
- "completed_at": {
20293
+ "finished_at": {
20155
20294
  "type": "string",
20156
20295
  "format": "date-time",
20157
20296
  "nullable": true
20158
20297
  },
20159
- "result": {
20160
- "type": "object",
20161
- "additionalProperties": true,
20162
- "nullable": true
20298
+ "tokens_used": {
20299
+ "type": "integer"
20163
20300
  },
20164
- "error": {
20165
- "type": "string",
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.29.0
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, cloud runtimes,
10
- agent memory, and discovery.
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
- enum: [schedule, webhook, event, manual]
13139
- trigger_config:
13140
- type: object
13141
- additionalProperties: true
13142
- action_type:
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
- action_config:
13222
+ default: UTC
13223
+ example: UTC
13224
+ event_filter:
13145
13225
  type: object
13146
13226
  additionalProperties: true
13147
- is_active:
13148
- type: boolean
13149
- default: true
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
- description:
13157
- type: string
13158
- agent_id:
13159
- type: string
13160
- format: uuid
13161
- trigger_type:
13245
+ cron_expr:
13162
13246
  type: string
13163
- enum: [schedule, webhook, event, manual]
13164
- trigger_config:
13165
- type: object
13166
- additionalProperties: true
13167
- action_type:
13247
+ nullable: true
13248
+ timezone:
13168
13249
  type: string
13169
- action_config:
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
- nullable: true
13275
+ name:
13276
+ type: string
13191
13277
  trigger_type:
13192
13278
  type: string
13193
- enum: [schedule, webhook, event, manual]
13194
- trigger_config:
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
- action_config:
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
- webhook_url:
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
- last_run_at:
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
- completed_at:
13350
+ finished_at:
13254
13351
  type: string
13255
13352
  format: date-time
13256
13353
  nullable: true
13257
- result:
13258
- type: object
13259
- additionalProperties: true
13260
- nullable: true
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:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1claw/openapi-spec",
3
- "version": "0.43.0",
3
+ "version": "0.43.1",
4
4
  "description": "OpenAPI 3.1.0 specification for the 1Claw Vault API \u2014 generate clients in any language",
5
5
  "license": "MIT",
6
6
  "repository": {