@1claw/openapi-spec 0.61.35 → 0.61.36
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 +275 -1
- package/openapi.yaml +183 -1
- 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.36",
|
|
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"
|
|
@@ -19356,6 +19356,159 @@
|
|
|
19356
19356
|
}
|
|
19357
19357
|
}
|
|
19358
19358
|
},
|
|
19359
|
+
"/v1/automations/dry-run": {
|
|
19360
|
+
"post": {
|
|
19361
|
+
"tags": [
|
|
19362
|
+
"Automations"
|
|
19363
|
+
],
|
|
19364
|
+
"summary": "Preview an unsaved workflow spec",
|
|
19365
|
+
"operationId": "dryRunAutomationSpec",
|
|
19366
|
+
"description": "What a run would do, with nothing done: every step after template substitution\nagainst a simulated context, its side effect, its `on_error` policy, templates\nthat would resolve to nothing, conditions, and the budget it would hit. Step\noutputs are placeholders, so later steps' `{{steps.N.output…}}` show empty here.\n",
|
|
19367
|
+
"requestBody": {
|
|
19368
|
+
"required": true,
|
|
19369
|
+
"content": {
|
|
19370
|
+
"application/json": {
|
|
19371
|
+
"schema": {
|
|
19372
|
+
"$ref": "#/components/schemas/DryRunRequest"
|
|
19373
|
+
}
|
|
19374
|
+
}
|
|
19375
|
+
}
|
|
19376
|
+
},
|
|
19377
|
+
"responses": {
|
|
19378
|
+
"200": {
|
|
19379
|
+
"description": "Preview",
|
|
19380
|
+
"content": {
|
|
19381
|
+
"application/json": {
|
|
19382
|
+
"schema": {
|
|
19383
|
+
"$ref": "#/components/schemas/DryRunResponse"
|
|
19384
|
+
}
|
|
19385
|
+
}
|
|
19386
|
+
}
|
|
19387
|
+
},
|
|
19388
|
+
"401": {
|
|
19389
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
19390
|
+
}
|
|
19391
|
+
}
|
|
19392
|
+
}
|
|
19393
|
+
},
|
|
19394
|
+
"/v1/automations/{automationId}/dry-run": {
|
|
19395
|
+
"post": {
|
|
19396
|
+
"tags": [
|
|
19397
|
+
"Automations"
|
|
19398
|
+
],
|
|
19399
|
+
"summary": "Preview a run of this automation",
|
|
19400
|
+
"operationId": "dryRunAutomation",
|
|
19401
|
+
"description": "Same as the unsaved preview, defaulting to the automation's current spec.",
|
|
19402
|
+
"parameters": [
|
|
19403
|
+
{
|
|
19404
|
+
"name": "automationId",
|
|
19405
|
+
"in": "path",
|
|
19406
|
+
"required": true,
|
|
19407
|
+
"schema": {
|
|
19408
|
+
"type": "string",
|
|
19409
|
+
"format": "uuid"
|
|
19410
|
+
}
|
|
19411
|
+
}
|
|
19412
|
+
],
|
|
19413
|
+
"requestBody": {
|
|
19414
|
+
"required": false,
|
|
19415
|
+
"content": {
|
|
19416
|
+
"application/json": {
|
|
19417
|
+
"schema": {
|
|
19418
|
+
"$ref": "#/components/schemas/DryRunRequest"
|
|
19419
|
+
}
|
|
19420
|
+
}
|
|
19421
|
+
}
|
|
19422
|
+
},
|
|
19423
|
+
"responses": {
|
|
19424
|
+
"200": {
|
|
19425
|
+
"description": "Preview",
|
|
19426
|
+
"content": {
|
|
19427
|
+
"application/json": {
|
|
19428
|
+
"schema": {
|
|
19429
|
+
"$ref": "#/components/schemas/DryRunResponse"
|
|
19430
|
+
}
|
|
19431
|
+
}
|
|
19432
|
+
}
|
|
19433
|
+
},
|
|
19434
|
+
"401": {
|
|
19435
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
19436
|
+
},
|
|
19437
|
+
"404": {
|
|
19438
|
+
"$ref": "#/components/responses/NotFound"
|
|
19439
|
+
}
|
|
19440
|
+
}
|
|
19441
|
+
}
|
|
19442
|
+
},
|
|
19443
|
+
"/v1/automations/{automationId}/runs/{runId}/rerun": {
|
|
19444
|
+
"post": {
|
|
19445
|
+
"tags": [
|
|
19446
|
+
"Automations"
|
|
19447
|
+
],
|
|
19448
|
+
"summary": "Re-run from a step",
|
|
19449
|
+
"operationId": "rerunAutomationFromStep",
|
|
19450
|
+
"description": "Start a new run seeded with this run's results up to `from_step` and continue from\nthere, on the spec version the original run executed. Human-only; the original\nrun must be finished. The new run has `trigger_source: rerun` and `parent_run_id`.\n",
|
|
19451
|
+
"parameters": [
|
|
19452
|
+
{
|
|
19453
|
+
"name": "automationId",
|
|
19454
|
+
"in": "path",
|
|
19455
|
+
"required": true,
|
|
19456
|
+
"schema": {
|
|
19457
|
+
"type": "string",
|
|
19458
|
+
"format": "uuid"
|
|
19459
|
+
}
|
|
19460
|
+
},
|
|
19461
|
+
{
|
|
19462
|
+
"name": "runId",
|
|
19463
|
+
"in": "path",
|
|
19464
|
+
"required": true,
|
|
19465
|
+
"schema": {
|
|
19466
|
+
"type": "string",
|
|
19467
|
+
"format": "uuid"
|
|
19468
|
+
}
|
|
19469
|
+
}
|
|
19470
|
+
],
|
|
19471
|
+
"requestBody": {
|
|
19472
|
+
"required": false,
|
|
19473
|
+
"content": {
|
|
19474
|
+
"application/json": {
|
|
19475
|
+
"schema": {
|
|
19476
|
+
"type": "object",
|
|
19477
|
+
"properties": {
|
|
19478
|
+
"from_step": {
|
|
19479
|
+
"type": "integer",
|
|
19480
|
+
"minimum": 0,
|
|
19481
|
+
"default": 0,
|
|
19482
|
+
"description": "Zero-based step index to start from."
|
|
19483
|
+
}
|
|
19484
|
+
}
|
|
19485
|
+
}
|
|
19486
|
+
}
|
|
19487
|
+
}
|
|
19488
|
+
},
|
|
19489
|
+
"responses": {
|
|
19490
|
+
"201": {
|
|
19491
|
+
"description": "The new run",
|
|
19492
|
+
"content": {
|
|
19493
|
+
"application/json": {
|
|
19494
|
+
"schema": {
|
|
19495
|
+
"$ref": "#/components/schemas/AutomationRunResponse"
|
|
19496
|
+
}
|
|
19497
|
+
}
|
|
19498
|
+
}
|
|
19499
|
+
},
|
|
19500
|
+
"400": {
|
|
19501
|
+
"$ref": "#/components/responses/BadRequest"
|
|
19502
|
+
},
|
|
19503
|
+
"401": {
|
|
19504
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
19505
|
+
},
|
|
19506
|
+
"404": {
|
|
19507
|
+
"$ref": "#/components/responses/NotFound"
|
|
19508
|
+
}
|
|
19509
|
+
}
|
|
19510
|
+
}
|
|
19511
|
+
},
|
|
19359
19512
|
"/v1/automations/{automationId}/versions": {
|
|
19360
19513
|
"get": {
|
|
19361
19514
|
"tags": [
|
|
@@ -43200,6 +43353,127 @@
|
|
|
43200
43353
|
}
|
|
43201
43354
|
}
|
|
43202
43355
|
},
|
|
43356
|
+
"DryRunRequest": {
|
|
43357
|
+
"type": "object",
|
|
43358
|
+
"properties": {
|
|
43359
|
+
"workflow_spec": {
|
|
43360
|
+
"description": "Spec to preview (required on the unsaved-spec route).",
|
|
43361
|
+
"oneOf": [
|
|
43362
|
+
{
|
|
43363
|
+
"type": "array",
|
|
43364
|
+
"items": {
|
|
43365
|
+
"type": "object",
|
|
43366
|
+
"additionalProperties": true
|
|
43367
|
+
}
|
|
43368
|
+
},
|
|
43369
|
+
{
|
|
43370
|
+
"type": "object",
|
|
43371
|
+
"additionalProperties": true
|
|
43372
|
+
}
|
|
43373
|
+
]
|
|
43374
|
+
},
|
|
43375
|
+
"input": {
|
|
43376
|
+
"type": "object",
|
|
43377
|
+
"additionalProperties": true,
|
|
43378
|
+
"description": "Simulated trigger payload (`{{trigger.*}}`)."
|
|
43379
|
+
}
|
|
43380
|
+
}
|
|
43381
|
+
},
|
|
43382
|
+
"DryRunResponse": {
|
|
43383
|
+
"type": "object",
|
|
43384
|
+
"required": [
|
|
43385
|
+
"ok"
|
|
43386
|
+
],
|
|
43387
|
+
"properties": {
|
|
43388
|
+
"ok": {
|
|
43389
|
+
"type": "boolean",
|
|
43390
|
+
"description": "True when there are no warnings."
|
|
43391
|
+
},
|
|
43392
|
+
"error": {
|
|
43393
|
+
"type": "string"
|
|
43394
|
+
},
|
|
43395
|
+
"warnings": {
|
|
43396
|
+
"type": "array",
|
|
43397
|
+
"items": {
|
|
43398
|
+
"type": "string"
|
|
43399
|
+
}
|
|
43400
|
+
},
|
|
43401
|
+
"parks": {
|
|
43402
|
+
"type": "integer",
|
|
43403
|
+
"description": "How many steps park the run."
|
|
43404
|
+
},
|
|
43405
|
+
"budget": {
|
|
43406
|
+
"type": "object",
|
|
43407
|
+
"additionalProperties": true
|
|
43408
|
+
},
|
|
43409
|
+
"steps": {
|
|
43410
|
+
"type": "array",
|
|
43411
|
+
"items": {
|
|
43412
|
+
"type": "object",
|
|
43413
|
+
"required": [
|
|
43414
|
+
"index",
|
|
43415
|
+
"type",
|
|
43416
|
+
"known",
|
|
43417
|
+
"resolved",
|
|
43418
|
+
"effect",
|
|
43419
|
+
"on_error",
|
|
43420
|
+
"unresolved_templates"
|
|
43421
|
+
],
|
|
43422
|
+
"properties": {
|
|
43423
|
+
"index": {
|
|
43424
|
+
"type": "integer"
|
|
43425
|
+
},
|
|
43426
|
+
"name": {
|
|
43427
|
+
"type": "string",
|
|
43428
|
+
"nullable": true
|
|
43429
|
+
},
|
|
43430
|
+
"type": {
|
|
43431
|
+
"type": "string"
|
|
43432
|
+
},
|
|
43433
|
+
"known": {
|
|
43434
|
+
"type": "boolean"
|
|
43435
|
+
},
|
|
43436
|
+
"resolved": {
|
|
43437
|
+
"type": "object",
|
|
43438
|
+
"additionalProperties": true,
|
|
43439
|
+
"description": "The step after template substitution."
|
|
43440
|
+
},
|
|
43441
|
+
"skipped_by": {
|
|
43442
|
+
"type": "string",
|
|
43443
|
+
"nullable": true
|
|
43444
|
+
},
|
|
43445
|
+
"effect": {
|
|
43446
|
+
"type": "string"
|
|
43447
|
+
},
|
|
43448
|
+
"on_error": {
|
|
43449
|
+
"type": "object",
|
|
43450
|
+
"properties": {
|
|
43451
|
+
"action": {
|
|
43452
|
+
"type": "string"
|
|
43453
|
+
},
|
|
43454
|
+
"max_attempts": {
|
|
43455
|
+
"type": "integer"
|
|
43456
|
+
},
|
|
43457
|
+
"backoff_secs": {
|
|
43458
|
+
"type": "integer"
|
|
43459
|
+
}
|
|
43460
|
+
}
|
|
43461
|
+
},
|
|
43462
|
+
"unresolved_templates": {
|
|
43463
|
+
"type": "array",
|
|
43464
|
+
"items": {
|
|
43465
|
+
"type": "string"
|
|
43466
|
+
}
|
|
43467
|
+
},
|
|
43468
|
+
"budget_exceeded": {
|
|
43469
|
+
"type": "string",
|
|
43470
|
+
"nullable": true
|
|
43471
|
+
}
|
|
43472
|
+
}
|
|
43473
|
+
}
|
|
43474
|
+
}
|
|
43475
|
+
}
|
|
43476
|
+
},
|
|
43203
43477
|
"TriggerAutomationRequest": {
|
|
43204
43478
|
"type": "object",
|
|
43205
43479
|
"properties": {
|
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.36"
|
|
6
6
|
description: |
|
|
7
7
|
Secure secret management for AI agents. Provides vaults, secrets,
|
|
8
8
|
policy-based access control, agent identity, Intents API,
|
|
@@ -12338,6 +12338,111 @@ paths:
|
|
|
12338
12338
|
"409":
|
|
12339
12339
|
$ref: "#/components/responses/Conflict"
|
|
12340
12340
|
|
|
12341
|
+
/v1/automations/dry-run:
|
|
12342
|
+
post:
|
|
12343
|
+
tags: [Automations]
|
|
12344
|
+
summary: Preview an unsaved workflow spec
|
|
12345
|
+
operationId: dryRunAutomationSpec
|
|
12346
|
+
description: |
|
|
12347
|
+
What a run would do, with nothing done: every step after template substitution
|
|
12348
|
+
against a simulated context, its side effect, its `on_error` policy, templates
|
|
12349
|
+
that would resolve to nothing, conditions, and the budget it would hit. Step
|
|
12350
|
+
outputs are placeholders, so later steps' `{{steps.N.output…}}` show empty here.
|
|
12351
|
+
requestBody:
|
|
12352
|
+
required: true
|
|
12353
|
+
content:
|
|
12354
|
+
application/json:
|
|
12355
|
+
schema:
|
|
12356
|
+
$ref: "#/components/schemas/DryRunRequest"
|
|
12357
|
+
responses:
|
|
12358
|
+
"200":
|
|
12359
|
+
description: Preview
|
|
12360
|
+
content:
|
|
12361
|
+
application/json:
|
|
12362
|
+
schema:
|
|
12363
|
+
$ref: "#/components/schemas/DryRunResponse"
|
|
12364
|
+
"401":
|
|
12365
|
+
$ref: "#/components/responses/Unauthorized"
|
|
12366
|
+
|
|
12367
|
+
/v1/automations/{automationId}/dry-run:
|
|
12368
|
+
post:
|
|
12369
|
+
tags: [Automations]
|
|
12370
|
+
summary: Preview a run of this automation
|
|
12371
|
+
operationId: dryRunAutomation
|
|
12372
|
+
description: Same as the unsaved preview, defaulting to the automation's current spec.
|
|
12373
|
+
parameters:
|
|
12374
|
+
- name: automationId
|
|
12375
|
+
in: path
|
|
12376
|
+
required: true
|
|
12377
|
+
schema:
|
|
12378
|
+
type: string
|
|
12379
|
+
format: uuid
|
|
12380
|
+
requestBody:
|
|
12381
|
+
required: false
|
|
12382
|
+
content:
|
|
12383
|
+
application/json:
|
|
12384
|
+
schema:
|
|
12385
|
+
$ref: "#/components/schemas/DryRunRequest"
|
|
12386
|
+
responses:
|
|
12387
|
+
"200":
|
|
12388
|
+
description: Preview
|
|
12389
|
+
content:
|
|
12390
|
+
application/json:
|
|
12391
|
+
schema:
|
|
12392
|
+
$ref: "#/components/schemas/DryRunResponse"
|
|
12393
|
+
"401":
|
|
12394
|
+
$ref: "#/components/responses/Unauthorized"
|
|
12395
|
+
"404":
|
|
12396
|
+
$ref: "#/components/responses/NotFound"
|
|
12397
|
+
|
|
12398
|
+
/v1/automations/{automationId}/runs/{runId}/rerun:
|
|
12399
|
+
post:
|
|
12400
|
+
tags: [Automations]
|
|
12401
|
+
summary: Re-run from a step
|
|
12402
|
+
operationId: rerunAutomationFromStep
|
|
12403
|
+
description: |
|
|
12404
|
+
Start a new run seeded with this run's results up to `from_step` and continue from
|
|
12405
|
+
there, on the spec version the original run executed. Human-only; the original
|
|
12406
|
+
run must be finished. The new run has `trigger_source: rerun` and `parent_run_id`.
|
|
12407
|
+
parameters:
|
|
12408
|
+
- name: automationId
|
|
12409
|
+
in: path
|
|
12410
|
+
required: true
|
|
12411
|
+
schema:
|
|
12412
|
+
type: string
|
|
12413
|
+
format: uuid
|
|
12414
|
+
- name: runId
|
|
12415
|
+
in: path
|
|
12416
|
+
required: true
|
|
12417
|
+
schema:
|
|
12418
|
+
type: string
|
|
12419
|
+
format: uuid
|
|
12420
|
+
requestBody:
|
|
12421
|
+
required: false
|
|
12422
|
+
content:
|
|
12423
|
+
application/json:
|
|
12424
|
+
schema:
|
|
12425
|
+
type: object
|
|
12426
|
+
properties:
|
|
12427
|
+
from_step:
|
|
12428
|
+
type: integer
|
|
12429
|
+
minimum: 0
|
|
12430
|
+
default: 0
|
|
12431
|
+
description: Zero-based step index to start from.
|
|
12432
|
+
responses:
|
|
12433
|
+
"201":
|
|
12434
|
+
description: The new run
|
|
12435
|
+
content:
|
|
12436
|
+
application/json:
|
|
12437
|
+
schema:
|
|
12438
|
+
$ref: "#/components/schemas/AutomationRunResponse"
|
|
12439
|
+
"400":
|
|
12440
|
+
$ref: "#/components/responses/BadRequest"
|
|
12441
|
+
"401":
|
|
12442
|
+
$ref: "#/components/responses/Unauthorized"
|
|
12443
|
+
"404":
|
|
12444
|
+
$ref: "#/components/responses/NotFound"
|
|
12445
|
+
|
|
12341
12446
|
/v1/automations/{automationId}/versions:
|
|
12342
12447
|
get:
|
|
12343
12448
|
tags: [Automations]
|
|
@@ -27956,6 +28061,83 @@ components:
|
|
|
27956
28061
|
format: uuid
|
|
27957
28062
|
description: Control-plane approval when rolling back to a wider spec.
|
|
27958
28063
|
|
|
28064
|
+
DryRunRequest:
|
|
28065
|
+
type: object
|
|
28066
|
+
properties:
|
|
28067
|
+
workflow_spec:
|
|
28068
|
+
description: Spec to preview (required on the unsaved-spec route).
|
|
28069
|
+
oneOf:
|
|
28070
|
+
- type: array
|
|
28071
|
+
items:
|
|
28072
|
+
type: object
|
|
28073
|
+
additionalProperties: true
|
|
28074
|
+
- type: object
|
|
28075
|
+
additionalProperties: true
|
|
28076
|
+
input:
|
|
28077
|
+
type: object
|
|
28078
|
+
additionalProperties: true
|
|
28079
|
+
description: Simulated trigger payload (`{{trigger.*}}`).
|
|
28080
|
+
|
|
28081
|
+
DryRunResponse:
|
|
28082
|
+
type: object
|
|
28083
|
+
required: [ok]
|
|
28084
|
+
properties:
|
|
28085
|
+
ok:
|
|
28086
|
+
type: boolean
|
|
28087
|
+
description: True when there are no warnings.
|
|
28088
|
+
error:
|
|
28089
|
+
type: string
|
|
28090
|
+
warnings:
|
|
28091
|
+
type: array
|
|
28092
|
+
items:
|
|
28093
|
+
type: string
|
|
28094
|
+
parks:
|
|
28095
|
+
type: integer
|
|
28096
|
+
description: How many steps park the run.
|
|
28097
|
+
budget:
|
|
28098
|
+
type: object
|
|
28099
|
+
additionalProperties: true
|
|
28100
|
+
steps:
|
|
28101
|
+
type: array
|
|
28102
|
+
items:
|
|
28103
|
+
type: object
|
|
28104
|
+
required: [index, type, known, resolved, effect, on_error, unresolved_templates]
|
|
28105
|
+
properties:
|
|
28106
|
+
index:
|
|
28107
|
+
type: integer
|
|
28108
|
+
name:
|
|
28109
|
+
type: string
|
|
28110
|
+
nullable: true
|
|
28111
|
+
type:
|
|
28112
|
+
type: string
|
|
28113
|
+
known:
|
|
28114
|
+
type: boolean
|
|
28115
|
+
resolved:
|
|
28116
|
+
type: object
|
|
28117
|
+
additionalProperties: true
|
|
28118
|
+
description: The step after template substitution.
|
|
28119
|
+
skipped_by:
|
|
28120
|
+
type: string
|
|
28121
|
+
nullable: true
|
|
28122
|
+
effect:
|
|
28123
|
+
type: string
|
|
28124
|
+
on_error:
|
|
28125
|
+
type: object
|
|
28126
|
+
properties:
|
|
28127
|
+
action:
|
|
28128
|
+
type: string
|
|
28129
|
+
max_attempts:
|
|
28130
|
+
type: integer
|
|
28131
|
+
backoff_secs:
|
|
28132
|
+
type: integer
|
|
28133
|
+
unresolved_templates:
|
|
28134
|
+
type: array
|
|
28135
|
+
items:
|
|
28136
|
+
type: string
|
|
28137
|
+
budget_exceeded:
|
|
28138
|
+
type: string
|
|
28139
|
+
nullable: true
|
|
28140
|
+
|
|
27959
28141
|
TriggerAutomationRequest:
|
|
27960
28142
|
type: object
|
|
27961
28143
|
properties:
|