@1claw/openapi-spec 0.61.24 → 0.61.25
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 +98 -6
- package/openapi.yaml +69 -7
- package/package.json +1 -1
package/openapi.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "1Claw API",
|
|
5
|
-
"version": "0.61.
|
|
5
|
+
"version": "0.61.25",
|
|
6
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,\nwebhook tokens, event triggers, Assist), cloud runtimes with\ninteractive shell sessions, agent memory, and discovery.\n\n## Domains\n\n`api.1claw.co` is canonical: it is the OIDC issuer, the `aud` the API\nmints, and the first entry in `servers` — a generated client takes its\nbase URL from there, and the previous ordering pointed every SDK at the\ndomain the issuer had already left. `api.1claw.xyz` still answers and is\nstill accepted on token validation, because tokens minted before the\nmove carry it; it is never minted now.\n\nOne deliberate exception: the Shroud attestation identity token is\nrequested from GCP with `audience: https://api.1claw.xyz`, so\n`/v1/shroud/attestation` reports that as its `expected_audience`. That\nis accurate rather than stale — the audience is a verification contract\nwith anyone already checking the token, and moving it is a breaking\nchange for them, not a rename.\n\nAll endpoints require JWT Bearer authentication unless marked with\n`security: []`.\n",
|
|
7
7
|
"contact": {
|
|
8
8
|
"email": "ops@1claw.co"
|
|
@@ -15947,8 +15947,8 @@
|
|
|
15947
15947
|
"tags": [
|
|
15948
15948
|
"Approvals"
|
|
15949
15949
|
],
|
|
15950
|
-
"summary": "List
|
|
15951
|
-
"description": "
|
|
15950
|
+
"summary": "List approvals",
|
|
15951
|
+
"description": "Humans get their own approval queue. An agent caller gets only the\napprovals it created (`agent_id` = caller) — enough to recover one whose\nid was lost across a restart, never the organization's queue. Supports\nfiltering by status and pagination.\n",
|
|
15952
15952
|
"operationId": "listApprovals",
|
|
15953
15953
|
"parameters": [
|
|
15954
15954
|
{
|
|
@@ -15961,7 +15961,8 @@
|
|
|
15961
15961
|
"pending",
|
|
15962
15962
|
"approved",
|
|
15963
15963
|
"rejected",
|
|
15964
|
-
"expired"
|
|
15964
|
+
"expired",
|
|
15965
|
+
"cancelled"
|
|
15965
15966
|
]
|
|
15966
15967
|
},
|
|
15967
15968
|
"description": "Filter by approval status"
|
|
@@ -16046,6 +16047,61 @@
|
|
|
16046
16047
|
}
|
|
16047
16048
|
}
|
|
16048
16049
|
},
|
|
16050
|
+
"/v1/approvals/{approval_id}/cancel": {
|
|
16051
|
+
"post": {
|
|
16052
|
+
"tags": [
|
|
16053
|
+
"Approvals"
|
|
16054
|
+
],
|
|
16055
|
+
"summary": "Cancel a pending approval (requester)",
|
|
16056
|
+
"description": "Withdraws a pending approval. Callable by the agent that requested it or\nthe human it was addressed to. First answer wins: if the approval was\nalready decided or expired, the existing record is returned unchanged\n(200) rather than an error — the caller's next question is what the\nanswer was. A cancellation is delivered to webhook subscribers as\n`approval.decided` with `decision: \"cancelled\"`, and audited as\n`approval.cancelled`.\n",
|
|
16057
|
+
"operationId": "cancelApproval",
|
|
16058
|
+
"parameters": [
|
|
16059
|
+
{
|
|
16060
|
+
"name": "approval_id",
|
|
16061
|
+
"in": "path",
|
|
16062
|
+
"required": true,
|
|
16063
|
+
"schema": {
|
|
16064
|
+
"type": "string",
|
|
16065
|
+
"format": "uuid"
|
|
16066
|
+
}
|
|
16067
|
+
}
|
|
16068
|
+
],
|
|
16069
|
+
"requestBody": {
|
|
16070
|
+
"required": false,
|
|
16071
|
+
"content": {
|
|
16072
|
+
"application/json": {
|
|
16073
|
+
"schema": {
|
|
16074
|
+
"type": "object",
|
|
16075
|
+
"properties": {
|
|
16076
|
+
"reason": {
|
|
16077
|
+
"type": "string",
|
|
16078
|
+
"maxLength": 500
|
|
16079
|
+
}
|
|
16080
|
+
}
|
|
16081
|
+
}
|
|
16082
|
+
}
|
|
16083
|
+
}
|
|
16084
|
+
},
|
|
16085
|
+
"responses": {
|
|
16086
|
+
"200": {
|
|
16087
|
+
"description": "The approval — `cancelled`, or the decision that landed first",
|
|
16088
|
+
"content": {
|
|
16089
|
+
"application/json": {
|
|
16090
|
+
"schema": {
|
|
16091
|
+
"$ref": "#/components/schemas/ApprovalResponse"
|
|
16092
|
+
}
|
|
16093
|
+
}
|
|
16094
|
+
}
|
|
16095
|
+
},
|
|
16096
|
+
"403": {
|
|
16097
|
+
"$ref": "#/components/responses/Forbidden"
|
|
16098
|
+
},
|
|
16099
|
+
"404": {
|
|
16100
|
+
"$ref": "#/components/responses/NotFound"
|
|
16101
|
+
}
|
|
16102
|
+
}
|
|
16103
|
+
}
|
|
16104
|
+
},
|
|
16049
16105
|
"/v1/approvals/{approval_id}/status": {
|
|
16050
16106
|
"get": {
|
|
16051
16107
|
"tags": [
|
|
@@ -39388,7 +39444,8 @@
|
|
|
39388
39444
|
"pending",
|
|
39389
39445
|
"approved",
|
|
39390
39446
|
"rejected",
|
|
39391
|
-
"expired"
|
|
39447
|
+
"expired",
|
|
39448
|
+
"cancelled"
|
|
39392
39449
|
]
|
|
39393
39450
|
},
|
|
39394
39451
|
"summary": {
|
|
@@ -39454,7 +39511,8 @@
|
|
|
39454
39511
|
"pending",
|
|
39455
39512
|
"approved",
|
|
39456
39513
|
"rejected",
|
|
39457
|
-
"expired"
|
|
39514
|
+
"expired",
|
|
39515
|
+
"cancelled"
|
|
39458
39516
|
]
|
|
39459
39517
|
},
|
|
39460
39518
|
"expires_at": {
|
|
@@ -42311,6 +42369,19 @@
|
|
|
42311
42369
|
"type": "number",
|
|
42312
42370
|
"nullable": true
|
|
42313
42371
|
},
|
|
42372
|
+
"has_paid_addon": {
|
|
42373
|
+
"type": "boolean",
|
|
42374
|
+
"description": "Whether this runtime has a paid Stripe add-on (unlimited hours)."
|
|
42375
|
+
},
|
|
42376
|
+
"billing_kind": {
|
|
42377
|
+
"type": "string",
|
|
42378
|
+
"enum": [
|
|
42379
|
+
"pool",
|
|
42380
|
+
"included",
|
|
42381
|
+
"addon"
|
|
42382
|
+
],
|
|
42383
|
+
"description": "`pool` — counts against the plan's monthly runtime hours. `included` — the plan's\nfree runtime (every plan from Pro up includes one small or medium runtime, no hour\ncap, no charge). `addon` — paid Stripe subscription item (no hour cap).\n"
|
|
42384
|
+
},
|
|
42314
42385
|
"created_at": {
|
|
42315
42386
|
"type": "string",
|
|
42316
42387
|
"format": "date-time"
|
|
@@ -42332,6 +42403,27 @@
|
|
|
42332
42403
|
"items": {
|
|
42333
42404
|
"$ref": "#/components/schemas/RuntimeResponse"
|
|
42334
42405
|
}
|
|
42406
|
+
},
|
|
42407
|
+
"included_runtime": {
|
|
42408
|
+
"type": "object",
|
|
42409
|
+
"description": "The plan's included-runtime allowance (human callers only).",
|
|
42410
|
+
"properties": {
|
|
42411
|
+
"allowance": {
|
|
42412
|
+
"type": "integer",
|
|
42413
|
+
"description": "Runtimes the plan includes at no charge."
|
|
42414
|
+
},
|
|
42415
|
+
"used": {
|
|
42416
|
+
"type": "integer",
|
|
42417
|
+
"description": "Included slots currently in use."
|
|
42418
|
+
},
|
|
42419
|
+
"presets": {
|
|
42420
|
+
"type": "array",
|
|
42421
|
+
"items": {
|
|
42422
|
+
"type": "string"
|
|
42423
|
+
},
|
|
42424
|
+
"description": "Presets an included runtime may use (up to 1 vCPU / 2 GB)."
|
|
42425
|
+
}
|
|
42426
|
+
}
|
|
42335
42427
|
}
|
|
42336
42428
|
}
|
|
42337
42429
|
},
|
package/openapi.yaml
CHANGED
|
@@ -2,7 +2,7 @@ openapi: 3.1.0
|
|
|
2
2
|
|
|
3
3
|
info:
|
|
4
4
|
title: 1Claw API
|
|
5
|
-
version: "0.61.
|
|
5
|
+
version: "0.61.25"
|
|
6
6
|
description: |
|
|
7
7
|
Secure secret management for AI agents. Provides vaults, secrets,
|
|
8
8
|
policy-based access control, agent identity, Intents API,
|
|
@@ -10184,10 +10184,12 @@ paths:
|
|
|
10184
10184
|
/v1/approvals:
|
|
10185
10185
|
get:
|
|
10186
10186
|
tags: [Approvals]
|
|
10187
|
-
summary: List
|
|
10187
|
+
summary: List approvals
|
|
10188
10188
|
description: |
|
|
10189
|
-
|
|
10190
|
-
|
|
10189
|
+
Humans get their own approval queue. An agent caller gets only the
|
|
10190
|
+
approvals it created (`agent_id` = caller) — enough to recover one whose
|
|
10191
|
+
id was lost across a restart, never the organization's queue. Supports
|
|
10192
|
+
filtering by status and pagination.
|
|
10191
10193
|
operationId: listApprovals
|
|
10192
10194
|
parameters:
|
|
10193
10195
|
- name: status
|
|
@@ -10195,7 +10197,7 @@ paths:
|
|
|
10195
10197
|
required: false
|
|
10196
10198
|
schema:
|
|
10197
10199
|
type: string
|
|
10198
|
-
enum: [pending, approved, rejected, expired]
|
|
10200
|
+
enum: [pending, approved, rejected, expired, cancelled]
|
|
10199
10201
|
description: Filter by approval status
|
|
10200
10202
|
- name: limit
|
|
10201
10203
|
in: query
|
|
@@ -10246,6 +10248,46 @@ paths:
|
|
|
10246
10248
|
"404":
|
|
10247
10249
|
$ref: "#/components/responses/NotFound"
|
|
10248
10250
|
|
|
10251
|
+
/v1/approvals/{approval_id}/cancel:
|
|
10252
|
+
post:
|
|
10253
|
+
tags: [Approvals]
|
|
10254
|
+
summary: Cancel a pending approval (requester)
|
|
10255
|
+
description: |
|
|
10256
|
+
Withdraws a pending approval. Callable by the agent that requested it or
|
|
10257
|
+
the human it was addressed to. First answer wins: if the approval was
|
|
10258
|
+
already decided or expired, the existing record is returned unchanged
|
|
10259
|
+
(200) rather than an error — the caller's next question is what the
|
|
10260
|
+
answer was. A cancellation is delivered to webhook subscribers as
|
|
10261
|
+
`approval.decided` with `decision: "cancelled"`, and audited as
|
|
10262
|
+
`approval.cancelled`.
|
|
10263
|
+
operationId: cancelApproval
|
|
10264
|
+
parameters:
|
|
10265
|
+
- name: approval_id
|
|
10266
|
+
in: path
|
|
10267
|
+
required: true
|
|
10268
|
+
schema:
|
|
10269
|
+
type: string
|
|
10270
|
+
format: uuid
|
|
10271
|
+
requestBody:
|
|
10272
|
+
required: false
|
|
10273
|
+
content:
|
|
10274
|
+
application/json:
|
|
10275
|
+
schema:
|
|
10276
|
+
type: object
|
|
10277
|
+
properties:
|
|
10278
|
+
reason: { type: string, maxLength: 500 }
|
|
10279
|
+
responses:
|
|
10280
|
+
"200":
|
|
10281
|
+
description: The approval — `cancelled`, or the decision that landed first
|
|
10282
|
+
content:
|
|
10283
|
+
application/json:
|
|
10284
|
+
schema:
|
|
10285
|
+
$ref: "#/components/schemas/ApprovalResponse"
|
|
10286
|
+
"403":
|
|
10287
|
+
$ref: "#/components/responses/Forbidden"
|
|
10288
|
+
"404":
|
|
10289
|
+
$ref: "#/components/responses/NotFound"
|
|
10290
|
+
|
|
10249
10291
|
/v1/approvals/{approval_id}/status:
|
|
10250
10292
|
get:
|
|
10251
10293
|
tags: [Approvals]
|
|
@@ -25532,7 +25574,7 @@ components:
|
|
|
25532
25574
|
description: "What the action will do, as submitted."
|
|
25533
25575
|
status:
|
|
25534
25576
|
type: string
|
|
25535
|
-
enum: [pending, approved, rejected, expired]
|
|
25577
|
+
enum: [pending, approved, rejected, expired, cancelled]
|
|
25536
25578
|
summary:
|
|
25537
25579
|
type: object
|
|
25538
25580
|
description: Structured summary of the action requiring approval
|
|
@@ -25575,7 +25617,7 @@ components:
|
|
|
25575
25617
|
properties:
|
|
25576
25618
|
status:
|
|
25577
25619
|
type: string
|
|
25578
|
-
enum: [pending, approved, rejected, expired]
|
|
25620
|
+
enum: [pending, approved, rejected, expired, cancelled]
|
|
25579
25621
|
expires_at:
|
|
25580
25622
|
type: string
|
|
25581
25623
|
format: date-time
|
|
@@ -27373,6 +27415,16 @@ components:
|
|
|
27373
27415
|
monthly_hours_used:
|
|
27374
27416
|
type: number
|
|
27375
27417
|
nullable: true
|
|
27418
|
+
has_paid_addon:
|
|
27419
|
+
type: boolean
|
|
27420
|
+
description: Whether this runtime has a paid Stripe add-on (unlimited hours).
|
|
27421
|
+
billing_kind:
|
|
27422
|
+
type: string
|
|
27423
|
+
enum: [pool, included, addon]
|
|
27424
|
+
description: |
|
|
27425
|
+
`pool` — counts against the plan's monthly runtime hours. `included` — the plan's
|
|
27426
|
+
free runtime (every plan from Pro up includes one small or medium runtime, no hour
|
|
27427
|
+
cap, no charge). `addon` — paid Stripe subscription item (no hour cap).
|
|
27376
27428
|
created_at:
|
|
27377
27429
|
type: string
|
|
27378
27430
|
format: date-time
|
|
@@ -27388,6 +27440,16 @@ components:
|
|
|
27388
27440
|
type: array
|
|
27389
27441
|
items:
|
|
27390
27442
|
$ref: "#/components/schemas/RuntimeResponse"
|
|
27443
|
+
included_runtime:
|
|
27444
|
+
type: object
|
|
27445
|
+
description: The plan's included-runtime allowance (human callers only).
|
|
27446
|
+
properties:
|
|
27447
|
+
allowance: { type: integer, description: Runtimes the plan includes at no charge. }
|
|
27448
|
+
used: { type: integer, description: Included slots currently in use. }
|
|
27449
|
+
presets:
|
|
27450
|
+
type: array
|
|
27451
|
+
items: { type: string }
|
|
27452
|
+
description: Presets an included runtime may use (up to 1 vCPU / 2 GB).
|
|
27391
27453
|
|
|
27392
27454
|
SlugCheckResponse:
|
|
27393
27455
|
type: object
|