/\ ATFGraph /docs
README Downloads
HTTP API & schemas / ATFGraph
Framework reference

This article is retained from the existing framework docs. Self-hosting commands and server-admin access differ from the managed CLI workflow. Start with Get started for the installed product.

Request and response schemas

280 component schemas from contracts/openapi-v2.json.

Look up a request or response type to check its fields, required values and constraints. Replace generated example values before sending a request.

Index

Accepted

FieldTypeRequired
acceptedbooleanyes

Used by: completeTask, reportProgress

{
  "accepted": false
}

AccessAdmission

Preview (`evaluate`) or charge (`admit`) an operation for the authenticated caller. `target` is `label.capability`; `input` is the invocation payload the constraints are matched against. Workers pass their lease to act as the leased effective principal.

FieldTypeRequired
inputany JSONno
lease_tokenstring or nullno
operationstringyes
step_idstring or nullno
targetstring or nullno
task_idstring or nullno

Used by: admitAccess, evaluateAccess

{
  "input": {},
  "lease_token": "string",
  "operation": "string",
  "step_id": "string",
  "target": "string",
  "task_id": "string"
}

AccessConnector

A connector binding. `revoked_at` is set once and never cleared: a revoked connector never becomes an unrestricted bearer principal again.

FieldTypeRequired
enabledbooleanyes
expires_atinteger (int64) or nullno
grantsarray of stringyes
principalstringyes
revisioninteger (int64)yes
revoked_atinteger (int64) or nullno
updated_atinteger (int64)yes

Used by: getConnector, getOwnConnector, putConnector, revokeConnector

{
  "enabled": false,
  "expires_at": 0,
  "grants": [
    "string"
  ],
  "principal": "string",
  "revision": 0,
  "revoked_at": 0,
  "updated_at": 0
}

AccessConnectorList

FieldTypeRequired
itemsarray of AccessConnectoryes

Used by: listConnectors

{
  "items": [
    {
      "enabled": false,
      "expires_at": 0,
      "grants": [
        "string"
      ],
      "principal": "string",
      "revision": 0,
      "revoked_at": 0,
      "updated_at": 0
    }
  ]
}

AccessConnectorPut

Bind an authenticated principal to an allow-list of operation patterns. Create with `expected_revision` absent or 0; replace with the current revision.

FieldTypeRequired
enabledboolean or nullno
expected_revisioninteger (int64) or nullno
expires_atinteger (int64) or nullno
grantsarray of stringyes

Used by: putConnector

{
  "enabled": false,
  "expected_revision": 0,
  "expires_at": 0,
  "grants": [
    "string"
  ]
}

AccessConnectorRevoke

FieldTypeRequired
expected_revisioninteger (int64)yes

Used by: revokeConnector

{
  "expected_revision": 0
}

AccessConstraint

One predicate over a top-level input field. Ordered operators (`<`, `<=`, `>`, `>=`) require a numeric `value`; `==` and `!=` compare JSON values.

FieldTypeRequired
operatorstringyes
valueany JSONyes
{
  "operator": "string",
  "value": {}
}

AccessDecision

A decision is data, not an error: `allowed:false` is returned with 200.

FieldTypeRequired
allowedbooleanyes
budget_idsarray of string or nullno
policy_idsarray of stringyes
reasonAccessDecisionReasonyes
retry_after_msinteger (int64)yes
warningsarray of BudgetUsage or nullno

Used by: admitAccess, evaluateAccess

{
  "allowed": false,
  "budget_ids": [
    "string"
  ],
  "policy_ids": [
    "string"
  ],
  "reason": "bearer_authorization",
  "retry_after_ms": 0,
  "warnings": [
    {
      "action": "string",
      "as_of": 0,
      "budget_id": "string",
      "consumed": 0.0,
      "enabled": false,
      "exceeded": false,
      "limit": 0.0,
      "metric": "tokens",
      "name": "string",
      "remaining": 0.0,
      "scope": "string",
      "subject": "string",
      "window": "string",
      "window_start": 0
    }
  ]
}

AccessDecisionReason

Why an admission decision was taken. `bearer_authorization` means no policy matched and the caller's existing roles decide; the other reasons name the rule that decided.

String enum: "bearer_authorization" "policy_allowed" "policy_denied" "constraint_denied" "connector_forbidden" "rate_limited" "budget_exceeded"

"bearer_authorization"

AccessEffect

Policy effect. `rate` is only valid on `allow` policies.

String enum: "allow" "deny"

"allow"

AccessPolicy

A stored policy. `expires_at` and `rate` are null when unset.

FieldTypeRequired
capabilitystringyes
constraintsobject of AccessConstraintyes
created_atinteger (int64)yes
effectAccessEffectyes
enabledbooleanyes
expires_atinteger (int64) or nullno
idstringyes
labelstringyes
namestringyes
ownerstringyes
principalstringyes
ratenull or AccessRateno
revisioninteger (int64)yes
tagsarray of string or nullno
updated_atinteger (int64)yes

Used by: createAccessPolicy, getAccessPolicy, updateAccessPolicy

{
  "capability": "string",
  "constraints": {
    "key": {
      "operator": "string",
      "value": {}
    }
  },
  "created_at": 0,
  "effect": "allow",
  "enabled": false,
  "expires_at": 0,
  "id": "string",
  "label": "string",
  "name": "string",
  "owner": "string",
  "principal": "string",
  "rate": {
    "burst": 0,
    "requests_per_second": 0.0
  },
  "revision": 0,
  "tags": [
    "string"
  ],
  "updated_at": 0
}

AccessPolicyCreate

FieldTypeRequired
capabilitystring or nullno
constraintsobject of AccessConstraint or nullno
effectnull or AccessEffectno
enabledboolean or nullno
expires_atinteger (int64) or nullno
labelstringyes
namestring or nullno
principalstring or nullno
ratenull or AccessRateno
tagsarray of string or nullno

Used by: createAccessPolicy

{
  "capability": "string",
  "constraints": {
    "key": {
      "operator": "string",
      "value": {}
    }
  },
  "effect": "allow",
  "enabled": false,
  "expires_at": 0,
  "label": "string",
  "name": "string",
  "principal": "string",
  "rate": {
    "burst": 0,
    "requests_per_second": 0.0
  },
  "tags": [
    "string"
  ]
}

AccessPolicyDeleted

FieldTypeRequired
deletedbooleanyes
idstringyes

Used by: deleteAccessPolicy

{
  "deleted": false,
  "id": "string"
}

AccessPolicyList

FieldTypeRequired
itemsarray of AccessPolicyyes

Used by: listAccessPolicies

{
  "items": [
    {
      "capability": "string",
      "constraints": {
        "key": {
          "operator": "string",
          "value": {}
        }
      },
      "created_at": 0,
      "effect": "allow",
      "enabled": false,
      "expires_at": 0,
      "id": "string",
      "label": "string",
      "name": "string",
      "owner": "string",
      "principal": "string",
      "rate": {
        "burst": 0,
        "requests_per_second": 0.0
      },
      "revision": 0,
      "tags": [
        "string"
      ],
      "updated_at": 0
    }
  ]
}

AccessPolicyUpdate

Compare-and-set edit. `label` is immutable; unknown keys are rejected.

FieldTypeRequired
capabilitystring or nullno
constraintsobject of AccessConstraint or nullno
effectnull or AccessEffectno
enabledboolean or nullno
expected_revisioninteger (int64)yes
expires_atinteger (int64) or nullno
namestring or nullno
principalstring or nullno
ratenull or AccessRateno
tagsarray of string or nullno

Used by: updateAccessPolicy

{
  "capability": "string",
  "constraints": {
    "key": {
      "operator": "string",
      "value": {}
    }
  },
  "effect": "allow",
  "enabled": false,
  "expected_revision": 0,
  "expires_at": 0,
  "name": "string",
  "principal": "string",
  "rate": {
    "burst": 0,
    "requests_per_second": 0.0
  },
  "tags": [
    "string"
  ]
}

AccessRate

Token bucket shared by every capability the policy matches, per principal.

FieldTypeRequired
burstinteger (int64)yes
requests_per_secondnumberyes
{
  "burst": 0,
  "requests_per_second": 0.0
}

Admission

FieldTypeRequired
idstringyes
root_idstringyes
statusStatusyes
step_idstringyes

Used by: fireEmitter, restartTraverser, submitTraverser

{
  "id": "string",
  "root_id": "string",
  "status": "queued",
  "step_id": "string"
}

AgentDefinition

FieldTypeRequired
capabilitiesobject of Capabilityyes
idstringyes
labelstringyes
tagsarray of string or nullno
versionstringyes

Used by: agentCapabilities, registerAgent

{
  "capabilities": {
    "key": {
      "input_schema": {},
      "kind": "traversal",
      "output_schema": {},
      "realtime": {
        "model": "string",
        "provider": "string",
        "transport": "string"
      },
      "retry": {
        "max_attempts": 0
      },
      "tags": [
        "string"
      ],
      "timeout_seconds": 0
    }
  },
  "id": "string",
  "label": "string",
  "tags": [
    "string"
  ],
  "version": "string"
}

AgentList

FieldTypeRequired
itemsarray of AgentDefinitionyes

Used by: listAgents

{
  "items": [
    {
      "capabilities": {
        "key": {
          "input_schema": {},
          "kind": {},
          "output_schema": {},
          "realtime": {},
          "retry": {},
          "tags": [
            {}
          ],
          "timeout_seconds": 0
        }
      },
      "id": "string",
      "label": "string",
      "tags": [
        "string"
      ],
      "version": "string"
    }
  ]
}

AgentRemoved

Result of `DELETE /api/v2/agents/{label}`: every version of the label is gone from the namespace.

FieldTypeRequired
deletedbooleanyes
labelstringyes
versionsinteger (int64)yes

Used by: unregisterAgent

{
  "deleted": false,
  "label": "string",
  "versions": 0
}

ApiError

FieldTypeRequired
codestringyes
messagestringyes
{
  "code": "string",
  "message": "string"
}

ApiToken

A stored token without its secret: only the first 8 characters (`prefix`) are ever shown again. `active` is false once revoked or expired; a `revoked_at` in the future is a scheduled revocation from a rotation grace period.

FieldTypeRequired
activebooleanyes
created_atinteger (int64)yes
created_bystringyes
expires_atinteger (int64) or nullno
idstringyes
labelstringyes
last_used_atinteger (int64) or nullno
prefixstringyes
principalstringyes
revoked_atinteger (int64) or nullno
rolesarray of stringyes
rotated_fromstring or nullno

Used by: revokeApiToken

{
  "active": false,
  "created_at": 0,
  "created_by": "string",
  "expires_at": 0,
  "id": "string",
  "label": "string",
  "last_used_at": 0,
  "prefix": "string",
  "principal": "string",
  "revoked_at": 0,
  "roles": [
    "string"
  ],
  "rotated_from": "string"
}

ApiTokenCreate

Issue a bearer credential for a principal of the caller's namespace.

FieldTypeRequired
expires_atinteger (int64) or nullno
labelstring or nullno
namespacestring or nullno
principalstringyes
rolesarray of stringyes

Used by: createApiToken

{
  "expires_at": 0,
  "label": "string",
  "namespace": "string",
  "principal": "string",
  "roles": [
    "string"
  ]
}

ApiTokenCreated

The answer to create and rotate: the record plus the plaintext `token`, returned exactly once. Store it; it cannot be recovered, only rotated.

FieldTypeRequired
activebooleanyes
created_atinteger (int64)yes
created_bystringyes
expires_atinteger (int64) or nullno
idstringyes
labelstringyes
last_used_atinteger (int64) or nullno
prefixstringyes
previous_revoked_atinteger (int64) or nullno
principalstringyes
revoked_atinteger (int64) or nullno
rolesarray of stringyes
rotated_fromstring or nullno
tokenstringyes

Used by: createApiToken, rotateApiToken

{
  "active": false,
  "created_at": 0,
  "created_by": "string",
  "expires_at": 0,
  "id": "string",
  "label": "string",
  "last_used_at": 0,
  "prefix": "string",
  "previous_revoked_at": 0,
  "principal": "string",
  "revoked_at": 0,
  "roles": [
    "string"
  ],
  "rotated_from": "string",
  "token": "string"
}

ApiTokenList

FieldTypeRequired
itemsarray of ApiTokenyes

Used by: listApiTokens

{
  "items": [
    {
      "active": false,
      "created_at": 0,
      "created_by": "string",
      "expires_at": 0,
      "id": "string",
      "label": "string",
      "last_used_at": 0,
      "prefix": "string",
      "principal": "string",
      "revoked_at": 0,
      "roles": [
        "string"
      ],
      "rotated_from": "string"
    }
  ]
}

ApiTokenRotate

Rotate: issue a fresh secret for the same principal, roles, label and expiry and revoke the old one `grace_seconds` from now (default 0: immediately).

FieldTypeRequired
grace_secondsinteger (int64) or nullno

Used by: rotateApiToken

{
  "grace_seconds": 0
}

Approval

FieldTypeRequired
checkpointany JSONyes
decided_bystring or nullno
expires_atinteger (int64) or nullno
idstringyes
operation_keystringyes
pausedbooleanyes
promptany JSONyes
responseany JSONno
statusstringyes
traverser_idstringyes

Used by: decideApproval, getApproval, requestApproval

{
  "checkpoint": {},
  "decided_by": "string",
  "expires_at": 0,
  "id": "string",
  "operation_key": "string",
  "paused": false,
  "prompt": {},
  "response": {},
  "status": "string",
  "traverser_id": "string"
}

ApprovalDecision

FieldTypeRequired
decisionstringyes
responseany JSONno

Used by: decideApproval

{
  "decision": "string",
  "response": {}
}

ApprovalList

FieldTypeRequired
itemsarray of Approvalyes

Used by: listApprovals

{
  "items": [
    {
      "checkpoint": {},
      "decided_by": "string",
      "expires_at": 0,
      "id": "string",
      "operation_key": "string",
      "paused": false,
      "prompt": {},
      "response": {},
      "status": "string",
      "traverser_id": "string"
    }
  ]
}

ApprovalRequest

FieldTypeRequired
checkpointany JSONno
expires_in_secondsinteger (int64) or nullno
idstringyes
lease_tokenstringyes
operation_keystringyes
pauseboolean or nullno
promptany JSONyes
worker_idstringyes

Used by: requestApproval

{
  "checkpoint": {},
  "expires_in_seconds": 0,
  "id": "string",
  "lease_token": "string",
  "operation_key": "string",
  "pause": false,
  "prompt": {},
  "worker_id": "string"
}

Artifact

FieldTypeRequired
content_typestringyes
created_atinteger (int64)yes
idstringyes
namestringyes
sha256stringyes
size_bytesinteger (int64)yes
traverser_idstringyes

Used by: putArtifact

{
  "content_type": "string",
  "created_at": 0,
  "id": "string",
  "name": "string",
  "sha256": "string",
  "size_bytes": 0,
  "traverser_id": "string"
}

ArtifactContent

FieldTypeRequired
content_typestringyes
created_atinteger (int64)yes
data_base64stringyes
idstringyes
namestringyes
sha256stringyes
size_bytesinteger (int64)yes
traverser_idstringyes

Used by: getArtifact

{
  "content_type": "string",
  "created_at": 0,
  "data_base64": "string",
  "id": "string",
  "name": "string",
  "sha256": "string",
  "size_bytes": 0,
  "traverser_id": "string"
}

ArtifactDeleted

FieldTypeRequired
deletedbooleanyes
idstringyes

Used by: deleteArtifact

{
  "deleted": false,
  "id": "string"
}

ArtifactList

FieldTypeRequired
itemsarray of Artifactyes

Used by: listArtifacts

{
  "items": [
    {
      "content_type": "string",
      "created_at": 0,
      "id": "string",
      "name": "string",
      "sha256": "string",
      "size_bytes": 0,
      "traverser_id": "string"
    }
  ]
}

Attempt

FieldTypeRequired
attemptinteger (int32)yes
errorany JSONno
finished_atinteger (int64) or nullno
lease_expires_atinteger (int64)yes
started_atinteger (int64)yes
statusstringyes
worker_idstringyes
{
  "attempt": 0,
  "error": {},
  "finished_at": 0,
  "lease_expires_at": 0,
  "started_at": 0,
  "status": "string",
  "worker_id": "string"
}

BindSession

FieldTypeRequired
idstringyes
lease_tokenstringyes
session_idstringyes
worker_idstringyes

Used by: bindSession

{
  "id": "string",
  "lease_token": "string",
  "session_id": "string",
  "worker_id": "string"
}

BriefArtifact

One file attached to a session before any run exists (the Studio brief). Uploaded as raw bytes to `POST /api/v2/sessions/{id}/artifacts`; downloaded as raw bytes from `GET /api/v2/sessions/{id}/artifacts/{artifact_id}`.

FieldTypeRequired
content_typestringyes
created_atinteger (int64)yes
idstringyes
kindstringyes
namestringyes
session_idstringyes
sha256stringyes
size_bytesinteger (int64)yes

Used by: getBriefArtifact

{
  "content_type": "string",
  "created_at": 0,
  "id": "string",
  "kind": "string",
  "name": "string",
  "session_id": "string",
  "sha256": "string",
  "size_bytes": 0
}

BriefArtifactCreated

FieldTypeRequired
artifactBriefArtifactyes

Used by: putBriefArtifact

{
  "artifact": {
    "content_type": "string",
    "created_at": 0,
    "id": "string",
    "kind": "string",
    "name": "string",
    "session_id": "string",
    "sha256": "string",
    "size_bytes": 0
  }
}

BriefArtifactDeleted

FieldTypeRequired
deletedbooleanyes
idstringyes

Used by: deleteBriefArtifact

{
  "deleted": false,
  "id": "string"
}

BriefArtifactList

FieldTypeRequired
itemsarray of BriefArtifactyes
total_bytesinteger (int64)yes

Used by: listBriefArtifacts

{
  "items": [
    {
      "content_type": "string",
      "created_at": 0,
      "id": "string",
      "kind": "string",
      "name": "string",
      "session_id": "string",
      "sha256": "string",
      "size_bytes": 0
    }
  ],
  "total_bytes": 0
}

Budget

FieldTypeRequired
actionstringyes
created_atinteger (int64)yes
enabledbooleanyes
idstringyes
limitnumberyes
metricBudgetMetricyes
namestringyes
principalstringyes
revisioninteger (int64)yes
scopestringyes
subjectstringyes
updated_atinteger (int64)yes
windowstringyes

Used by: createBudget, getBudget, updateBudget

{
  "action": "string",
  "created_at": 0,
  "enabled": false,
  "id": "string",
  "limit": 0.0,
  "metric": "tokens",
  "name": "string",
  "principal": "string",
  "revision": 0,
  "scope": "string",
  "subject": "string",
  "updated_at": 0,
  "window": "string"
}

BudgetCreate

Create a budget. `subject` names what the scope binds: a principal, an agent label, a `label.capability`, or nothing for `namespace`. `limit` is a positive integer for `tokens` and `runs`, a positive number for `cost_usd`.

FieldTypeRequired
actionstring or nullno
enabledboolean or nullno
limitnumberyes
metricBudgetMetricyes
namestringyes
scopestringyes
subjectstring or nullno
windowstringyes

Used by: createBudget

{
  "action": "string",
  "enabled": false,
  "limit": 0.0,
  "metric": "tokens",
  "name": "string",
  "scope": "string",
  "subject": "string",
  "window": "string"
}

BudgetList

FieldTypeRequired
itemsarray of Budgetyes

Used by: listBudgets

{
  "items": [
    {
      "action": "string",
      "created_at": 0,
      "enabled": false,
      "id": "string",
      "limit": 0.0,
      "metric": "tokens",
      "name": "string",
      "principal": "string",
      "revision": 0,
      "scope": "string",
      "subject": "string",
      "updated_at": 0,
      "window": "string"
    }
  ]
}

BudgetMetric

What a budget measures: model tokens or priced cost from usage receipts, or the number of root executions admitted.

String enum: "tokens" "cost_usd" "runs"

"tokens"

BudgetStatus

Every enabled budget that applies to an admission by `principal` of `target`, with its headroom. `allowed` is false when a `deny` budget is exceeded.

FieldTypeRequired
allowedbooleanyes
itemsarray of BudgetUsageyes
principalstringyes
targetstring or nullno

Used by: budgetStatus

{
  "allowed": false,
  "items": [
    {
      "action": "string",
      "as_of": 0,
      "budget_id": "string",
      "consumed": 0.0,
      "enabled": false,
      "exceeded": false,
      "limit": 0.0,
      "metric": "tokens",
      "name": "string",
      "remaining": 0.0,
      "scope": "string",
      "subject": "string",
      "window": "string",
      "window_start": 0
    }
  ],
  "principal": "string",
  "target": "string"
}

BudgetUpdate

Compare-and-set edit. Scope, subject and metric are immutable; create a new budget to change them.

FieldTypeRequired
actionstring or nullno
enabledboolean or nullno
expected_revisioninteger (int64)yes
limitnumber or nullno
namestring or nullno
windowstring or nullno

Used by: updateBudget

{
  "action": "string",
  "enabled": false,
  "expected_revision": 0,
  "limit": 0.0,
  "name": "string",
  "window": "string"
}

BudgetUsage

Consumption of one budget in its current window. `exceeded` is `consumed >= limit`; `remaining` never goes below 0.

FieldTypeRequired
actionstringyes
as_ofinteger (int64)yes
budget_idstringyes
consumednumberyes
enabledbooleanyes
exceededbooleanyes
limitnumberyes
metricBudgetMetricyes
namestringyes
remainingnumberyes
scopestringyes
subjectstringyes
windowstringyes
window_startinteger (int64)yes

Used by: budgetUsage

{
  "action": "string",
  "as_of": 0,
  "budget_id": "string",
  "consumed": 0.0,
  "enabled": false,
  "exceeded": false,
  "limit": 0.0,
  "metric": "tokens",
  "name": "string",
  "remaining": 0.0,
  "scope": "string",
  "subject": "string",
  "window": "string",
  "window_start": 0
}

Capability

FieldTypeRequired
input_schemaany JSONyes
kindCapabilityKindyes
output_schemaany JSONyes
realtimenull or RealtimeBindingno
retrynull or RetryPolicyno
tagsarray of string or nullno
timeout_secondsinteger (int64) or nullno
{
  "input_schema": {},
  "kind": "traversal",
  "output_schema": {},
  "realtime": {
    "model": "string",
    "provider": "string",
    "transport": "string"
  },
  "retry": {
    "max_attempts": 0
  },
  "tags": [
    "string"
  ],
  "timeout_seconds": 0
}

CapabilityKind

`realtime` is a live-session entrypoint: listed and publishable (as `http` only), never admitted as a traverser (400 `realtime_entrypoint`).

String enum: "traversal" "skill" "decision" "realtime"

"traversal"

Checkpoint

FieldTypeRequired
namestringyes
revisioninteger (int64)yes
updated_atinteger (int64)yes
valueany JSONyes

Used by: getCheckpoint

{
  "name": "string",
  "revision": 0,
  "updated_at": 0,
  "value": {}
}

CheckpointList

FieldTypeRequired
itemsarray of Checkpointyes

Used by: listCheckpoints

{
  "items": [
    {
      "name": "string",
      "revision": 0,
      "updated_at": 0,
      "value": {}
    }
  ]
}

CheckpointRevision

FieldTypeRequired
namestringyes
revisioninteger (int64)yes

Used by: writeCheckpoint

{
  "name": "string",
  "revision": 0
}

CheckpointWrite

FieldTypeRequired
expected_revisioninteger (int64) or nullno
lease_tokenstringyes
valueany JSONyes
worker_idstringyes

Used by: writeCheckpoint

{
  "expected_revision": 0,
  "lease_token": "string",
  "value": {},
  "worker_id": "string"
}

Claim

FieldTypeRequired
capacityinteger (int32) or nullno
drainingboolean or nullno
tasknull or WorkerTaskno

Used by: claimTask

{
  "capacity": 0,
  "draining": false,
  "task": {
    "attempt": 0,
    "capability": "string",
    "deadline_at": 0,
    "emitter": {
      "emitter_id": "string",
      "event_id": "string",
      "event_type": "string",
      "idempotency_key": "string",
      "managed_by": "string",
      "received_at": "string",
      "source": "string"
    },
    "id": "string",
    "input": {},
    "kind": "string",
    "label": "string",
    "lease_expires_at": 0,
    "lease_token": "string",
    "max_attempts": 0,
    "namespace": "string",
    "parent_id": "string",
    "parent_step_id": "string",
    "principal": "string",
    "root_id": "string",
    "session_id": "string",
    "step_id": "string",
    "target": "string",
    "timeout_seconds": 0,
    "version": "string"
  }
}

CompleteTask

FieldTypeRequired
errornull or ExecutionErrorno
idstringyes
lease_tokenstringyes
outputany JSONno
worker_idstringyes

Used by: completeTask

{
  "error": {
    "code": "string",
    "message": "string",
    "retryable": false
  },
  "id": "string",
  "lease_token": "string",
  "output": {},
  "worker_id": "string"
}

CreateSession

FieldTypeRequired
idstring or nullno

Used by: createSession

{
  "id": "string"
}

Credential

FieldTypeRequired
credentialVerifiableCredentialyes
expires_atinteger (int64) or nullno
idstringyes
issued_atinteger (int64)yes
issuer_didstringyes
issuer_key_idstringyes
issuer_labelstringyes
kindCredentialKindyes
node_labelstring or nullno
parent_idstring or nullno
principalstringyes
revocation_reasonstring or nullno
revoked_atinteger (int64) or nullno
revoked_bystring or nullno
root_idstring or nullno
subject_idstringyes
traverser_idstring or nullno
typestringyes

Used by: getCredential, issueCredential, revokeCredential

{
  "credential": {
    "@context": [
      "string"
    ],
    "credentialSubject": {},
    "expirationDate": "string",
    "id": "string",
    "issuanceDate": "string",
    "issuer": "string",
    "proof": {
      "created": "string",
      "cryptosuite": "string",
      "proofPurpose": "string",
      "proofValue": "string",
      "type": "string",
      "verificationMethod": "string"
    },
    "type": [
      "string"
    ]
  },
  "expires_at": 0,
  "id": "string",
  "issued_at": 0,
  "issuer_did": "string",
  "issuer_key_id": "string",
  "issuer_label": "string",
  "kind": "execution",
  "node_label": "string",
  "parent_id": "string",
  "principal": "string",
  "revocation_reason": "string",
  "revoked_at": 0,
  "revoked_by": "string",
  "root_id": "string",
  "subject_id": "string",
  "traverser_id": "string",
  "type": "string"
}

CredentialIssue

Issue a credential signed by the issuer node's enrolled DID. `execution` needs `traverser_id` (terminal, owned or inside the worker's leased subtree) and is idempotent per issuer key; `custom` needs `subject` with a string `id`.

FieldTypeRequired
expires_in_secondsinteger (int64) or nullno
issuer_labelstringyes
kindnull or CredentialKindno
lease_tokenstring or nullno
parent_idstring or nullno
step_idstring or nullno
subjectobject of any JSON or nullno
task_idstring or nullno
traverser_idstring or nullno
typestring or nullno

Used by: issueCredential

{
  "expires_in_seconds": 0,
  "issuer_label": "string",
  "kind": "execution",
  "lease_token": "string",
  "parent_id": "string",
  "step_id": "string",
  "subject": {
    "key": {}
  },
  "task_id": "string",
  "traverser_id": "string",
  "type": "string"
}

CredentialKind

`execution` certifies a terminal traverser, `custom` carries a caller subject, `tag` is issued only by tag decisions.

String enum: "execution" "custom" "tag"

"execution"

CredentialList

FieldTypeRequired
itemsarray of Credentialyes

Used by: listCredentials

{
  "items": [
    {
      "credential": {
        "@context": [
          "string"
        ],
        "credentialSubject": {},
        "expirationDate": "string",
        "id": "string",
        "issuanceDate": "string",
        "issuer": "string",
        "proof": {
          "created": {},
          "cryptosuite": {},
          "proofPurpose": {},
          "proofValue": {},
          "type": {},
          "verificationMethod": {}
        },
        "type": [
          "string"
        ]
      },
      "expires_at": 0,
      "id": "string",
      "issued_at": 0,
      "issuer_did": "string",
      "issuer_key_id": "string",
      "issuer_label": "string",
      "kind": "execution",
      "node_label": "string",
      "parent_id": "string",
      "principal": "string",
      "revocation_reason": "string",
      "revoked_at": 0,
      "revoked_by": "string",
      "root_id": "string",
      "subject_id": "string",
      "traverser_id": "string",
      "type": "string"
    }
  ]
}

CredentialRevoke

FieldTypeRequired
reasonstring or nullno

Used by: revokeCredential

{
  "reason": "string"
}

CredentialVerification

`valid` is the cryptographic and temporal result; `trusted` additionally requires the credential to be known, unrevoked and issued by an enrolled, unrevoked key in this namespace. `reason` is the first failing check.

FieldTypeRequired
checksarray of VerificationCheckyes
credential_idstring or nullno
evaluated_atinteger (int64)yes
issuerstring or nullno
issuer_resolutionstringyes
key_statestring or nullno
knownbooleanyes
messagestringyes
reasonstring or nullno
revoked_atinteger (int64) or nullno
subject_idstring or nullno
trustedbooleanyes
validbooleanyes
verification_methodstring or nullno

Used by: verifyCredential

{
  "checks": [
    {
      "detail": "string",
      "name": "string",
      "ok": false
    }
  ],
  "credential_id": "string",
  "evaluated_at": 0,
  "issuer": "string",
  "issuer_resolution": "string",
  "key_state": "string",
  "known": false,
  "message": "string",
  "reason": "string",
  "revoked_at": 0,
  "subject_id": "string",
  "trusted": false,
  "valid": false,
  "verification_method": "string"
}

CredentialVerify

Verify a presented credential (any issuer). `at` evaluates validity at another time; `resolve_remote` allows bounded `did:web` resolution of the issuer.

FieldTypeRequired
atinteger (int64) or nullno
credentialany JSONyes
lease_tokenstring or nullno
resolve_remoteboolean or nullno
step_idstring or nullno
task_idstring or nullno

Used by: verifyCredential

{
  "at": 0,
  "credential": {},
  "lease_token": "string",
  "resolve_remote": false,
  "step_id": "string",
  "task_id": "string"
}

DataIntegrityProof

Data Integrity proof, cryptosuite `eddsa-jcs-2022`.

FieldTypeRequired
createdstringyes
cryptosuitestringyes
proofPurposestringyes
proofValuestringyes
typestringyes
verificationMethodstringyes
{
  "created": "string",
  "cryptosuite": "string",
  "proofPurpose": "string",
  "proofValue": "string",
  "type": "string",
  "verificationMethod": "string"
}

Deleted

FieldTypeRequired
deletedbooleanyes

Used by: deleteBudget, deleteEmitter, deleteEvalCase, deleteEvalCaseSet, deleteMemory, deleteMemoryVector, deleteObservabilityWebhook, deletePublication

{
  "deleted": false
}

DidDocument

W3C DID document for an enrolled Ed25519 identity.

FieldTypeRequired
@contextarray of stringyes
alsoKnownAsarray of string or nullno
assertionMethodarray of stringyes
authenticationarray of stringyes
idstringyes
verificationMethodarray of VerificationMethodyes
{
  "@context": [
    "string"
  ],
  "alsoKnownAs": [
    "string"
  ],
  "assertionMethod": [
    "string"
  ],
  "authentication": [
    "string"
  ],
  "id": "string",
  "verificationMethod": [
    {
      "controller": "string",
      "id": "string",
      "publicKeyJwk": {
        "crv": "string",
        "kty": "string",
        "x": "string"
      },
      "publicKeyMultibase": "string",
      "type": "string"
    }
  ]
}

DidEnrol

Enrol the node's active identity key (created when missing) as a `did:key`.

FieldTypeRequired
labelstringyes

Used by: enrolDid

{
  "label": "string"
}

DidEnrolment

An enrolled DID. `key_state` mirrors the underlying identity (`active`, `retired`, `revoked`); `also_known_as` is present when `web_base_url` was given.

FieldTypeRequired
algorithmstringyes
also_known_asarray of string or nullno
created_atinteger (int64)yes
didstringyes
did_documentDidDocumentyes
encryptionstringyes
key_idstringyes
key_statestringyes
labelstringyes
master_key_idstringyes
public_keystringyes
public_key_multibasestringyes
verification_methodstringyes

Used by: enrolDid, getDid

{
  "algorithm": "string",
  "also_known_as": [
    "string"
  ],
  "created_at": 0,
  "did": "string",
  "did_document": {
    "@context": [
      "string"
    ],
    "alsoKnownAs": [
      "string"
    ],
    "assertionMethod": [
      "string"
    ],
    "authentication": [
      "string"
    ],
    "id": "string",
    "verificationMethod": [
      {
        "controller": "string",
        "id": "string",
        "publicKeyJwk": {},
        "publicKeyMultibase": "string",
        "type": "string"
      }
    ]
  },
  "encryption": "string",
  "key_id": "string",
  "key_state": "string",
  "label": "string",
  "master_key_id": "string",
  "public_key": "string",
  "public_key_multibase": "string",
  "verification_method": "string"
}

DidEnrolmentList

FieldTypeRequired
itemsarray of DidEnrolmentyes

Used by: listDids

{
  "items": [
    {
      "algorithm": "string",
      "also_known_as": [
        "string"
      ],
      "created_at": 0,
      "did": "string",
      "did_document": {
        "@context": [
          "string"
        ],
        "alsoKnownAs": [
          "string"
        ],
        "assertionMethod": [
          "string"
        ],
        "authentication": [
          "string"
        ],
        "id": "string",
        "verificationMethod": [
          {}
        ]
      },
      "encryption": "string",
      "key_id": "string",
      "key_state": "string",
      "label": "string",
      "master_key_id": "string",
      "public_key": "string",
      "public_key_multibase": "string",
      "verification_method": "string"
    }
  ]
}

DidLocalKey

The enrolled identity behind a resolved DID, when it belongs to this namespace.

FieldTypeRequired
key_idstringyes
key_statestringyes
labelstringyes
{
  "key_id": "string",
  "key_state": "string",
  "label": "string"
}

DidMethod

String enum: "key" "web"

"key"

DidResolution

`did:key` resolves offline; `did:web` is fetched over bounded HTTPS. `document` is the DID document as published by its controller.

FieldTypeRequired
canonical_didstringyes
didstringyes
documentany JSONyes
legacy_encodingbooleanyes
localnull or DidLocalKeyno
methodDidMethodyes
resolved_fromstringyes
verification_methodsarray of ResolvedVerificationMethodyes

Used by: resolveDid

{
  "canonical_did": "string",
  "did": "string",
  "document": {},
  "legacy_encoding": false,
  "local": {
    "key_id": "string",
    "key_state": "string",
    "label": "string"
  },
  "method": "key",
  "resolved_from": "string",
  "verification_methods": [
    {
      "id": "string",
      "public_key": "string",
      "type": "string"
    }
  ]
}

DidResolve

FieldTypeRequired
didstringyes

Used by: resolveDid

{
  "did": "string"
}

DiscoveryProtocols

FieldTypeRequired
a2a_enabledbooleanyes
mcp_enabledbooleanyes
public_base_urlstring or nullno
{
  "a2a_enabled": false,
  "mcp_enabled": false,
  "public_base_url": "string"
}

DiscoveryPublication

FieldTypeRequired
artifactany JSONyes
artifact_typestringyes
descriptionstringyes
display_namestringyes
idstringyes
labelstringyes
publishedbooleanyes
tagsarray of string or nullno
updated_atinteger (int64)yes
validationDiscoveryValidationyes
versionstringyes

Used by: publishDiscovery

{
  "artifact": {},
  "artifact_type": "string",
  "description": "string",
  "display_name": "string",
  "id": "string",
  "label": "string",
  "published": false,
  "tags": [
    "string"
  ],
  "updated_at": 0,
  "validation": {
    "scope": "string",
    "status": "string"
  },
  "version": "string"
}

DiscoveryPublications

FieldTypeRequired
itemsarray of DiscoveryPublicationyes

Used by: listPublications, searchDiscovery

{
  "items": [
    {
      "artifact": {},
      "artifact_type": "string",
      "description": "string",
      "display_name": "string",
      "id": "string",
      "label": "string",
      "published": false,
      "tags": [
        "string"
      ],
      "updated_at": 0,
      "validation": {
        "scope": "string",
        "status": "string"
      },
      "version": "string"
    }
  ]
}

DiscoverySearch

FieldTypeRequired
querystringyes
tagsarray of string or nullno

Used by: searchDiscovery

{
  "query": "string",
  "tags": [
    "string"
  ]
}

DiscoverySettings

FieldTypeRequired
configuration_pathstringyes
configuration_sourcestringyes
enabledbooleanyes
locked_reasonstringyes
protocolsDiscoveryProtocolsyes
public_base_urlstring or nullno
public_registrybooleanyes
publish_catalogbooleanyes

Used by: discoverySettings

{
  "configuration_path": "string",
  "configuration_source": "string",
  "enabled": false,
  "locked_reason": "string",
  "protocols": {
    "a2a_enabled": false,
    "mcp_enabled": false,
    "public_base_url": "string"
  },
  "public_base_url": "string",
  "public_registry": false,
  "publish_catalog": false
}

DiscoveryValidation

FieldTypeRequired
scopestringyes
statusstringyes
{
  "scope": "string",
  "status": "string"
}

Draining

FieldTypeRequired
drainingbooleanyes

Used by: drainWorker

{
  "draining": false
}

Emitter

FieldTypeRequired
code_originstring or nullno
cron_expressionstring or nullno
enabledbooleanyes
event_typesarray of stringyes
idstringyes
inputany JSONyes
interval_secondsinteger (int64) or nullno
kindstringyes
last_registered_atinteger (int64) or nullno
managed_bystringyes
namestringyes
next_due_atinteger (int64) or nullno
orphanedbooleanyes
revisioninteger (int64)yes
secret_envstring or nullno
sourcestringyes
source_configEmitterSourceConfigyes
sticky_pausedbooleanyes
targetstringyes
timezonestringyes
versionstringyes

Used by: createEmitter, getEmitter, updateEmitter

{
  "code_origin": "string",
  "cron_expression": "string",
  "enabled": false,
  "event_types": [
    "string"
  ],
  "id": "string",
  "input": {},
  "interval_seconds": 0,
  "kind": "string",
  "last_registered_at": 0,
  "managed_by": "string",
  "name": "string",
  "next_due_at": 0,
  "orphaned": false,
  "revision": 0,
  "secret_env": "string",
  "source": "string",
  "source_config": {
    "actions": [
      "set"
    ],
    "auth_mode": "string",
    "basic_username": "string",
    "event_id_path": "string",
    "event_type_header": "string",
    "event_type_path": "string",
    "header": "string",
    "idempotency_header": "string",
    "job_ids": [
      {}
    ],
    "kinds": [
      "value"
    ],
    "prefix": "string",
    "scheme": "string",
    "scope": "session",
    "scope_id": "string",
    "signature_header": "string",
    "signature_prefix": "string",
    "timestamp_header": "string",
    "tolerance_seconds": 0,
    "workspace_id": "string",
    "workspace_path": "string"
  },
  "sticky_paused": false,
  "target": "string",
  "timezone": "string",
  "version": "string"
}

EmitterBinding

FieldTypeRequired
capabilitystringyes
code_originstring or nullno
cron_expressionstring or nullno
event_typesarray of string or nullno
inputany JSONno
interval_secondsinteger (int64) or nullno
secret_envstring or nullno
sourcestringyes
source_confignull or EmitterSourceConfigno
timezonestring or nullno
{
  "capability": "string",
  "code_origin": "string",
  "cron_expression": "string",
  "event_types": [
    "string"
  ],
  "input": {},
  "interval_seconds": 0,
  "secret_env": "string",
  "source": "string",
  "source_config": {
    "actions": [
      "set"
    ],
    "auth_mode": "string",
    "basic_username": "string",
    "event_id_path": "string",
    "event_type_header": "string",
    "event_type_path": "string",
    "header": "string",
    "idempotency_header": "string",
    "job_ids": [
      {}
    ],
    "kinds": [
      "value"
    ],
    "prefix": "string",
    "scheme": "string",
    "scope": "session",
    "scope_id": "string",
    "signature_header": "string",
    "signature_prefix": "string",
    "timestamp_header": "string",
    "tolerance_seconds": 0,
    "workspace_id": "string",
    "workspace_path": "string"
  },
  "timezone": "string"
}

EmitterContext

FieldTypeRequired
emitter_idstringyes
event_idstring or nullno
event_typestringyes
idempotency_keystringyes
managed_bystringyes
received_atstringyes
sourcestringyes
{
  "emitter_id": "string",
  "event_id": "string",
  "event_type": "string",
  "idempotency_key": "string",
  "managed_by": "string",
  "received_at": "string",
  "source": "string"
}

EmitterCreate

FieldTypeRequired
cron_expressionstring or nullno
event_typesarray of string or nullno
inputany JSONno
interval_secondsinteger (int64) or nullno
kindstringyes
namestringyes
secret_envstring or nullno
sourcestring or nullno
source_confignull or EmitterSourceConfigno
targetstringyes
timezonestring or nullno
versionstring or nullno

Used by: createEmitter

{
  "cron_expression": "string",
  "event_types": [
    "string"
  ],
  "input": {},
  "interval_seconds": 0,
  "kind": "string",
  "name": "string",
  "secret_env": "string",
  "source": "string",
  "source_config": {
    "actions": [
      "set"
    ],
    "auth_mode": "string",
    "basic_username": "string",
    "event_id_path": "string",
    "event_type_header": "string",
    "event_type_path": "string",
    "header": "string",
    "idempotency_header": "string",
    "job_ids": [
      {}
    ],
    "kinds": [
      "value"
    ],
    "prefix": "string",
    "scheme": "string",
    "scope": "session",
    "scope_id": "string",
    "signature_header": "string",
    "signature_prefix": "string",
    "timestamp_header": "string",
    "tolerance_seconds": 0,
    "workspace_id": "string",
    "workspace_path": "string"
  },
  "target": "string",
  "timezone": "string",
  "version": "string"
}

EmitterFire

FieldTypeRequired
delivery_keystringyes
inputany JSONno

Used by: fireEmitter

{
  "delivery_key": "string",
  "input": {}
}

EmitterList

FieldTypeRequired
itemsarray of Emitteryes

Used by: listEmitters, syncEmitters

{
  "items": [
    {
      "code_origin": "string",
      "cron_expression": "string",
      "enabled": false,
      "event_types": [
        "string"
      ],
      "id": "string",
      "input": {},
      "interval_seconds": 0,
      "kind": "string",
      "last_registered_at": 0,
      "managed_by": "string",
      "name": "string",
      "next_due_at": 0,
      "orphaned": false,
      "revision": 0,
      "secret_env": "string",
      "source": "string",
      "source_config": {
        "actions": [
          {}
        ],
        "auth_mode": "string",
        "basic_username": "string",
        "event_id_path": "string",
        "event_type_header": "string",
        "event_type_path": "string",
        "header": "string",
        "idempotency_header": "string",
        "job_ids": [
          {}
        ],
        "kinds": [
          {}
        ],
        "prefix": "string",
        "scheme": "string",
        "scope": {},
        "scope_id": "string",
        "signature_header": "string",
        "signature_prefix": "string",
        "timestamp_header": "string",
        "tolerance_seconds": 0,
        "workspace_id": "string",
        "workspace_path": "string"
      },
      "sticky_paused": false,
      "target": "string",
      "timezone": "string",
      "version": "string"
    }
  ]
}

EmitterMetrics

FieldTypeRequired
dlq_depthinteger (int64)yes
enabled_emittersinteger (int64)yes
events_24hobject of integer (int64)yes
memory_dispatch_failuresinteger (int64)yes
orphaned_emittersinteger (int64)yes
total_emittersinteger (int64)yes

Used by: emitterMetrics

{
  "dlq_depth": 0,
  "enabled_emitters": 0,
  "events_24h": {
    "key": 0
  },
  "memory_dispatch_failures": 0,
  "orphaned_emitters": 0,
  "total_emitters": 0
}

EmitterReplay

FieldTypeRequired
event_idstringyes

Used by: replayEmitterEvent

{
  "event_id": "string"
}

EmitterSourceConfig

FieldTypeRequired
actionsarray of MemoryChangeAction or nullno
auth_modestring or nullno
basic_usernamestring or nullno
event_id_pathstring or nullno
event_type_headerstring or nullno
event_type_pathstring or nullno
headerstring or nullno
idempotency_headerstring or nullno
job_idsarray of any JSON or nullno
kindsarray of MemoryKind or nullno
prefixstring or nullno
schemestring or nullno
scopenull or MemoryScopeno
scope_idstring or nullno
signature_headerstring or nullno
signature_prefixstring or nullno
timestamp_headerstring or nullno
tolerance_secondsinteger (int64) or nullno
workspace_idstring or nullno
workspace_pathstring or nullno
{
  "actions": [
    "set"
  ],
  "auth_mode": "string",
  "basic_username": "string",
  "event_id_path": "string",
  "event_type_header": "string",
  "event_type_path": "string",
  "header": "string",
  "idempotency_header": "string",
  "job_ids": [
    {}
  ],
  "kinds": [
    "value"
  ],
  "prefix": "string",
  "scheme": "string",
  "scope": "session",
  "scope_id": "string",
  "signature_header": "string",
  "signature_prefix": "string",
  "timestamp_header": "string",
  "tolerance_seconds": 0,
  "workspace_id": "string",
  "workspace_path": "string"
}

EmitterSync

FieldTypeRequired
bindingsarray of EmitterBindingyes

Used by: syncEmitters

{
  "bindings": [
    {
      "capability": "string",
      "code_origin": "string",
      "cron_expression": "string",
      "event_types": [
        "string"
      ],
      "input": {},
      "interval_seconds": 0,
      "secret_env": "string",
      "source": "string",
      "source_config": {
        "actions": [
          {}
        ],
        "auth_mode": "string",
        "basic_username": "string",
        "event_id_path": "string",
        "event_type_header": "string",
        "event_type_path": "string",
        "header": "string",
        "idempotency_header": "string",
        "job_ids": [
          {}
        ],
        "kinds": [
          {}
        ],
        "prefix": "string",
        "scheme": "string",
        "scope": {},
        "scope_id": "string",
        "signature_header": "string",
        "signature_prefix": "string",
        "timestamp_header": "string",
        "tolerance_seconds": 0,
        "workspace_id": "string",
        "workspace_path": "string"
      },
      "timezone": "string"
    }
  ]
}

EmitterUpdate

FieldTypeRequired
enabledboolean or nullno
expected_revisioninteger (int64)yes
managed_bystring or nullno

Used by: updateEmitter

{
  "enabled": false,
  "expected_revision": 0,
  "managed_by": "string"
}

EnrollWorker

FieldTypeRequired
capacityinteger (int32) or nullno
labelstringyes
versionstringyes

Used by: enrollWorker

{
  "capacity": 0,
  "label": "string",
  "version": "string"
}

ErrorResponse

FieldTypeRequired
errorApiErroryes
request_idstringyes

Used by: admitAccess, agentCapabilities, appendLogs, applyRuntimeSettings, bindSession, budgetStatus, budgetUsage, cancelEvalRun, cancelTraverser, claimTask, completeTask, createAccessPolicy, createApiToken, createBudget, createEmitter, createEvalCase, createEvalCaseSet, createIdentity, createSession, decideApproval, decideTags, deleteAccessPolicy, deleteArtifact, deleteBriefArtifact, deleteBudget, deleteEmitter, deleteEvalCase, deleteEvalCaseSet, deleteKnowledgeDocument, deleteMemory, deleteMemoryVector, deleteObservabilityWebhook, deletePublication, deleteRuntimeSettings, deleteSession, deleteSessionSecrets, discoverySettings, drainWorker, emitterEvents, emitterMetrics, enrolDid, enrollWorker, evalScores, evaluateAccess, fireEmitter, getAccessPolicy, getApproval, getArtifact, getBriefArtifact, getBudget, getCheckpoint, getConnector, getCredential, getDid, getEmitter, getEvalCaseSet, getEvalRun, getEventLog, getKnowledgeDocument, getMemoryVector, getObservabilitySettings, getObservabilityWebhook, getOwnConnector, getPath, getRunMetadata, getRuntimeSettings, getSession, getSessionSecrets, getTagPolicy, getTraverser, health, issueCredential, knowledgeStats, listAccessPolicies, listAgents, listApiTokens, listApprovals, listArtifacts, listBriefArtifacts, listBudgets, listCheckpoints, listConnectors, listCredentials, listDids, listEmitters, listEvalCaseSets, listEvalCases, listEvalRuns, listIdentities, listKnowledgeDocuments, listMemory, listPathProofs, listPublications, listRuntimeSettings, listSessions, listTagLedger, listTraversers, listUsage, listWorkers, memoryChanges, modelHealth, observabilityWebhookStatus, proposeTags, publishDiscovery, putArtifact, putBriefArtifact, putConnector, putKnowledgeBatch, putKnowledgeDocument, putObservabilityWebhook, putRuntimeSettings, putSessionSecrets, putTagPolicy, queryLogs, readMemory, recordRetrievalFeedback, recordUsage, redriveObservabilityWebhook, registerAgent, renewLease, replayEmitterEvent, reportProgress, requestApproval, resolveDid, restartTraverser, resumeTask, retentionApply, retentionPlan, retrievalFeedbackTotals, revokeApiToken, revokeConnector, revokeCredential, revokeIdentity, rotateApiToken, rotateIdentity, searchDiscovery, searchKnowledge, searchMemoryVectors, serverInfo, setMemoryVector, signPath, startEvalRun, stats, streamExecutionEvents, streamNodeLogs, submitTraverser, suspendTask, syncEmitters, testObservabilityWebhook, unregisterAgent, updateAccessPolicy, updateBudget, updateEmitter, updateEvalCase, updateEvalCaseSet, updateObservabilitySettings, updateRunMetadata, usageTotals, verifyCredential, verifyProof, writeCheckpoint, writeMemory

{
  "error": {
    "code": "string",
    "message": "string"
  },
  "request_id": "string"
}

EvalAssertion

One check over a case's outcome. `value` is the comparison operand: any JSON for `equals`/`not_equals`/`contains`/`not_contains`; a pattern for `regex`; one of string, number, boolean, object, array, null for `type`; a JSON Schema for `schema`; succeeded, failed, cancelled or timed_out for `status`; the `error.code` for `error_code`; a non-negative number for the bounds. `exists` takes none.

FieldTypeRequired
pathstring or nullno
typeEvalAssertionTypeyes
valueany JSONno
{
  "path": "string",
  "type": "equals",
  "value": {}
}

EvalAssertionResult

FieldTypeRequired
actualany JSONno
messagestringyes
passedbooleanyes
pathstring or nullno
typeEvalAssertionTypeyes
{
  "actual": {},
  "message": "string",
  "passed": false,
  "path": "string",
  "type": "equals"
}

EvalAssertionType

What one assertion checks. Path types read `path` from the traverser output; `status`, `error_code`, `max_duration_ms`, `max_cost_usd` and `max_tokens` read the outcome and take no path. `contains` and `regex` stringify non-string values as JSON; `min_length`/`max_length` apply to strings (characters) and arrays (items).

String enum: "equals" "not_equals" "contains" "not_contains" "regex" "exists" "type" "schema" "status" "error_code" "max_duration_ms" "max_cost_usd" "max_tokens" "min_length" "max_length"

"equals"

EvalCase

FieldTypeRequired
assertionsarray of EvalAssertionyes
case_set_idstringyes
created_atinteger (int64)yes
idstringyes
inputany JSONyes
namestringyes
revisioninteger (int64)yes
tagsarray of stringyes
updated_atinteger (int64)yes

Used by: createEvalCase, updateEvalCase

{
  "assertions": [
    {
      "path": "string",
      "type": "equals",
      "value": {}
    }
  ],
  "case_set_id": "string",
  "created_at": 0,
  "id": "string",
  "input": {},
  "name": "string",
  "revision": 0,
  "tags": [
    "string"
  ],
  "updated_at": 0
}

EvalCaseInput

A case to add: the capability input and the assertions over its outcome. An empty or absent assertion list is the implicit `status: succeeded`.

FieldTypeRequired
assertionsarray of EvalAssertion or nullno
inputany JSONyes
namestringyes
tagsarray of string or nullno

Used by: createEvalCase

{
  "assertions": [
    {
      "path": "string",
      "type": "equals",
      "value": {}
    }
  ],
  "input": {},
  "name": "string",
  "tags": [
    "string"
  ]
}

EvalCaseList

FieldTypeRequired
itemsarray of EvalCaseyes
next_cursorstring or nullno

Used by: listEvalCases

{
  "items": [
    {
      "assertions": [
        {
          "path": "string",
          "type": {},
          "value": {}
        }
      ],
      "case_set_id": "string",
      "created_at": 0,
      "id": "string",
      "input": {},
      "name": "string",
      "revision": 0,
      "tags": [
        "string"
      ],
      "updated_at": 0
    }
  ],
  "next_cursor": "string"
}

EvalCaseSet

FieldTypeRequired
case_countinteger (int64)yes
created_atinteger (int64)yes
descriptionstringyes
idstringyes
last_runnull or EvalRunno
namestringyes
principalstringyes
revisioninteger (int64)yes
targetstringyes
updated_atinteger (int64)yes
versionstringyes

Used by: createEvalCaseSet, getEvalCaseSet, updateEvalCaseSet

{
  "case_count": 0,
  "created_at": 0,
  "description": "string",
  "id": "string",
  "last_run": {
    "case_set_id": "string",
    "cost_complete": false,
    "cost_usd": 0.0,
    "created_at": 0,
    "duration_ms_p50": 0,
    "errored": 0,
    "failed": 0,
    "finished_at": 0,
    "id": "string",
    "label": "string",
    "pass_rate": 0.0,
    "passed": 0,
    "pending": 0,
    "revision": 0,
    "skipped": 0,
    "started_at": 0,
    "status": "string",
    "target": "string",
    "total": 0,
    "total_tokens": 0,
    "version": "string"
  },
  "name": "string",
  "principal": "string",
  "revision": 0,
  "target": "string",
  "updated_at": 0,
  "version": "string"
}

EvalCaseSetCreate

FieldTypeRequired
casesarray of EvalCaseInput or nullno
descriptionstring or nullno
namestringyes
targetstringyes
versionstring or nullno

Used by: createEvalCaseSet

{
  "cases": [
    {
      "assertions": [
        {
          "path": "string",
          "type": {},
          "value": {}
        }
      ],
      "input": {},
      "name": "string",
      "tags": [
        "string"
      ]
    }
  ],
  "description": "string",
  "name": "string",
  "target": "string",
  "version": "string"
}

EvalCaseSetList

FieldTypeRequired
itemsarray of EvalCaseSetyes
next_cursorstring or nullno

Used by: listEvalCaseSets

{
  "items": [
    {
      "case_count": 0,
      "created_at": 0,
      "description": "string",
      "id": "string",
      "last_run": {
        "case_set_id": "string",
        "cost_complete": false,
        "cost_usd": 0.0,
        "created_at": 0,
        "duration_ms_p50": 0,
        "errored": 0,
        "failed": 0,
        "finished_at": 0,
        "id": "string",
        "label": "string",
        "pass_rate": 0.0,
        "passed": 0,
        "pending": 0,
        "revision": 0,
        "skipped": 0,
        "started_at": 0,
        "status": "string",
        "target": "string",
        "total": 0,
        "total_tokens": 0,
        "version": "string"
      },
      "name": "string",
      "principal": "string",
      "revision": 0,
      "target": "string",
      "updated_at": 0,
      "version": "string"
    }
  ],
  "next_cursor": "string"
}

EvalCaseSetUpdate

Compare-and-set edit of a case set; unknown fields are rejected.

FieldTypeRequired
descriptionstring or nullno
expected_revisioninteger (int64)yes
namestring or nullno
targetstring or nullno
versionstring or nullno

Used by: updateEvalCaseSet

{
  "description": "string",
  "expected_revision": 0,
  "name": "string",
  "target": "string",
  "version": "string"
}

EvalCaseUpdate

Compare-and-set edit of a case; unknown fields are rejected.

FieldTypeRequired
assertionsarray of EvalAssertion or nullno
expected_revisioninteger (int64)yes
inputany JSONno
namestring or nullno
tagsarray of string or nullno

Used by: updateEvalCase

{
  "assertions": [
    {
      "path": "string",
      "type": "equals",
      "value": {}
    }
  ],
  "expected_revision": 0,
  "input": {},
  "name": "string",
  "tags": [
    "string"
  ]
}

EvalResult

One case's verdict in a run. `status` is pending, passed, failed, errored or skipped (patterned string, see `EvalRun.status`): `skipped` when the traverser was cancelled, `errored` when it failed or timed out without a `status`/`error_code` assertion expecting that, otherwise passed/failed by the assertions.

FieldTypeRequired
assertionsarray of EvalAssertionResultyes
case_idstringyes
case_namestringyes
cost_usdnumber or nullno
duration_msinteger (int64) or nullno
errorany JSONno
finished_atinteger (int64) or nullno
outputany JSONno
run_idstringyes
statusstringyes
total_tokensinteger (int64) or nullno
traverser_idstring or nullno
{
  "assertions": [
    {
      "actual": {},
      "message": "string",
      "passed": false,
      "path": "string",
      "type": "equals"
    }
  ],
  "case_id": "string",
  "case_name": "string",
  "cost_usd": 0.0,
  "duration_ms": 0,
  "error": {},
  "finished_at": 0,
  "output": {},
  "run_id": "string",
  "status": "string",
  "total_tokens": 0,
  "traverser_id": "string"
}

EvalRun

One execution of a case set. `status` is running, succeeded, failed or cancelled (a patterned string: these values already belong to `Status`, and the Go generator shares one constant namespace across every enum). Counters are maintained by settlement; `pass_rate` is passed over settled verdicts and null until one settles.

FieldTypeRequired
case_set_idstringyes
cost_completebooleanyes
cost_usdnumber or nullno
created_atinteger (int64)yes
duration_ms_p50integer (int64) or nullno
erroredinteger (int64)yes
failedinteger (int64)yes
finished_atinteger (int64) or nullno
idstringyes
labelstringyes
pass_ratenumber or nullno
passedinteger (int64)yes
pendinginteger (int64)yes
revisioninteger (int64)yes
skippedinteger (int64)yes
started_atinteger (int64)yes
statusstringyes
targetstringyes
totalinteger (int64)yes
total_tokensinteger (int64)yes
versionstringyes

Used by: cancelEvalRun, startEvalRun

{
  "case_set_id": "string",
  "cost_complete": false,
  "cost_usd": 0.0,
  "created_at": 0,
  "duration_ms_p50": 0,
  "errored": 0,
  "failed": 0,
  "finished_at": 0,
  "id": "string",
  "label": "string",
  "pass_rate": 0.0,
  "passed": 0,
  "pending": 0,
  "revision": 0,
  "skipped": 0,
  "started_at": 0,
  "status": "string",
  "target": "string",
  "total": 0,
  "total_tokens": 0,
  "version": "string"
}

EvalRunDetail

FieldTypeRequired
resultsarray of EvalResultyes
runEvalRunyes

Used by: getEvalRun

{
  "results": [
    {
      "assertions": [
        {
          "actual": {},
          "message": "string",
          "passed": false,
          "path": "string",
          "type": {}
        }
      ],
      "case_id": "string",
      "case_name": "string",
      "cost_usd": 0.0,
      "duration_ms": 0,
      "error": {},
      "finished_at": 0,
      "output": {},
      "run_id": "string",
      "status": "string",
      "total_tokens": 0,
      "traverser_id": "string"
    }
  ],
  "run": {
    "case_set_id": "string",
    "cost_complete": false,
    "cost_usd": 0.0,
    "created_at": 0,
    "duration_ms_p50": 0,
    "errored": 0,
    "failed": 0,
    "finished_at": 0,
    "id": "string",
    "label": "string",
    "pass_rate": 0.0,
    "passed": 0,
    "pending": 0,
    "revision": 0,
    "skipped": 0,
    "started_at": 0,
    "status": "string",
    "target": "string",
    "total": 0,
    "total_tokens": 0,
    "version": "string"
  }
}

EvalRunList

FieldTypeRequired
itemsarray of EvalRunyes
next_cursorstring or nullno

Used by: listEvalRuns

{
  "items": [
    {
      "case_set_id": "string",
      "cost_complete": false,
      "cost_usd": 0.0,
      "created_at": 0,
      "duration_ms_p50": 0,
      "errored": 0,
      "failed": 0,
      "finished_at": 0,
      "id": "string",
      "label": "string",
      "pass_rate": 0.0,
      "passed": 0,
      "pending": 0,
      "revision": 0,
      "skipped": 0,
      "started_at": 0,
      "status": "string",
      "target": "string",
      "total": 0,
      "total_tokens": 0,
      "version": "string"
    }
  ],
  "next_cursor": "string"
}

EvalRunRequest

FieldTypeRequired
case_idsarray of string or nullno
labelstring or nullno
versionstring or nullno

Used by: startEvalRun

{
  "case_ids": [
    "string"
  ],
  "label": "string",
  "version": "string"
}

EvalScore

Finished runs of one set aggregated per version.

FieldTypeRequired
casesinteger (int64)yes
cost_completebooleanyes
cost_usdnumber or nullno
duration_ms_p50integer (int64) or nullno
erroredinteger (int64)yes
failedinteger (int64)yes
last_finished_atinteger (int64) or nullno
last_run_idstringyes
pass_ratenumber or nullno
passedinteger (int64)yes
runsinteger (int64)yes
skippedinteger (int64)yes
total_tokensinteger (int64)yes
versionstringyes
{
  "cases": 0,
  "cost_complete": false,
  "cost_usd": 0.0,
  "duration_ms_p50": 0,
  "errored": 0,
  "failed": 0,
  "last_finished_at": 0,
  "last_run_id": "string",
  "pass_rate": 0.0,
  "passed": 0,
  "runs": 0,
  "skipped": 0,
  "total_tokens": 0,
  "version": "string"
}

EvalScores

FieldTypeRequired
case_set_idstringyes
itemsarray of EvalScoreyes

Used by: evalScores

{
  "case_set_id": "string",
  "items": [
    {
      "cases": 0,
      "cost_complete": false,
      "cost_usd": 0.0,
      "duration_ms_p50": 0,
      "errored": 0,
      "failed": 0,
      "last_finished_at": 0,
      "last_run_id": "string",
      "pass_rate": 0.0,
      "passed": 0,
      "runs": 0,
      "skipped": 0,
      "total_tokens": 0,
      "version": "string"
    }
  ]
}

EventLog

FieldTypeRequired
idstringyes
itemsarray of ExecutionEventyes
root_idstringyes

Used by: getEventLog

{
  "id": "string",
  "items": [
    {
      "created_at": 0,
      "data": {},
      "root_id": "string",
      "sequence": 0,
      "traverser_id": "string",
      "type": "string"
    }
  ],
  "root_id": "string"
}

ExecutionError

FieldTypeRequired
codestringyes
messagestringyes
retryableboolean or nullno
{
  "code": "string",
  "message": "string",
  "retryable": false
}

ExecutionEvent

FieldTypeRequired
created_atinteger (int64)yes
dataany JSONyes
root_idstringyes
sequenceinteger (int64)yes
traverser_idstringyes
typestringyes
{
  "created_at": 0,
  "data": {},
  "root_id": "string",
  "sequence": 0,
  "traverser_id": "string",
  "type": "string"
}

ExecutionPath

FieldTypeRequired
idstringyes
itemsarray of Traverseryes
root_idstringyes
steps_returnedinteger (int64) or nullno
steps_totalinteger (int64) or nullno
truncatedboolean or nullno

Used by: getPath

{
  "id": "string",
  "items": [
    {
      "attempt": 0,
      "attempts": [
        {
          "attempt": 0,
          "error": {},
          "finished_at": 0,
          "lease_expires_at": 0,
          "started_at": 0,
          "status": "string",
          "worker_id": "string"
        }
      ],
      "cancel_requested": false,
      "capability": "string",
      "created_at": 0,
      "deadline_at": 0,
      "error": {},
      "finished_at": 0,
      "id": "string",
      "idempotency_key": "string",
      "input": {},
      "input_bytes": 0,
      "input_truncated": false,
      "kind": "string",
      "label": "string",
      "max_attempts": 0,
      "operation_key": "string",
      "output": {},
      "output_bytes": 0,
      "parent_id": "string",
      "parent_step_id": "string",
      "principal": "string",
      "replay": {
        "reuse": "string",
        "reused_output": false,
        "source_id": "string"
      },
      "root_id": "string",
      "seq": 0,
      "session_id": "string",
      "started_at": 0,
      "status": "queued",
      "step_id": "string",
      "submitted_by": "string",
      "target": "string",
      "timeout_seconds": 0,
      "updated_at": 0,
      "version": "string"
    }
  ],
  "root_id": "string",
  "steps_returned": 0,
  "steps_total": 0,
  "truncated": false
}

Health

FieldTypeRequired
productstringyes
statusstringyes

Used by: health

{
  "product": "string",
  "status": "string"
}

IdentityCreate

FieldTypeRequired
labelstringyes

Used by: createIdentity

{
  "label": "string"
}

IdentityList

FieldTypeRequired
itemsarray of NodeIdentityyes

Used by: listIdentities

{
  "items": [
    {
      "algorithm": "string",
      "created_at": 0,
      "id": "string",
      "label": "string",
      "public_key": "string",
      "retired_at": 0,
      "revoked_at": 0,
      "state": "string"
    }
  ]
}

InboundDelivery

FieldTypeRequired
delivery_keystringyes
event_typestring or nullno
inputany JSONno
raw_payloadany JSONno
{
  "delivery_key": "string",
  "event_type": "string",
  "input": {},
  "raw_payload": {}
}

InboundEvent

FieldTypeRequired
created_atinteger (int64)yes
delivery_keystringyes
emitter_idstringyes
errorany JSONno
event_typestringyes
idstringyes
inputany JSONyes
raw_payloadany JSONyes
replay_ofstring or nullno
statusstringyes
traverser_idstring or nullno

Used by: replayEmitterEvent

{
  "created_at": 0,
  "delivery_key": "string",
  "emitter_id": "string",
  "error": {},
  "event_type": "string",
  "id": "string",
  "input": {},
  "raw_payload": {},
  "replay_of": "string",
  "status": "string",
  "traverser_id": "string"
}

InboundEventList

FieldTypeRequired
itemsarray of InboundEventyes

Used by: emitterEvents

{
  "items": [
    {
      "created_at": 0,
      "delivery_key": "string",
      "emitter_id": "string",
      "error": {},
      "event_type": "string",
      "id": "string",
      "input": {},
      "raw_payload": {},
      "replay_of": "string",
      "status": "string",
      "traverser_id": "string"
    }
  ]
}

Jwk

Ed25519 public key as a JSON Web Key.

FieldTypeRequired
crvstringyes
ktystringyes
xstringyes
{
  "crv": "string",
  "kty": "string",
  "x": "string"
}

KnowledgeBatchResult

FieldTypeRequired
chunksinteger (int64)yes
documentsinteger (int64)yes
itemsarray of KnowledgeWriteResultyes

Used by: putKnowledgeBatch

{
  "chunks": 0,
  "documents": 0,
  "items": [
    {
      "chunks": 0,
      "created": false,
      "doc_id": "string",
      "postings": 0,
      "revision": 0,
      "terms": 0,
      "tokens": 0
    }
  ]
}

KnowledgeChunk

FieldTypeRequired
citationstringyes
metadataobject of any JSONyes
ordinalinteger (int64)yes
pageinteger (int64) or nullno
textstringyes
tokensinteger (int64)yes
{
  "citation": "string",
  "metadata": {
    "key": {}
  },
  "ordinal": 0,
  "page": 0,
  "text": "string",
  "tokens": 0
}

KnowledgeChunkBounds

FieldTypeRequired
defaultinteger (int64)yes
maxinteger (int64)yes
mininteger (int64)yes
{
  "default": 0,
  "max": 0,
  "min": 0
}

KnowledgeChunkInput

FieldTypeRequired
metadataobject of any JSON or nullno
pageinteger (int64) or nullno
textstringyes
{
  "metadata": {
    "key": {}
  },
  "page": 0,
  "text": "string"
}

KnowledgeChunking

Server-side chunking of `text`; defaults 1200 characters with 100 overlap.

FieldTypeRequired
overlapinteger (int64) or nullno
sizeinteger (int64) or nullno
{
  "overlap": 0,
  "size": 0
}

KnowledgeDelete

FieldTypeRequired
actor_idstring or nullno
doc_idstringyes
expected_revisioninteger (int64) or nullno
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: deleteKnowledgeDocument

{
  "actor_id": "string",
  "doc_id": "string",
  "expected_revision": 0,
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

KnowledgeDeleted

`deleted:false` (no live document) carries no `revision`; a tombstone keeps the revision monotonic.

FieldTypeRequired
deletedbooleanyes
doc_idstringyes
revisioninteger (int64) or nullno

Used by: deleteKnowledgeDocument

{
  "deleted": false,
  "doc_id": "string",
  "revision": 0
}

KnowledgeDocument

`found:false` carries only `doc_id`. `items` is present only when `include_chunks` is true.

FieldTypeRequired
chunksinteger (int64) or nullno
created_atinteger (int64) or nullno
doc_idstringyes
foundbooleanyes
itemsarray of KnowledgeChunk or nullno
metadataobject of any JSON or nullno
principalstring or nullno
revisioninteger (int64) or nullno
text_bytesinteger (int64) or nullno
titlestring or nullno
tokensinteger (int64) or nullno
updated_atinteger (int64) or nullno

Used by: getKnowledgeDocument

{
  "chunks": 0,
  "created_at": 0,
  "doc_id": "string",
  "found": false,
  "items": [
    {
      "citation": "string",
      "metadata": {
        "key": {}
      },
      "ordinal": 0,
      "page": 0,
      "text": "string",
      "tokens": 0
    }
  ],
  "metadata": {
    "key": {}
  },
  "principal": "string",
  "revision": 0,
  "text_bytes": 0,
  "title": "string",
  "tokens": 0,
  "updated_at": 0
}

KnowledgeDocumentSummary

FieldTypeRequired
chunksinteger (int64)yes
doc_idstringyes
metadataobject of any JSONyes
revisioninteger (int64)yes
text_bytesinteger (int64)yes
titlestringyes
tokensinteger (int64)yes
updated_atinteger (int64)yes
{
  "chunks": 0,
  "doc_id": "string",
  "metadata": {
    "key": {}
  },
  "revision": 0,
  "text_bytes": 0,
  "title": "string",
  "tokens": 0,
  "updated_at": 0
}

KnowledgeGet

FieldTypeRequired
actor_idstring or nullno
doc_idstringyes
include_chunksboolean or nullno
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: getKnowledgeDocument

{
  "actor_id": "string",
  "doc_id": "string",
  "include_chunks": false,
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

KnowledgeHit

FieldTypeRequired
chunk_metadataobject of any JSONyes
citationstringyes
doc_idstringyes
matched_termsarray of stringyes
metadataobject of any JSONyes
ordinalinteger (int64)yes
pageinteger (int64) or nullno
scorenumberyes
textstringyes
titlestringyes
tokensinteger (int64)yes
{
  "chunk_metadata": {
    "key": {}
  },
  "citation": "string",
  "doc_id": "string",
  "matched_terms": [
    "string"
  ],
  "metadata": {
    "key": {}
  },
  "ordinal": 0,
  "page": 0,
  "score": 0.0,
  "text": "string",
  "title": "string",
  "tokens": 0
}

KnowledgeHits

FieldTypeRequired
corpus_chunksinteger (int64)yes
itemsarray of KnowledgeHityes
next_offsetinteger (int64) or nullno
offsetinteger (int64)yes
scannedinteger (int64)yes
strategyKnowledgeStrategyyes
termsarray of stringyes
top_kinteger (int64)yes
totalinteger (int64)yes

Used by: searchKnowledge

{
  "corpus_chunks": 0,
  "items": [
    {
      "chunk_metadata": {
        "key": {}
      },
      "citation": "string",
      "doc_id": "string",
      "matched_terms": [
        "string"
      ],
      "metadata": {
        "key": {}
      },
      "ordinal": 0,
      "page": 0,
      "score": 0.0,
      "text": "string",
      "title": "string",
      "tokens": 0
    }
  ],
  "next_offset": 0,
  "offset": 0,
  "scanned": 0,
  "strategy": "bm25",
  "terms": [
    "string"
  ],
  "top_k": 0,
  "total": 0
}

KnowledgeLimits

Bounds the store enforces, reported so clients can validate before sending.

FieldTypeRequired
chunk_bytesinteger (int64)yes
chunk_charsKnowledgeChunkBoundsyes
chunk_overlap_defaultinteger (int64)yes
chunks_per_documentinteger (int64)yes
chunks_per_scopeinteger (int64)yes
doc_id_charsinteger (int64)yes
documents_per_batchinteger (int64)yes
documents_per_scopeinteger (int64)yes
list_limitinteger (int64)yes
metadata_bytesinteger (int64)yes
offsetinteger (int64)yes
query_charsinteger (int64)yes
query_termsinteger (int64)yes
term_charsinteger (int64)yes
text_bytesinteger (int64)yes
title_charsinteger (int64)yes
top_kinteger (int64)yes
{
  "chunk_bytes": 0,
  "chunk_chars": {
    "default": 0,
    "max": 0,
    "min": 0
  },
  "chunk_overlap_default": 0,
  "chunks_per_document": 0,
  "chunks_per_scope": 0,
  "doc_id_chars": 0,
  "documents_per_batch": 0,
  "documents_per_scope": 0,
  "list_limit": 0,
  "metadata_bytes": 0,
  "offset": 0,
  "query_chars": 0,
  "query_terms": 0,
  "term_chars": 0,
  "text_bytes": 0,
  "title_chars": 0,
  "top_k": 0
}

KnowledgeListQuery

FieldTypeRequired
actor_idstring or nullno
cursorstring or nullno
lease_tokenstring or nullno
limitinteger (int64) or nullno
prefixstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: listKnowledgeDocuments

{
  "actor_id": "string",
  "cursor": "string",
  "lease_token": "string",
  "limit": 0,
  "prefix": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

KnowledgeListing

FieldTypeRequired
itemsarray of KnowledgeDocumentSummaryyes
next_cursorstring or nullno

Used by: listKnowledgeDocuments

{
  "items": [
    {
      "chunks": 0,
      "doc_id": "string",
      "metadata": {
        "key": {}
      },
      "revision": 0,
      "text_bytes": 0,
      "title": "string",
      "tokens": 0,
      "updated_at": 0
    }
  ],
  "next_cursor": "string"
}

KnowledgePut

Write or replace one document: authority fields plus the document fields.

FieldTypeRequired
actor_idstring or nullno
chunknull or KnowledgeChunkingno
chunksarray of KnowledgeChunkInput or nullno
doc_idstringyes
expected_revisioninteger (int64) or nullno
lease_tokenstring or nullno
metadataobject of any JSON or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno
textstring or nullno
titlestring or nullno

Used by: putKnowledgeDocument

{
  "actor_id": "string",
  "chunk": {
    "overlap": 0,
    "size": 0
  },
  "chunks": [
    {
      "metadata": {
        "key": {}
      },
      "page": 0,
      "text": "string"
    }
  ],
  "doc_id": "string",
  "expected_revision": 0,
  "lease_token": "string",
  "metadata": {
    "key": {}
  },
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string",
  "text": "string",
  "title": "string"
}

KnowledgePutBatch

One transaction: any failure writes nothing. Duplicate `doc_id`s are rejected and the combined text is bounded to 4 MiB.

FieldTypeRequired
actor_idstring or nullno
documentsarray of KnowledgePutDocumentyes
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: putKnowledgeBatch

{
  "actor_id": "string",
  "documents": [
    {
      "chunk": {
        "overlap": 0,
        "size": 0
      },
      "chunks": [
        {
          "metadata": {
            "key": {}
          },
          "page": 0,
          "text": "string"
        }
      ],
      "doc_id": "string",
      "expected_revision": 0,
      "metadata": {
        "key": {}
      },
      "text": "string",
      "title": "string"
    }
  ],
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

KnowledgePutDocument

One document in a batch: exactly one of `text` (with optional `chunk`) or `chunks`.

FieldTypeRequired
chunknull or KnowledgeChunkingno
chunksarray of KnowledgeChunkInput or nullno
doc_idstringyes
expected_revisioninteger (int64) or nullno
metadataobject of any JSON or nullno
textstring or nullno
titlestring or nullno
{
  "chunk": {
    "overlap": 0,
    "size": 0
  },
  "chunks": [
    {
      "metadata": {
        "key": {}
      },
      "page": 0,
      "text": "string"
    }
  ],
  "doc_id": "string",
  "expected_revision": 0,
  "metadata": {
    "key": {}
  },
  "text": "string",
  "title": "string"
}

KnowledgeScope

Memory authority fields shared by every knowledge request; `scope` resolves ownership exactly like `memory/read`.

FieldTypeRequired
actor_idstring or nullno
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: knowledgeStats

{
  "actor_id": "string",
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

KnowledgeSearch

FieldTypeRequired
actor_idstring or nullno
doc_idstring or nullno
filtersobject of any JSON or nullno
lease_tokenstring or nullno
min_scorenumber or nullno
offsetinteger (int64) or nullno
querystringyes
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno
top_kinteger (int64) or nullno

Used by: searchKnowledge

{
  "actor_id": "string",
  "doc_id": "string",
  "filters": {
    "key": {}
  },
  "lease_token": "string",
  "min_score": 0.0,
  "offset": 0,
  "query": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string",
  "top_k": 0
}

KnowledgeStats

FieldTypeRequired
average_chunk_tokensnumberyes
chunksinteger (int64)yes
documentsinteger (int64)yes
limitsKnowledgeLimitsyes
postingsinteger (int64)yes
scopeMemoryScopeyes
strategyKnowledgeStrategyyes
termsinteger (int64)yes
text_bytesinteger (int64)yes
tokensinteger (int64)yes

Used by: knowledgeStats

{
  "average_chunk_tokens": 0.0,
  "chunks": 0,
  "documents": 0,
  "limits": {
    "chunk_bytes": 0,
    "chunk_chars": {
      "default": 0,
      "max": 0,
      "min": 0
    },
    "chunk_overlap_default": 0,
    "chunks_per_document": 0,
    "chunks_per_scope": 0,
    "doc_id_chars": 0,
    "documents_per_batch": 0,
    "documents_per_scope": 0,
    "list_limit": 0,
    "metadata_bytes": 0,
    "offset": 0,
    "query_chars": 0,
    "query_terms": 0,
    "term_chars": 0,
    "text_bytes": 0,
    "title_chars": 0,
    "top_k": 0
  },
  "postings": 0,
  "scope": "session",
  "strategy": "bm25",
  "terms": 0,
  "text_bytes": 0,
  "tokens": 0
}

KnowledgeStrategy

Ranking strategy; always `bm25` (k1 = 1.2, b = 0.75). No embedding index exists.

String enum: "bm25"

"bm25"

KnowledgeWriteResult

FieldTypeRequired
chunksinteger (int64)yes
createdbooleanyes
doc_idstringyes
postingsinteger (int64)yes
revisioninteger (int64)yes
termsinteger (int64)yes
tokensinteger (int64)yes

Used by: putKnowledgeDocument

{
  "chunks": 0,
  "created": false,
  "doc_id": "string",
  "postings": 0,
  "revision": 0,
  "terms": 0,
  "tokens": 0
}

Lease

FieldTypeRequired
idstringyes
lease_tokenstringyes
worker_idstringyes

Used by: renewLease, resumeTask, suspendTask

{
  "id": "string",
  "lease_token": "string",
  "worker_id": "string"
}

LeaseRenewal

FieldTypeRequired
cancel_requestedbooleanyes
lease_expires_atinteger (int64)yes

Used by: renewLease

{
  "cancel_requested": false,
  "lease_expires_at": 0
}

LogAppendRequest

FieldTypeRequired
entriesarray of LogEntry or nullno
entrynull or LogEntryno
lease_tokenstring or nullno
step_idstring or nullno
task_idstring or nullno
traverser_idstring or nullno

Used by: appendLogs

{
  "entries": [
    {
      "fields": {
        "key": {}
      },
      "level": "trace",
      "logged_at": 0,
      "message": "string",
      "source": "string",
      "stream": "stdout"
    }
  ],
  "entry": {
    "fields": {
      "key": {}
    },
    "level": "trace",
    "logged_at": 0,
    "message": "string",
    "source": "string",
    "stream": "stdout"
  },
  "lease_token": "string",
  "step_id": "string",
  "task_id": "string",
  "traverser_id": "string"
}

LogEntry

One node log line. `message` is truncated to the namespace's byte bound.

FieldTypeRequired
fieldsobject of any JSON or nullno
levelnull or LogLevelno
logged_atinteger (int64) or nullno
messagestringyes
sourcestring or nullno
streamnull or LogStreamno
{
  "fields": {
    "key": {}
  },
  "level": "trace",
  "logged_at": 0,
  "message": "string",
  "source": "string",
  "stream": "stdout"
}

LogLevel

String enum: "trace" "debug" "info" "warn" "error" "fatal" "log"

"trace"

LogPage

FieldTypeRequired
itemsarray of LogRecordyes
next_cursorinteger (int64)yes
root_idstringyes
traverser_idstringyes

Used by: queryLogs

{
  "items": [
    {
      "attempt": 0,
      "created_at": 0,
      "fields": {
        "key": {}
      },
      "level": "trace",
      "logged_at": 0,
      "message": "string",
      "root_id": "string",
      "sequence": 0,
      "source": "string",
      "stream": "stdout",
      "traverser_id": "string",
      "truncated": false
    }
  ],
  "next_cursor": 0,
  "root_id": "string",
  "traverser_id": "string"
}

LogReceipt

FieldTypeRequired
acceptedinteger (int64)yes
attemptinteger (int64)yes
first_sequenceinteger (int64)yes
last_sequenceinteger (int64)yes
max_message_bytesinteger (int64)yes
root_idstringyes
traverser_idstringyes
truncatedinteger (int64)yes

Used by: appendLogs

{
  "accepted": 0,
  "attempt": 0,
  "first_sequence": 0,
  "last_sequence": 0,
  "max_message_bytes": 0,
  "root_id": "string",
  "traverser_id": "string",
  "truncated": 0
}

LogRecord

FieldTypeRequired
attemptinteger (int64)yes
created_atinteger (int64)yes
fieldsobject of any JSONyes
levelLogLevelyes
logged_atinteger (int64)yes
messagestringyes
root_idstringyes
sequenceinteger (int64)yes
sourcestringyes
streamLogStreamyes
traverser_idstringyes
truncatedbooleanyes
{
  "attempt": 0,
  "created_at": 0,
  "fields": {
    "key": {}
  },
  "level": "trace",
  "logged_at": 0,
  "message": "string",
  "root_id": "string",
  "sequence": 0,
  "source": "string",
  "stream": "stdout",
  "traverser_id": "string",
  "truncated": false
}

LogStream

String enum: "stdout" "stderr" "app"

"stdout"

MemoryChangeAction

Whether a change event records a write or a tombstone.

String enum: "set" "delete"

"set"

MemoryChangeEvent

One durable change. `value` carries the written JSON only for value sets whose canonical JSON is at most 65536 bytes; larger payloads set `value_omitted`.

FieldTypeRequired
actionMemoryChangeActionyes
created_atinteger (int64)yes
keystringyes
kindMemoryKindyes
principalstringyes
revisioninteger (int64)yes
scopeMemoryScopeyes
scope_idstringyes
sequenceinteger (int64)yes
valueany JSONno
value_omittedboolean or nullno
{
  "action": "set",
  "created_at": 0,
  "key": "string",
  "kind": "value",
  "principal": "string",
  "revision": 0,
  "scope": "session",
  "scope_id": "string",
  "sequence": 0,
  "value": {},
  "value_omitted": false
}

MemoryChangeFeed

FieldTypeRequired
itemsarray of MemoryChangeEventyes
next_cursorinteger (int64)yes
oldest_sequenceinteger (int64) or nullno

Used by: memoryChanges

{
  "items": [
    {
      "action": "set",
      "created_at": 0,
      "key": "string",
      "kind": "value",
      "principal": "string",
      "revision": 0,
      "scope": "session",
      "scope_id": "string",
      "sequence": 0,
      "value": {},
      "value_omitted": false
    }
  ],
  "next_cursor": 0,
  "oldest_sequence": 0
}

MemoryChangeQuery

FieldTypeRequired
actor_idstring or nullno
afterinteger (int64) or nullno
lease_tokenstring or nullno
limitinteger (int64) or nullno
prefixstring or nullno
root_idstring or nullno
scopenull or MemoryScopeno
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: memoryChanges

{
  "actor_id": "string",
  "after": 0,
  "lease_token": "string",
  "limit": 0,
  "prefix": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

MemoryDelete

FieldTypeRequired
actor_idstring or nullno
expected_revisioninteger (int64) or nullno
keystringyes
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno

Used by: deleteMemory

{
  "actor_id": "string",
  "expected_revision": 0,
  "key": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string"
}

MemoryEntry

One live entry. `expires_at` is present for value entries (null when the entry has no TTL); `dimension` is present for vector entries.

FieldTypeRequired
dimensioninteger (int64) or nullno
expires_atinteger (int64) or nullno
keystringyes
revisioninteger (int64)yes
updated_atinteger (int64)yes
{
  "dimension": 0,
  "expires_at": 0,
  "key": "string",
  "revision": 0,
  "updated_at": 0
}

MemoryKey

FieldTypeRequired
actor_idstring or nullno
keystringyes
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno

Used by: readMemory

{
  "actor_id": "string",
  "key": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string"
}

MemoryKind

What a listed or changed memory entry holds: a JSON value or an embedding.

String enum: "value" "vector"

"value"

MemoryListQuery

FieldTypeRequired
actor_idstring or nullno
cursorstring or nullno
kindnull or MemoryKindno
lease_tokenstring or nullno
limitinteger (int64) or nullno
prefixstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: listMemory

{
  "actor_id": "string",
  "cursor": "string",
  "kind": "value",
  "lease_token": "string",
  "limit": 0,
  "prefix": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

MemoryListing

FieldTypeRequired
itemsarray of MemoryEntryyes
kindMemoryKindyes
next_cursorstring or nullno

Used by: listMemory

{
  "items": [
    {
      "dimension": 0,
      "expires_at": 0,
      "key": "string",
      "revision": 0,
      "updated_at": 0
    }
  ],
  "kind": "value",
  "next_cursor": "string"
}

MemoryRevision

FieldTypeRequired
expires_atinteger (int64) or nullno
revisioninteger (int64)yes

Used by: writeMemory

{
  "expires_at": 0,
  "revision": 0
}

MemoryScope

String enum: "session" "actor" "global" "workflow"

"session"

MemoryValue

FieldTypeRequired
foundbooleanyes
revisioninteger (int64)yes
valueany JSONyes

Used by: readMemory

{
  "found": false,
  "revision": 0,
  "value": {}
}

MemoryVector

A stored vector. When `found` is false the server returns `embedding` and `metadata` as null with `dimension` and `revision` 0.

FieldTypeRequired
dimensioninteger (int64)yes
embeddingarray of number or nullno
foundbooleanyes
keystringyes
metadataobject of any JSON or nullno
revisioninteger (int64)yes

Used by: getMemoryVector

{
  "dimension": 0,
  "embedding": [
    0.0
  ],
  "found": false,
  "key": "string",
  "metadata": {
    "key": {}
  },
  "revision": 0
}

MemoryVectorDelete

FieldTypeRequired
actor_idstring or nullno
expected_revisioninteger (int64) or nullno
keystringyes
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: deleteMemoryVector

{
  "actor_id": "string",
  "expected_revision": 0,
  "key": "string",
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

MemoryVectorKey

FieldTypeRequired
actor_idstring or nullno
keystringyes
lease_tokenstring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: getMemoryVector

{
  "actor_id": "string",
  "key": "string",
  "lease_token": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

MemoryVectorMatch

FieldTypeRequired
keystringyes
metadataobject of any JSONyes
revisioninteger (int64)yes
scorenumberyes
{
  "key": "string",
  "metadata": {
    "key": {}
  },
  "revision": 0,
  "score": 0.0
}

MemoryVectorMatches

FieldTypeRequired
dimensioninteger (int64)yes
itemsarray of MemoryVectorMatchyes
scannedinteger (int64)yes
strategyVectorSearchStrategyyes

Used by: searchMemoryVectors

{
  "dimension": 0,
  "items": [
    {
      "key": "string",
      "metadata": {
        "key": {}
      },
      "revision": 0,
      "score": 0.0
    }
  ],
  "scanned": 0,
  "strategy": "linear"
}

MemoryVectorRevision

FieldTypeRequired
dimensioninteger (int64)yes
revisioninteger (int64)yes

Used by: setMemoryVector

{
  "dimension": 0,
  "revision": 0
}

MemoryVectorSearch

FieldTypeRequired
actor_idstring or nullno
filtersobject of any JSON or nullno
lease_tokenstring or nullno
min_scorenumber or nullno
query_embeddingarray of numberyes
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno
top_kinteger (int64) or nullno

Used by: searchMemoryVectors

{
  "actor_id": "string",
  "filters": {
    "key": {}
  },
  "lease_token": "string",
  "min_score": 0.0,
  "query_embedding": [
    0.0
  ],
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string",
  "top_k": 0
}

MemoryVectorWrite

FieldTypeRequired
actor_idstring or nullno
embeddingarray of numberyes
expected_revisioninteger (int64) or nullno
keystringyes
lease_tokenstring or nullno
metadataobject of any JSON or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
step_idstring or nullno
task_idstring or nullno

Used by: setMemoryVector

{
  "actor_id": "string",
  "embedding": [
    0.0
  ],
  "expected_revision": 0,
  "key": "string",
  "lease_token": "string",
  "metadata": {
    "key": {}
  },
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "step_id": "string",
  "task_id": "string"
}

MemoryWrite

FieldTypeRequired
actor_idstring or nullno
expected_revisioninteger (int64) or nullno
keystringyes
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
ttl_secondsinteger (int64) or nullno
valueany JSONyes

Used by: writeMemory

{
  "actor_id": "string",
  "expected_revision": 0,
  "key": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "ttl_seconds": 0,
  "value": {}
}

ModelHealth

Model-endpoint health as the process-wide monitor reports it. `status` is `not_configured` when no monitor is installed. That is deliberately distinct from healthy: a console that cannot tell "nobody is watching" from "everything is fine" would show green for an unmonitored system.

FieldTypeRequired
enabledbooleanyes
endpoint_countinteger (int64)yes
endpointsarray of any JSONyes
evaluated_atinteger (int64) or nullno
next_check_atinteger (int64) or nullno
policyany JSONno
runningbooleanyes
statusstringyes

Used by: modelHealth

{
  "enabled": false,
  "endpoint_count": 0,
  "endpoints": [
    {}
  ],
  "evaluated_at": 0,
  "next_check_at": 0,
  "policy": {},
  "running": false,
  "status": "string"
}

NodeIdentity

FieldTypeRequired
algorithmstringyes
created_atinteger (int64)yes
idstringyes
labelstringyes
public_keystringyes
retired_atinteger (int64) or nullno
revoked_atinteger (int64) or nullno
statestringyes

Used by: createIdentity, rotateIdentity

{
  "algorithm": "string",
  "created_at": 0,
  "id": "string",
  "label": "string",
  "public_key": "string",
  "retired_at": 0,
  "revoked_at": 0,
  "state": "string"
}

NodeLogOverrides

The namespace's explicit overrides; null means the process default applies.

FieldTypeRequired
enabledboolean or nullno
max_message_bytesinteger (int64) or nullno
{
  "enabled": false,
  "max_message_bytes": 0
}

NodeLogSettings

FieldTypeRequired
configuredNodeLogOverridesyes
enabledbooleanyes
max_message_bytesinteger (int64)yes
{
  "configured": {
    "enabled": false,
    "max_message_bytes": 0
  },
  "enabled": false,
  "max_message_bytes": 0
}

NodeLogSettingsUpdate

FieldTypeRequired
enabledboolean or nullno
max_message_bytesinteger (int64) or nullno
{
  "enabled": false,
  "max_message_bytes": 0
}

ObservabilityEventType

Events the namespace observability webhook can subscribe to.

String enum: "usage.recorded" "node_logs.appended" "run_metadata.updated" "run.completed" "webhook.test"

"usage.recorded"

ObservabilityLimits

FieldTypeRequired
node_logs_max_entries_per_callinteger (int64)yes
node_logs_max_message_bytesinteger (int64)yes
node_logs_retention_daysinteger (int64)yes
usage_max_entries_per_callinteger (int64)yes
webhook_max_attemptsinteger (int64)yes
{
  "node_logs_max_entries_per_call": 0,
  "node_logs_max_message_bytes": 0,
  "node_logs_retention_days": 0,
  "usage_max_entries_per_call": 0,
  "webhook_max_attempts": 0
}

ObservabilitySettings

FieldTypeRequired
limitsObservabilityLimitsyes
namespacestringyes
node_logsNodeLogSettingsyes

Used by: getObservabilitySettings, updateObservabilitySettings

{
  "limits": {
    "node_logs_max_entries_per_call": 0,
    "node_logs_max_message_bytes": 0,
    "node_logs_retention_days": 0,
    "usage_max_entries_per_call": 0,
    "webhook_max_attempts": 0
  },
  "namespace": "string",
  "node_logs": {
    "configured": {
      "enabled": false,
      "max_message_bytes": 0
    },
    "enabled": false,
    "max_message_bytes": 0
  }
}

ObservabilitySettingsUpdate

FieldTypeRequired
node_logsNodeLogSettingsUpdateyes

Used by: updateObservabilitySettings

{
  "node_logs": {
    "enabled": false,
    "max_message_bytes": 0
  }
}

ObservabilityWebhook

Webhook configuration. Only `configured` is present when none is set. The secret itself is never stored or returned: `secret_env` names the daemon environment variable and `secret_present` reports whether it is set.

FieldTypeRequired
configuredbooleanyes
created_atinteger (int64) or nullno
enabledboolean or nullno
event_typesarray of ObservabilityEventType or nullno
headersobject of string or nullno
secret_envstring or nullno
secret_presentboolean or nullno
updated_atinteger (int64) or nullno
updated_bystring or nullno
urlstring or nullno

Used by: getObservabilityWebhook, putObservabilityWebhook

{
  "configured": false,
  "created_at": 0,
  "enabled": false,
  "event_types": [
    "usage.recorded"
  ],
  "headers": {
    "key": "string"
  },
  "secret_env": "string",
  "secret_present": false,
  "updated_at": 0,
  "updated_by": "string",
  "url": "string"
}

ObservabilityWebhookPut

FieldTypeRequired
enabledboolean or nullno
event_typesarray of ObservabilityEventType or nullno
headersobject of string or nullno
secret_envstring or nullno
urlstringyes

Used by: putObservabilityWebhook

{
  "enabled": false,
  "event_types": [
    "usage.recorded"
  ],
  "headers": {
    "key": "string"
  },
  "secret_env": "string",
  "url": "string"
}

ObservabilityWebhookRedrive

FieldTypeRequired
limitinteger (int64) or nullno

Used by: redriveObservabilityWebhook

{
  "limit": 0
}

ObservabilityWebhookStatus

FieldTypeRequired
configuredbooleanyes
deliveredinteger (int64)yes
enabledbooleanyes
failedinteger (int64)yes
pendinginteger (int64)yes
recentarray of WebhookDeliveryyes
secret_presentbooleanyes

Used by: observabilityWebhookStatus

{
  "configured": false,
  "delivered": 0,
  "enabled": false,
  "failed": 0,
  "pending": 0,
  "recent": [
    {
      "attempts": 0,
      "created_at": 0,
      "delivered_at": 0,
      "event_type": "usage.recorded",
      "id": "string",
      "last_error": "string",
      "last_status": 0,
      "status": "string",
      "updated_at": 0
    }
  ],
  "secret_present": false
}

ObservabilityWebhookTest

FieldTypeRequired
messagestring or nullno

Used by: testObservabilityWebhook

{
  "message": "string"
}

PathProof

FieldTypeRequired
algorithmstringyes
idstringyes
key_idstringyes
public_keystringyes
sha256stringyes
signaturestringyes
signedSignedPayloadyes

Used by: signPath

{
  "algorithm": "string",
  "id": "string",
  "key_id": "string",
  "public_key": "string",
  "sha256": "string",
  "signature": "string",
  "signed": {
    "format": "string",
    "key_id": "string",
    "namespace": "string",
    "path": {
      "id": "string",
      "items": [
        {
          "attempt": {},
          "attempts": {},
          "cancel_requested": {},
          "capability": {},
          "created_at": {},
          "deadline_at": {},
          "error": {},
          "finished_at": {},
          "id": {},
          "idempotency_key": {},
          "input": {},
          "input_bytes": {},
          "input_truncated": {},
          "kind": {},
          "label": {},
          "max_attempts": {},
          "operation_key": {},
          "output": {},
          "output_bytes": {},
          "parent_id": {},
          "parent_step_id": {},
          "principal": {},
          "replay": {},
          "root_id": {},
          "seq": {},
          "session_id": {},
          "started_at": {},
          "status": {},
          "step_id": {},
          "submitted_by": {},
          "target": {},
          "timeout_seconds": {},
          "updated_at": {},
          "version": {}
        }
      ],
      "root_id": "string",
      "steps_returned": 0,
      "steps_total": 0,
      "truncated": false
    },
    "signed_at": 0
  }
}

ProgressTask

FieldTypeRequired
dataany JSONyes
idstringyes
lease_tokenstringyes
worker_idstringyes

Used by: reportProgress

{
  "data": {},
  "id": "string",
  "lease_token": "string",
  "worker_id": "string"
}

ProofList

FieldTypeRequired
itemsarray of PathProofyes

Used by: listPathProofs

{
  "items": [
    {
      "algorithm": "string",
      "id": "string",
      "key_id": "string",
      "public_key": "string",
      "sha256": "string",
      "signature": "string",
      "signed": {
        "format": "string",
        "key_id": "string",
        "namespace": "string",
        "path": {
          "id": {},
          "items": {},
          "root_id": {},
          "steps_returned": {},
          "steps_total": {},
          "truncated": {}
        },
        "signed_at": 0
      }
    }
  ]
}

ProofVerification

FieldTypeRequired
algorithmstringyes
key_statestringyes
trustedbooleanyes
validbooleanyes

Used by: verifyProof

{
  "algorithm": "string",
  "key_state": "string",
  "trusted": false,
  "valid": false
}

PublishDiscovery

FieldTypeRequired
artifact_typestring or nullno
descriptionstring or nullno
display_namestring or nullno
labelstringyes
publishedboolean or nullno
versionstring or nullno

Used by: publishDiscovery

{
  "artifact_type": "string",
  "description": "string",
  "display_name": "string",
  "label": "string",
  "published": false,
  "version": "string"
}

PutArtifact

Durable byte payload attached to one traverser. `data_base64` is padded standard base64 of at most 524288 decoded bytes; the server assigns `id`, `sha256`, `size_bytes` and `created_at`.

FieldTypeRequired
content_typestringyes
data_base64stringyes
lease_tokenstring or nullno
namestringyes
task_idstring or nullno

Used by: putArtifact

{
  "content_type": "string",
  "data_base64": "string",
  "lease_token": "string",
  "name": "string",
  "task_id": "string"
}

RealtimeBinding

Provider binding of a `realtime` capability. The session-setup shape is the capability's `input_schema`; the node opens the session itself through the SDK.

FieldTypeRequired
modelstring or nullno
providerstringyes
transportstringyes
{
  "model": "string",
  "provider": "string",
  "transport": "string"
}

RegisterAgent

FieldTypeRequired
capabilitiesobject of Capabilityyes
labelstringyes
tagsarray of string or nullno
versionstringyes

Used by: registerAgent

{
  "capabilities": {
    "key": {
      "input_schema": {},
      "kind": "traversal",
      "output_schema": {},
      "realtime": {
        "model": "string",
        "provider": "string",
        "transport": "string"
      },
      "retry": {
        "max_attempts": 0
      },
      "tags": [
        "string"
      ],
      "timeout_seconds": 0
    }
  },
  "label": "string",
  "tags": [
    "string"
  ],
  "version": "string"
}

ReplayInfo

FieldTypeRequired
reusestringyes
reused_outputbooleanyes
source_idstringyes
{
  "reuse": "string",
  "reused_output": false,
  "source_id": "string"
}

ResolvedVerificationMethod

FieldTypeRequired
idstringyes
public_keystringyes
typestringyes
{
  "id": "string",
  "public_key": "string",
  "type": "string"
}

RestartTraverser

FieldTypeRequired
forkboolean or nullno
idempotency_keystring or nullno
inputany JSONno
reasonstring or nullno
reusestring or nullno
scopestring or nullno
session_idstring or nullno

Used by: restartTraverser

{
  "fork": false,
  "idempotency_key": "string",
  "input": {},
  "reason": "string",
  "reuse": "string",
  "scope": "string",
  "session_id": "string"
}

Resumed

FieldTypeRequired
resumedbooleanyes

Used by: resumeTask

{
  "resumed": false
}

RetentionReport

Report of one plan or apply call. In `journal` mode execution rows, usage, run metadata, credentials, sessions and memory are retained and only the journal tables listed in `pruned_tables` are deleted; in `sessions` mode only brief artifacts are deleted and `sessions` lists what was scanned.

FieldTypeRequired
after_seqinteger (int64)yes
cutoffinteger (int64)yes
dry_runbooleanyes
eligibleinteger (int64)yes
evaluated_atinteger (int64)yes
exhaustedbooleanyes
failedinteger (int64)yes
limitinteger (int64)yes
modestringyes
namespacestringyes
next_after_seqinteger (int64) or nullno
next_cursorstring or nullno
operationstringyes
prunedinteger (int64)yes
pruned_tablesarray of stringyes
retained_tablesarray of stringyes
rootsarray of RetentionRootyes
rows_deletedRetentionRowCountsyes
rows_plannedRetentionRowCountsyes
scannedinteger (int64)yes
sessionsarray of RetentionSessionyes
skip_reasonsobject of integer (int64)yes
skippedinteger (int64)yes

Used by: retentionApply, retentionPlan

{
  "after_seq": 0,
  "cutoff": 0,
  "dry_run": false,
  "eligible": 0,
  "evaluated_at": 0,
  "exhausted": false,
  "failed": 0,
  "limit": 0,
  "mode": "string",
  "namespace": "string",
  "next_after_seq": 0,
  "next_cursor": "string",
  "operation": "string",
  "pruned": 0,
  "pruned_tables": [
    "string"
  ],
  "retained_tables": [
    "string"
  ],
  "roots": [
    {
      "action": "string",
      "descendants": 0,
      "error": {
        "code": "string",
        "message": "string"
      },
      "finished_at": 0,
      "principal": "string",
      "reason": "string",
      "root_id": "string",
      "rows": {
        "approvals": 0,
        "attempts": 0,
        "brief_artifacts": 0,
        "checkpoints": 0,
        "events": 0,
        "execution_artifacts": 0,
        "node_logs": 0,
        "signed_paths": 0,
        "total": 0
      },
      "seq": 0,
      "status": "queued"
    }
  ],
  "rows_deleted": {
    "approvals": 0,
    "attempts": 0,
    "brief_artifacts": 0,
    "checkpoints": 0,
    "events": 0,
    "execution_artifacts": 0,
    "node_logs": 0,
    "signed_paths": 0,
    "total": 0
  },
  "rows_planned": {
    "approvals": 0,
    "attempts": 0,
    "brief_artifacts": 0,
    "checkpoints": 0,
    "events": 0,
    "execution_artifacts": 0,
    "node_logs": 0,
    "signed_paths": 0,
    "total": 0
  },
  "scanned": 0,
  "sessions": [
    {
      "action": "string",
      "artifacts": 0,
      "bytes": 0,
      "error": {
        "code": "string",
        "message": "string"
      },
      "principal": "string",
      "reason": "string",
      "rows": {
        "approvals": 0,
        "attempts": 0,
        "brief_artifacts": 0,
        "checkpoints": 0,
        "events": 0,
        "execution_artifacts": 0,
        "node_logs": 0,
        "signed_paths": 0,
        "total": 0
      },
      "session_id": "string",
      "updated_at": 0
    }
  ],
  "skip_reasons": {
    "key": 0
  },
  "skipped": 0
}

RetentionRequest

Select the next batch of finished root executions whose journal may be pruned. `cutoff` is epoch milliseconds (the store also accepts a numeric or RFC 3339 string); only trees whose every member finished strictly before it qualify.

FieldTypeRequired
after_seqinteger (int64) or nullno
cursorstring or nullno
cutoffinteger (int64)yes
dry_runboolean or nullno
limitinteger (int64) or nullno
modestring or nullno

Used by: retentionApply, retentionPlan

{
  "after_seq": 0,
  "cursor": "string",
  "cutoff": 0,
  "dry_run": false,
  "limit": 0,
  "mode": "string"
}

RetentionRoot

One scanned root. `action` is `prune` (dry run, would be pruned), `skip`, `pruned` or `failed`; `reason` accompanies `skip`, `rows` accompanies `prune` and `pruned`, `error` accompanies `failed` (that root was rolled back).

FieldTypeRequired
actionstringyes
descendantsinteger (int64) or nullno
errornull or ApiErrorno
finished_atinteger (int64)yes
principalstringyes
reasonstring or nullno
root_idstringyes
rowsnull or RetentionRowCountsno
seqinteger (int64)yes
statusStatusyes
{
  "action": "string",
  "descendants": 0,
  "error": {
    "code": "string",
    "message": "string"
  },
  "finished_at": 0,
  "principal": "string",
  "reason": "string",
  "root_id": "string",
  "rows": {
    "approvals": 0,
    "attempts": 0,
    "brief_artifacts": 0,
    "checkpoints": 0,
    "events": 0,
    "execution_artifacts": 0,
    "node_logs": 0,
    "signed_paths": 0,
    "total": 0
  },
  "seq": 0,
  "status": "queued"
}

RetentionRowCounts

Journal rows per pruned table plus their sum.

FieldTypeRequired
approvalsinteger (int64)yes
attemptsinteger (int64)yes
brief_artifactsinteger (int64)yes
checkpointsinteger (int64)yes
eventsinteger (int64)yes
execution_artifactsinteger (int64)yes
node_logsinteger (int64)yes
signed_pathsinteger (int64)yes
totalinteger (int64)yes
{
  "approvals": 0,
  "attempts": 0,
  "brief_artifacts": 0,
  "checkpoints": 0,
  "events": 0,
  "execution_artifacts": 0,
  "node_logs": 0,
  "signed_paths": 0,
  "total": 0
}

RetentionSession

One session scanned in sessions mode. `action` as for `RetentionRoot`; `reason` is one of session_active, unfinished_traverser, recent_activity, nothing_to_prune, vanished.

FieldTypeRequired
actionstringyes
artifactsinteger (int64)yes
bytesinteger (int64)yes
errornull or ApiErrorno
principalstringyes
reasonstring or nullno
rowsnull or RetentionRowCountsno
session_idstringyes
updated_atinteger (int64)yes
{
  "action": "string",
  "artifacts": 0,
  "bytes": 0,
  "error": {
    "code": "string",
    "message": "string"
  },
  "principal": "string",
  "reason": "string",
  "rows": {
    "approvals": 0,
    "attempts": 0,
    "brief_artifacts": 0,
    "checkpoints": 0,
    "events": 0,
    "execution_artifacts": 0,
    "node_logs": 0,
    "signed_paths": 0,
    "total": 0
  },
  "session_id": "string",
  "updated_at": 0
}

RetrievalFeedback

One verdict on one retrieved item. Append-only: an item useful in March and outdated in June is two true facts, so repeating a verdict records a second row rather than conflicting with the first.

FieldTypeRequired
actor_idstring or nullno
capabilitystring or nullno
item_keystringyes
lease_tokenstring or nullno
notestring or nullno
root_idstring or nullno
scopeMemoryScopeyes
session_idstring or nullno
sourcestring or nullno
verdictRetrievalVerdictyes

Used by: recordRetrievalFeedback

{
  "actor_id": "string",
  "capability": "string",
  "item_key": "string",
  "lease_token": "string",
  "note": "string",
  "root_id": "string",
  "scope": "session",
  "session_id": "string",
  "source": "string",
  "verdict": "useful"
}

RetrievalFeedbackQuery

FieldTypeRequired
group_bystring or nullno
sinceinteger (int64) or nullno

Used by: retrievalFeedbackTotals

{
  "group_by": "string",
  "since": 0
}

RetrievalFeedbackReceipt

Receipt for one recorded verdict.

FieldTypeRequired
capabilitystring or nullno
idstringyes
item_keystringyes
recorded_atinteger (int64)yes
sourcestringyes
verdictstringyes

Used by: recordRetrievalFeedback

{
  "capability": "string",
  "id": "string",
  "item_key": "string",
  "recorded_at": 0,
  "source": "string",
  "verdict": "string"
}

RetrievalFeedbackReport

FieldTypeRequired
group_bystringyes
groupsarray of RetrievalVerdictCountsyes
scannedinteger (int64)yes
sinceinteger (int64)yes
totalsRetrievalVerdictCountsyes

Used by: retrievalFeedbackTotals

{
  "group_by": "string",
  "groups": [
    {
      "irrelevant": 0,
      "key": "string",
      "outdated": 0,
      "total": 0,
      "useful": 0,
      "wrong": 0
    }
  ],
  "scanned": 0,
  "since": 0,
  "totals": {
    "irrelevant": 0,
    "key": "string",
    "outdated": 0,
    "total": 0,
    "useful": 0,
    "wrong": 0
  }
}

RetrievalVerdict

A verdict on one retrieved item. Four, closed and ordered from "the ranking worked" to "the ranking was actively wrong": a free-text label cannot be aggregated, and an open set stops being comparable between runs.

String enum: "useful" "irrelevant" "outdated" "wrong"

"useful"

RetrievalVerdictCounts

Verdict counts. Every verdict appears with its count, zero included: a bucket missing `wrong` and a bucket with zero `wrong` are different facts.

FieldTypeRequired
irrelevantinteger (int64)yes
keystring or nullno
outdatedinteger (int64)yes
totalinteger (int64)yes
usefulinteger (int64)yes
wronginteger (int64)yes
{
  "irrelevant": 0,
  "key": "string",
  "outdated": 0,
  "total": 0,
  "useful": 0,
  "wrong": 0
}

RetryPolicy

FieldTypeRequired
max_attemptsinteger (int32) or nullno
{
  "max_attempts": 0
}

RevokedIdentity

FieldTypeRequired
idstringyes
statestringyes

Used by: revokeIdentity

{
  "id": "string",
  "state": "string"
}

RunMetadata

Key/value document of one root traverser (display names, MLflow trace ids, links).

FieldTypeRequired
entriesarray of RunMetadataEntryyes
metadataobject of any JSONyes
root_idstringyes
updated_atinteger (int64) or nullno

Used by: getRunMetadata

{
  "entries": [
    {
      "key": "string",
      "set_by": "string",
      "updated_at": 0,
      "value": {}
    }
  ],
  "metadata": {
    "key": {}
  },
  "root_id": "string",
  "updated_at": 0
}

RunMetadataChange

FieldTypeRequired
entriesarray of RunMetadataEntryyes
metadataobject of any JSONyes
removedinteger (int64)yes
root_idstringyes
setarray of stringyes
unsetarray of stringyes
updated_atinteger (int64) or nullno

Used by: updateRunMetadata

{
  "entries": [
    {
      "key": "string",
      "set_by": "string",
      "updated_at": 0,
      "value": {}
    }
  ],
  "metadata": {
    "key": {}
  },
  "removed": 0,
  "root_id": "string",
  "set": [
    "string"
  ],
  "unset": [
    "string"
  ],
  "updated_at": 0
}

RunMetadataEntry

FieldTypeRequired
keystringyes
set_bystringyes
updated_atinteger (int64)yes
valueany JSONyes
{
  "key": "string",
  "set_by": "string",
  "updated_at": 0,
  "value": {}
}

RunMetadataUpdate

Merge `set` and remove `unset`. Keys are 1-128 characters of `[A-Za-z0-9_.:/-]`, values at most 4096 bytes, 64 keys and 65536 bytes per run.

FieldTypeRequired
lease_tokenstring or nullno
setobject of any JSON or nullno
step_idstring or nullno
task_idstring or nullno
unsetarray of string or nullno

Used by: updateRunMetadata

{
  "lease_token": "string",
  "set": {
    "key": {}
  },
  "step_id": "string",
  "task_id": "string",
  "unset": [
    "string"
  ]
}

RuntimeSettingsApplied

The outcome of applying a stored document over the deployed baseline. `shadowed` names every leaf that was ignored because the operator had locked it in YAML or the environment — precedence is environment > explicit YAML > stored document > compiled defaults. `restart_required` is true when the document changed a startup-class setting, which cannot take effect live.

FieldTypeRequired
applied_atinteger (int64)yes
applied_bystringyes
applied_livebooleanyes
applied_revisioninteger (int64)yes
effectivebooleanyes
effective_valuesany JSONyes
instance_idstringyes
keystringyes
pending_restartarray of stringyes
restart_requiredbooleanyes
revisioninteger (int64)yes
scopestringyes
shadowedarray of stringyes

Used by: applyRuntimeSettings

{
  "applied_at": 0,
  "applied_by": "string",
  "applied_live": false,
  "applied_revision": 0,
  "effective": false,
  "effective_values": {},
  "instance_id": "string",
  "key": "string",
  "pending_restart": [
    "string"
  ],
  "restart_required": false,
  "revision": 0,
  "scope": "string",
  "shadowed": [
    "string"
  ]
}

RuntimeSettingsDeleted

FieldTypeRequired
deletedbooleanyes
deleted_revisioninteger (int64)yes
keystringyes
namespacestring or nullno
scopestringyes

Used by: deleteRuntimeSettings

{
  "deleted": false,
  "deleted_revision": 0,
  "key": "string",
  "namespace": "string",
  "scope": "string"
}

RuntimeSettingsDocument

One stored runtime-settings document. Two scopes share one table: `process` holds a single namespace-neutral document that only a deployment operator may write, and `namespace` holds bounded per-tenant documents. A committed row is **not** effective until `applyRuntimeSettings` merges it over the deployed baseline.

FieldTypeRequired
bytesinteger (int64)yes
created_atinteger (int64)yes
created_bystringyes
documentany JSONno
keystringyes
namespacestring or nullno
revisioninteger (int64)yes
scopestringyes
updated_atinteger (int64)yes
updated_bystringyes

Used by: getRuntimeSettings

{
  "bytes": 0,
  "created_at": 0,
  "created_by": "string",
  "document": {},
  "key": "string",
  "namespace": "string",
  "revision": 0,
  "scope": "string",
  "updated_at": 0,
  "updated_by": "string"
}

RuntimeSettingsList

FieldTypeRequired
itemsarray of RuntimeSettingsDocumentyes
limitinteger (int64)yes
namespacestring or nullno
scopestringyes
totalinteger (int64)yes

Used by: listRuntimeSettings

{
  "items": [
    {
      "bytes": 0,
      "created_at": 0,
      "created_by": "string",
      "document": {},
      "key": "string",
      "namespace": "string",
      "revision": 0,
      "scope": "string",
      "updated_at": 0,
      "updated_by": "string"
    }
  ],
  "limit": 0,
  "namespace": "string",
  "scope": "string",
  "total": 0
}

RuntimeSettingsWritten

FieldTypeRequired
bytesinteger (int64)yes
createdbooleanyes
keystringyes
namespacestring or nullno
previous_revisioninteger (int64)yes
revisioninteger (int64)yes
scopestringyes
updated_atinteger (int64)yes
updated_bystringyes

Used by: putRuntimeSettings

{
  "bytes": 0,
  "created": false,
  "key": "string",
  "namespace": "string",
  "previous_revision": 0,
  "revision": 0,
  "scope": "string",
  "updated_at": 0,
  "updated_by": "string"
}

ServerInfo

FieldTypeRequired
api_versionstringyes
featuresobject of booleanyes
namespacestringyes
productstringyes
versionstringyes
worker_protocolstringyes

Used by: serverInfo

{
  "api_version": "string",
  "features": {
    "key": false
  },
  "namespace": "string",
  "product": "string",
  "version": "string",
  "worker_protocol": "string"
}

Session

FieldTypeRequired
created_atinteger (int64)yes
idstringyes
namespacestringyes
principalstringyes

Used by: createSession

{
  "created_at": 0,
  "id": "string",
  "namespace": "string",
  "principal": "string"
}

SessionBinding

FieldTypeRequired
boundbooleanyes
session_idstringyes

Used by: bindSession

{
  "bound": false,
  "session_id": "string"
}

SessionDeleted

FieldTypeRequired
deletedbooleanyes
deleted_atinteger (int64)yes
idstringyes
keptSessionKeptyes
removedSessionRemovedyes

Used by: deleteSession

{
  "deleted": false,
  "deleted_at": 0,
  "id": "string",
  "kept": {
    "approvals": 0,
    "checkpoints": 0,
    "traversers": 0
  },
  "removed": {
    "brief_artifacts": 0,
    "knowledge_documents": 0,
    "memory_entries": 0,
    "memory_vectors": 0,
    "scrubbed_prompts": 0,
    "transcript_entries": 0
  }
}

SessionKept

Run records kept for audit and cost after the session is deleted.

FieldTypeRequired
approvalsinteger (int64)yes
checkpointsinteger (int64)yes
traversersinteger (int64)yes
{
  "approvals": 0,
  "checkpoints": 0,
  "traversers": 0
}

SessionLastTraverser

The most recent root traverser of a session.

FieldTypeRequired
created_atinteger (int64)yes
idstringyes
statusStatusyes
targetstringyes
updated_atinteger (int64)yes
{
  "created_at": 0,
  "id": "string",
  "status": "queued",
  "target": "string",
  "updated_at": 0
}

SessionList

FieldTypeRequired
itemsarray of SessionSummaryyes
next_cursorstring or nullno

Used by: listSessions

{
  "items": [
    {
      "active_root_id": "string",
      "artifact_bytes": 0,
      "created_at": 0,
      "deleted_at": 0,
      "id": "string",
      "label": "string",
      "last_traverser": {
        "created_at": 0,
        "id": "string",
        "status": {},
        "target": "string",
        "updated_at": 0
      },
      "namespace": "string",
      "principal": "string",
      "targets": [
        "string"
      ],
      "traverser_count": 0,
      "updated_at": 0
    }
  ],
  "next_cursor": "string"
}

SessionRemoved

Private data hard-deleted with the session.

FieldTypeRequired
brief_artifactsinteger (int64)yes
knowledge_documentsinteger (int64)yes
memory_entriesinteger (int64)yes
memory_vectorsinteger (int64)yes
scrubbed_promptsinteger (int64)yes
transcript_entriesinteger (int64)yes
{
  "brief_artifacts": 0,
  "knowledge_documents": 0,
  "memory_entries": 0,
  "memory_vectors": 0,
  "scrubbed_prompts": 0,
  "transcript_entries": 0
}

SessionSecrets

What the server says about waiting secrets. `names` and `expires_at` answer the owner's `?names=1` read and the PUT; `values` is present only on the deploying worker's one-shot read.

FieldTypeRequired
expires_atinteger (int64) or nullno
labelstringyes
namesarray of string or nullno
session_idstringyes
valuesobject of string or nullno

Used by: getSessionSecrets, putSessionSecrets

{
  "expires_at": 0,
  "label": "string",
  "names": [
    "string"
  ],
  "session_id": "string",
  "values": {
    "key": "string"
  }
}

SessionSecretsCleared

FieldTypeRequired
clearedbooleanyes
had_secretsbooleanyes
session_idstringyes

Used by: deleteSessionSecrets

{
  "cleared": false,
  "had_secrets": false,
  "session_id": "string"
}

SessionSecretsPut

Secrets a Studio brief provides for the node it will deploy. Held in the server's process memory only (never the database, journal or logs) for one hour, and handed out exactly once to the deploying worker.

FieldTypeRequired
labelstringyes
valuesobject of stringyes

Used by: putSessionSecrets

{
  "label": "string",
  "values": {
    "key": "string"
  }
}

SessionSummary

One row of the session index: the session and what has run in it.

FieldTypeRequired
active_root_idstring or nullno
artifact_bytesinteger (int64)yes
created_atinteger (int64)yes
deleted_atinteger (int64) or nullno
idstringyes
labelstring or nullno
last_traversernull or SessionLastTraverserno
namespacestringyes
principalstringyes
targetsarray of stringyes
traverser_countinteger (int64)yes
updated_atinteger (int64)yes

Used by: getSession

{
  "active_root_id": "string",
  "artifact_bytes": 0,
  "created_at": 0,
  "deleted_at": 0,
  "id": "string",
  "label": "string",
  "last_traverser": {
    "created_at": 0,
    "id": "string",
    "status": "queued",
    "target": "string",
    "updated_at": 0
  },
  "namespace": "string",
  "principal": "string",
  "targets": [
    "string"
  ],
  "traverser_count": 0,
  "updated_at": 0
}

SignPath

FieldTypeRequired
key_idstringyes

Used by: signPath

{
  "key_id": "string"
}

SignedPayload

FieldTypeRequired
formatstringyes
key_idstringyes
namespacestringyes
pathExecutionPathyes
signed_atinteger (int64)yes
{
  "format": "string",
  "key_id": "string",
  "namespace": "string",
  "path": {
    "id": "string",
    "items": [
      {
        "attempt": 0,
        "attempts": [
          {}
        ],
        "cancel_requested": false,
        "capability": "string",
        "created_at": 0,
        "deadline_at": 0,
        "error": {},
        "finished_at": 0,
        "id": "string",
        "idempotency_key": "string",
        "input": {},
        "input_bytes": 0,
        "input_truncated": false,
        "kind": "string",
        "label": "string",
        "max_attempts": 0,
        "operation_key": "string",
        "output": {},
        "output_bytes": 0,
        "parent_id": "string",
        "parent_step_id": "string",
        "principal": "string",
        "replay": {},
        "root_id": "string",
        "seq": 0,
        "session_id": "string",
        "started_at": 0,
        "status": "queued",
        "step_id": "string",
        "submitted_by": "string",
        "target": "string",
        "timeout_seconds": 0,
        "updated_at": 0,
        "version": "string"
      }
    ],
    "root_id": "string",
    "steps_returned": 0,
    "steps_total": 0,
    "truncated": false
  },
  "signed_at": 0
}

Stats

Aggregate counters for one namespace over an optional window.

FieldTypeRequired
completebooleanyes
namespacestringyes
oldest_retained_atinteger (int64) or nullno
traversersany JSONyes
windowany JSONyes
workersany JSONyes

Used by: stats

{
  "complete": false,
  "namespace": "string",
  "oldest_retained_at": 0,
  "traversers": {},
  "window": {},
  "workers": {}
}

Status

String enum: "queued" "running" "waiting" "succeeded" "failed" "cancelled" "timed_out"

"queued"

SubmitTraverser

FieldTypeRequired
idempotency_keystring or nullno
inputany JSONyes
operation_keystring or nullno
parent_lease_tokenstring or nullno
parent_step_idstring or nullno
session_idstring or nullno
targetstringyes
versionstring or nullno

Used by: submitTraverser

{
  "idempotency_key": "string",
  "input": {},
  "operation_key": "string",
  "parent_lease_token": "string",
  "parent_step_id": "string",
  "session_id": "string",
  "target": "string",
  "version": "string"
}

Suspended

FieldTypeRequired
suspendedbooleanyes

Used by: suspendTask

{
  "suspended": false
}

TagApprovalMode

String enum: "auto" "manual" "forbidden"

"auto"

TagDecision

Admin decision. Omit `tags` to act on every tag in the source state (`pending` for approve/reject, `approved` for revoke).

FieldTypeRequired
decisionTagDecisionKindyes
labelstringyes
reasonstring or nullno
tagsarray of string or nullno

Used by: decideTags

{
  "decision": "approve",
  "label": "string",
  "reason": "string",
  "tags": [
    "string"
  ]
}

TagDecisionKind

String enum: "approve" "reject" "revoke"

"approve"

TagDecisionResult

FieldTypeRequired
changedarray of stringyes
credentialnull or Credentialno
decisionTagDecisionKindyes
labelstringyes
tagsarray of TagRecordyes
warningstring or nullno

Used by: decideTags

{
  "changed": [
    "string"
  ],
  "credential": {
    "credential": {
      "@context": [
        "string"
      ],
      "credentialSubject": {},
      "expirationDate": "string",
      "id": "string",
      "issuanceDate": "string",
      "issuer": "string",
      "proof": {
        "created": {},
        "cryptosuite": {},
        "proofPurpose": {},
        "proofValue": {},
        "type": {},
        "verificationMethod": {}
      },
      "type": [
        "string"
      ]
    },
    "expires_at": 0,
    "id": "string",
    "issued_at": 0,
    "issuer_did": "string",
    "issuer_key_id": "string",
    "issuer_label": "string",
    "kind": "execution",
    "node_label": "string",
    "parent_id": "string",
    "principal": "string",
    "revocation_reason": "string",
    "revoked_at": 0,
    "revoked_by": "string",
    "root_id": "string",
    "subject_id": "string",
    "traverser_id": "string",
    "type": "string"
  },
  "decision": "approve",
  "label": "string",
  "tags": [
    {
      "decided_at": 0,
      "decided_by": "string",
      "label": "string",
      "proposed_at": 0,
      "proposed_by": "string",
      "reason": "string",
      "state": "pending",
      "tag": "string",
      "updated_at": 0
    }
  ],
  "warning": "string"
}

TagLedger

FieldTypeRequired
itemsarray of TagRecordyes

Used by: listTagLedger

{
  "items": [
    {
      "decided_at": 0,
      "decided_by": "string",
      "label": "string",
      "proposed_at": 0,
      "proposed_by": "string",
      "reason": "string",
      "state": "pending",
      "tag": "string",
      "updated_at": 0
    }
  ]
}

TagPolicy

Namespace tag approval policy. `issuer_label` names the node whose enrolled DID signs `AgentTagCredential`s; null records approvals without credentials.

FieldTypeRequired
default_modeTagApprovalModeyes
issuer_labelstring or nullno
rulesarray of TagRuleyes
updated_atinteger (int64) or nullno
updated_bystring or nullno

Used by: getTagPolicy, putTagPolicy

{
  "default_mode": "auto",
  "issuer_label": "string",
  "rules": [
    {
      "approval": "auto",
      "reason": "string",
      "tags": [
        "string"
      ]
    }
  ],
  "updated_at": 0,
  "updated_by": "string"
}

TagPolicyPut

FieldTypeRequired
default_modenull or TagApprovalModeno
issuer_labelstring or nullno
rulesarray of TagRule or nullno

Used by: putTagPolicy

{
  "default_mode": "auto",
  "issuer_label": "string",
  "rules": [
    {
      "approval": "auto",
      "reason": "string",
      "tags": [
        "string"
      ]
    }
  ]
}

TagProposal

Propose tags for a node the caller registered. Tags are lower-cased `[a-z0-9-_.:]{1,64}`; the namespace policy decides auto/manual/forbidden.

FieldTypeRequired
labelstringyes
tagsarray of stringyes

Used by: proposeTags

{
  "label": "string",
  "tags": [
    "string"
  ]
}

TagProposalResult

`modes` maps each proposed tag to the policy mode applied; `credential` is the refreshed `AgentTagCredential` when approvals changed and the policy names an enrolled issuer, otherwise `warning` explains why none was issued.

FieldTypeRequired
credentialnull or Credentialno
labelstringyes
modesobject of TagApprovalModeyes
tagsarray of TagRecordyes
warningstring or nullno

Used by: proposeTags

{
  "credential": {
    "credential": {
      "@context": [
        "string"
      ],
      "credentialSubject": {},
      "expirationDate": "string",
      "id": "string",
      "issuanceDate": "string",
      "issuer": "string",
      "proof": {
        "created": {},
        "cryptosuite": {},
        "proofPurpose": {},
        "proofValue": {},
        "type": {},
        "verificationMethod": {}
      },
      "type": [
        "string"
      ]
    },
    "expires_at": 0,
    "id": "string",
    "issued_at": 0,
    "issuer_did": "string",
    "issuer_key_id": "string",
    "issuer_label": "string",
    "kind": "execution",
    "node_label": "string",
    "parent_id": "string",
    "principal": "string",
    "revocation_reason": "string",
    "revoked_at": 0,
    "revoked_by": "string",
    "root_id": "string",
    "subject_id": "string",
    "traverser_id": "string",
    "type": "string"
  },
  "label": "string",
  "modes": {
    "key": "auto"
  },
  "tags": [
    {
      "decided_at": 0,
      "decided_by": "string",
      "label": "string",
      "proposed_at": 0,
      "proposed_by": "string",
      "reason": "string",
      "state": "pending",
      "tag": "string",
      "updated_at": 0
    }
  ],
  "warning": "string"
}

TagRecord

FieldTypeRequired
decided_atinteger (int64) or nullno
decided_bystring or nullno
labelstringyes
proposed_atinteger (int64)yes
proposed_bystringyes
reasonstring or nullno
stateTagStateyes
tagstringyes
updated_atinteger (int64)yes
{
  "decided_at": 0,
  "decided_by": "string",
  "label": "string",
  "proposed_at": 0,
  "proposed_by": "string",
  "reason": "string",
  "state": "pending",
  "tag": "string",
  "updated_at": 0
}

TagRule

FieldTypeRequired
approvalTagApprovalModeyes
reasonstring or nullno
tagsarray of stringyes
{
  "approval": "auto",
  "reason": "string",
  "tags": [
    "string"
  ]
}

TagState

String enum: "pending" "approved" "rejected" "revoked"

"pending"

Traverser

FieldTypeRequired
attemptinteger (int32)yes
attemptsarray of Attempt or nullno
cancel_requestedbooleanyes
capabilitystringyes
created_atinteger (int64)yes
deadline_atinteger (int64) or nullno
errorany JSONno
finished_atinteger (int64) or nullno
idstringyes
idempotency_keystring or nullno
inputany JSONno
input_bytesinteger (int64) or nullno
input_truncatedboolean or nullno
kindstringyes
labelstringyes
max_attemptsinteger (int32)yes
operation_keystring or nullno
outputany JSONno
output_bytesinteger (int64) or nullno
parent_idstring or nullno
parent_step_idstring or nullno
principalstringyes
replaynull or ReplayInfono
root_idstringyes
seqinteger (int64)yes
session_idstring or nullno
started_atinteger (int64) or nullno
statusStatusyes
step_idstringyes
submitted_bystringyes
targetstringyes
timeout_secondsinteger (int64)yes
updated_atinteger (int64)yes
versionstringyes

Used by: cancelTraverser, getTraverser

{
  "attempt": 0,
  "attempts": [
    {
      "attempt": 0,
      "error": {},
      "finished_at": 0,
      "lease_expires_at": 0,
      "started_at": 0,
      "status": "string",
      "worker_id": "string"
    }
  ],
  "cancel_requested": false,
  "capability": "string",
  "created_at": 0,
  "deadline_at": 0,
  "error": {},
  "finished_at": 0,
  "id": "string",
  "idempotency_key": "string",
  "input": {},
  "input_bytes": 0,
  "input_truncated": false,
  "kind": "string",
  "label": "string",
  "max_attempts": 0,
  "operation_key": "string",
  "output": {},
  "output_bytes": 0,
  "parent_id": "string",
  "parent_step_id": "string",
  "principal": "string",
  "replay": {
    "reuse": "string",
    "reused_output": false,
    "source_id": "string"
  },
  "root_id": "string",
  "seq": 0,
  "session_id": "string",
  "started_at": 0,
  "status": "queued",
  "step_id": "string",
  "submitted_by": "string",
  "target": "string",
  "timeout_seconds": 0,
  "updated_at": 0,
  "version": "string"
}

TraverserList

FieldTypeRequired
itemsarray of Traverseryes
next_cursorstring or nullno

Used by: listTraversers

{
  "items": [
    {
      "attempt": 0,
      "attempts": [
        {
          "attempt": 0,
          "error": {},
          "finished_at": 0,
          "lease_expires_at": 0,
          "started_at": 0,
          "status": "string",
          "worker_id": "string"
        }
      ],
      "cancel_requested": false,
      "capability": "string",
      "created_at": 0,
      "deadline_at": 0,
      "error": {},
      "finished_at": 0,
      "id": "string",
      "idempotency_key": "string",
      "input": {},
      "input_bytes": 0,
      "input_truncated": false,
      "kind": "string",
      "label": "string",
      "max_attempts": 0,
      "operation_key": "string",
      "output": {},
      "output_bytes": 0,
      "parent_id": "string",
      "parent_step_id": "string",
      "principal": "string",
      "replay": {
        "reuse": "string",
        "reused_output": false,
        "source_id": "string"
      },
      "root_id": "string",
      "seq": 0,
      "session_id": "string",
      "started_at": 0,
      "status": "queued",
      "step_id": "string",
      "submitted_by": "string",
      "target": "string",
      "timeout_seconds": 0,
      "updated_at": 0,
      "version": "string"
    }
  ],
  "next_cursor": "string"
}

UsageEntry

One model or media call. `cost_usd` is only what the provider reported; omit it when unknown (the server keeps unknown distinct from zero).

FieldTypeRequired
cache_creation_tokensinteger (int64) or nullno
cache_read_tokensinteger (int64) or nullno
call_idstring or nullno
confidentboolean or nullno
cost_sourcestring or nullno
cost_usdnumber or nullno
extraobject of any JSON or nullno
fallbackstring or nullno
input_tokensinteger (int64) or nullno
modelstringyes
operationstring or nullno
output_tokensinteger (int64) or nullno
providerstring or nullno
sourcestring or nullno
total_tokensinteger (int64) or nullno
{
  "cache_creation_tokens": 0,
  "cache_read_tokens": 0,
  "call_id": "string",
  "confident": false,
  "cost_source": "string",
  "cost_usd": 0.0,
  "extra": {
    "key": {}
  },
  "fallback": "string",
  "input_tokens": 0,
  "model": "string",
  "operation": "string",
  "output_tokens": 0,
  "provider": "string",
  "source": "string",
  "total_tokens": 0
}

UsageGroup

One `group_by` bucket: the totals plus the bucket key.

FieldTypeRequired
cache_creation_tokensinteger (int64)yes
cache_read_tokensinteger (int64)yes
callsinteger (int64)yes
cost_completebooleanyes
cost_usdnumber or nullno
fallback_callsinteger (int64)yes
input_tokensinteger (int64)yes
keystringyes
output_tokensinteger (int64)yes
priced_callsinteger (int64)yes
total_tokensinteger (int64)yes
unconfident_callsinteger (int64)yes
unpriced_callsinteger (int64)yes
{
  "cache_creation_tokens": 0,
  "cache_read_tokens": 0,
  "calls": 0,
  "cost_complete": false,
  "cost_usd": 0.0,
  "fallback_calls": 0,
  "input_tokens": 0,
  "key": "string",
  "output_tokens": 0,
  "priced_calls": 0,
  "total_tokens": 0,
  "unconfident_calls": 0,
  "unpriced_calls": 0
}

UsageGrouping

Bucket key for usage totals. `none` returns the overall totals only.

String enum: "run" "model" "provider" "day" "attempt_status" "label" "principal" "capability" "none"

"run"

UsagePage

FieldTypeRequired
itemsarray of UsageRecordyes
next_cursorstring or nullno
root_idstringyes
traverser_idstringyes

Used by: listUsage

{
  "items": [
    {
      "attempt": 0,
      "attempt_status": "string",
      "cache_creation_tokens": 0,
      "cache_read_tokens": 0,
      "call_id": "string",
      "capability": "string",
      "confident": false,
      "cost_known": false,
      "cost_source": "string",
      "cost_usd": 0.0,
      "created_at": 0,
      "extra": {
        "key": {}
      },
      "fallback": "string",
      "id": "string",
      "input_tokens": 0,
      "label": "string",
      "model": "string",
      "operation": "string",
      "output_tokens": 0,
      "principal": "string",
      "provider": "string",
      "recorded_by": "string",
      "root_id": "string",
      "source": "string",
      "total_tokens": 0,
      "traverser_id": "string"
    }
  ],
  "next_cursor": "string",
  "root_id": "string",
  "traverser_id": "string"
}

UsageReceipt

FieldTypeRequired
attemptinteger (int64)yes
deduplicatedinteger (int64)yes
itemsarray of UsageReceiptItemyes
recordedinteger (int64)yes
root_idstringyes
totalsUsageTotalsyes
traverser_idstringyes

Used by: recordUsage

{
  "attempt": 0,
  "deduplicated": 0,
  "items": [
    {
      "call_id": "string",
      "deduplicated": false,
      "id": "string"
    }
  ],
  "recorded": 0,
  "root_id": "string",
  "totals": {
    "cache_creation_tokens": 0,
    "cache_read_tokens": 0,
    "calls": 0,
    "cost_complete": false,
    "cost_usd": 0.0,
    "fallback_calls": 0,
    "input_tokens": 0,
    "output_tokens": 0,
    "priced_calls": 0,
    "total_tokens": 0,
    "unconfident_calls": 0,
    "unpriced_calls": 0
  },
  "traverser_id": "string"
}

UsageReceiptItem

FieldTypeRequired
call_idstringyes
deduplicatedbooleanyes
idstringyes
{
  "call_id": "string",
  "deduplicated": false,
  "id": "string"
}

UsageRecord

A stored usage row. Rows of failed attempts are retained (the tokens were consumed) and identified by `attempt` and `attempt_status`.

FieldTypeRequired
attemptinteger (int64)yes
attempt_statusstring or nullno
cache_creation_tokensinteger (int64)yes
cache_read_tokensinteger (int64)yes
call_idstringyes
capabilitystringyes
confidentboolean or nullno
cost_knownbooleanyes
cost_sourcestring or nullno
cost_usdnumber or nullno
created_atinteger (int64)yes
extraobject of any JSONyes
fallbackstring or nullno
idstringyes
input_tokensinteger (int64)yes
labelstringyes
modelstringyes
operationstringyes
output_tokensinteger (int64)yes
principalstringyes
providerstring or nullno
recorded_bystringyes
root_idstringyes
sourcestringyes
total_tokensinteger (int64)yes
traverser_idstringyes
{
  "attempt": 0,
  "attempt_status": "string",
  "cache_creation_tokens": 0,
  "cache_read_tokens": 0,
  "call_id": "string",
  "capability": "string",
  "confident": false,
  "cost_known": false,
  "cost_source": "string",
  "cost_usd": 0.0,
  "created_at": 0,
  "extra": {
    "key": {}
  },
  "fallback": "string",
  "id": "string",
  "input_tokens": 0,
  "label": "string",
  "model": "string",
  "operation": "string",
  "output_tokens": 0,
  "principal": "string",
  "provider": "string",
  "recorded_by": "string",
  "root_id": "string",
  "source": "string",
  "total_tokens": 0,
  "traverser_id": "string"
}

UsageRecordRequest

Worker write: `task_id` (or `step_id`) + `lease_token`. Admin backfill: `traverser_id` without a lease. Provide `entries` or a single `entry`.

FieldTypeRequired
entriesarray of UsageEntry or nullno
entrynull or UsageEntryno
lease_tokenstring or nullno
step_idstring or nullno
task_idstring or nullno
traverser_idstring or nullno

Used by: recordUsage

{
  "entries": [
    {
      "cache_creation_tokens": 0,
      "cache_read_tokens": 0,
      "call_id": "string",
      "confident": false,
      "cost_source": "string",
      "cost_usd": 0.0,
      "extra": {
        "key": {}
      },
      "fallback": "string",
      "input_tokens": 0,
      "model": "string",
      "operation": "string",
      "output_tokens": 0,
      "provider": "string",
      "source": "string",
      "total_tokens": 0
    }
  ],
  "entry": {
    "cache_creation_tokens": 0,
    "cache_read_tokens": 0,
    "call_id": "string",
    "confident": false,
    "cost_source": "string",
    "cost_usd": 0.0,
    "extra": {
      "key": {}
    },
    "fallback": "string",
    "input_tokens": 0,
    "model": "string",
    "operation": "string",
    "output_tokens": 0,
    "provider": "string",
    "source": "string",
    "total_tokens": 0
  },
  "lease_token": "string",
  "step_id": "string",
  "task_id": "string",
  "traverser_id": "string"
}

UsageReport

FieldTypeRequired
group_byUsageGroupingyes
groupsarray of UsageGroupyes
scannedinteger (int64)yes
scopeUsageScopeyes
totalsUsageTotalsyes
truncatedbooleanyes

Used by: usageTotals

{
  "group_by": "run",
  "groups": [
    {
      "cache_creation_tokens": 0,
      "cache_read_tokens": 0,
      "calls": 0,
      "cost_complete": false,
      "cost_usd": 0.0,
      "fallback_calls": 0,
      "input_tokens": 0,
      "key": "string",
      "output_tokens": 0,
      "priced_calls": 0,
      "total_tokens": 0,
      "unconfident_calls": 0,
      "unpriced_calls": 0
    }
  ],
  "scanned": 0,
  "scope": {
    "namespace": "string",
    "principal": "string",
    "root_id": "string",
    "since": 0,
    "until": 0
  },
  "totals": {
    "cache_creation_tokens": 0,
    "cache_read_tokens": 0,
    "calls": 0,
    "cost_complete": false,
    "cost_usd": 0.0,
    "fallback_calls": 0,
    "input_tokens": 0,
    "output_tokens": 0,
    "priced_calls": 0,
    "total_tokens": 0,
    "unconfident_calls": 0,
    "unpriced_calls": 0
  },
  "truncated": false
}

UsageScope

FieldTypeRequired
namespacestringyes
principalstring or nullno
root_idstring or nullno
sinceinteger (int64)yes
untilinteger (int64) or nullno
{
  "namespace": "string",
  "principal": "string",
  "root_id": "string",
  "since": 0,
  "until": 0
}

UsageTotals

Aggregate of usage rows. `cost_usd` is null unless at least one call was priced; `cost_complete` is true only when every call was.

FieldTypeRequired
cache_creation_tokensinteger (int64)yes
cache_read_tokensinteger (int64)yes
callsinteger (int64)yes
cost_completebooleanyes
cost_usdnumber or nullno
fallback_callsinteger (int64)yes
input_tokensinteger (int64)yes
output_tokensinteger (int64)yes
priced_callsinteger (int64)yes
total_tokensinteger (int64)yes
unconfident_callsinteger (int64)yes
unpriced_callsinteger (int64)yes
{
  "cache_creation_tokens": 0,
  "cache_read_tokens": 0,
  "calls": 0,
  "cost_complete": false,
  "cost_usd": 0.0,
  "fallback_calls": 0,
  "input_tokens": 0,
  "output_tokens": 0,
  "priced_calls": 0,
  "total_tokens": 0,
  "unconfident_calls": 0,
  "unpriced_calls": 0
}

VectorSearchStrategy

Search execution strategy. `linear` scans exact source vectors; `hnsw` combines PostgreSQL index candidates with any not-yet-backfilled source rows.

String enum: "linear" "hnsw"

"linear"

VerifiableCredential

W3C VC 1.1 document exactly as signed. `credentialSubject` is the issued subject (typed per credential kind by the issuer).

FieldTypeRequired
@contextarray of stringyes
credentialSubjectany JSONyes
expirationDatestring or nullno
idstringyes
issuanceDatestringyes
issuerstringyes
proofDataIntegrityProofyes
typearray of stringyes
{
  "@context": [
    "string"
  ],
  "credentialSubject": {},
  "expirationDate": "string",
  "id": "string",
  "issuanceDate": "string",
  "issuer": "string",
  "proof": {
    "created": "string",
    "cryptosuite": "string",
    "proofPurpose": "string",
    "proofValue": "string",
    "type": "string",
    "verificationMethod": "string"
  },
  "type": [
    "string"
  ]
}

VerificationCheck

FieldTypeRequired
detailstring or nullno
namestringyes
okbooleanyes
{
  "detail": "string",
  "name": "string",
  "ok": false
}

VerificationMethod

FieldTypeRequired
controllerstringyes
idstringyes
publicKeyJwknull or Jwkno
publicKeyMultibasestringyes
typestringyes
{
  "controller": "string",
  "id": "string",
  "publicKeyJwk": {
    "crv": "string",
    "kty": "string",
    "x": "string"
  },
  "publicKeyMultibase": "string",
  "type": "string"
}

VerifyProof

FieldTypeRequired
proofPathProofyes

Used by: verifyProof

{
  "proof": {
    "algorithm": "string",
    "id": "string",
    "key_id": "string",
    "public_key": "string",
    "sha256": "string",
    "signature": "string",
    "signed": {
      "format": "string",
      "key_id": "string",
      "namespace": "string",
      "path": {
        "id": "string",
        "items": [
          {}
        ],
        "root_id": "string",
        "steps_returned": 0,
        "steps_total": 0,
        "truncated": false
      },
      "signed_at": 0
    }
  }
}

WebhookDelivery

FieldTypeRequired
attemptsinteger (int64)yes
created_atinteger (int64)yes
delivered_atinteger (int64) or nullno
event_typeObservabilityEventTypeyes
idstringyes
last_errorstring or nullno
last_statusinteger (int64) or nullno
statusstringyes
updated_atinteger (int64)yes
{
  "attempts": 0,
  "created_at": 0,
  "delivered_at": 0,
  "event_type": "usage.recorded",
  "id": "string",
  "last_error": "string",
  "last_status": 0,
  "status": "string",
  "updated_at": 0
}

WebhookRedriven

Redrive outcome: `redriven` = `from_failed` + `from_abandoned_pending`, where a pending delivery quiet for longer than `abandoned_after_ms` counts as abandoned.

FieldTypeRequired
abandoned_after_msinteger (int64)yes
from_abandoned_pendinginteger (int64)yes
from_failedinteger (int64)yes
redriveninteger (int64)yes

Used by: redriveObservabilityWebhook

{
  "abandoned_after_ms": 0,
  "from_abandoned_pending": 0,
  "from_failed": 0,
  "redriven": 0
}

WebhookTestQueued

FieldTypeRequired
delivery_idstringyes
queuedbooleanyes

Used by: testObservabilityWebhook

{
  "delivery_id": "string",
  "queued": false
}

Worker

FieldTypeRequired
capacityinteger (int32)yes
labelstringyes
lease_secondsinteger (int64)yes
versionstringyes
worker_idstringyes

Used by: enrollWorker

{
  "capacity": 0,
  "label": "string",
  "lease_seconds": 0,
  "version": "string",
  "worker_id": "string"
}

WorkerId

FieldTypeRequired
worker_idstringyes

Used by: claimTask, drainWorker

{
  "worker_id": "string"
}

WorkerList

FieldTypeRequired
itemsarray of WorkerStatusyes
truncatedbooleanyes

Used by: listWorkers

{
  "items": [
    {
      "capacity": 0,
      "draining": false,
      "enrolled_at": 0,
      "expired_leases": 0,
      "id": "string",
      "label": "string",
      "last_seen_age_ms": 0,
      "last_seen_at": 0,
      "principal": "string",
      "state": "string",
      "tasks_in_flight": 0,
      "version": "string"
    }
  ],
  "truncated": false
}

WorkerStatus

One enrolled worker as the fleet read model reports it. Distinct from [`Worker`], which is the *enrolment response* — that carries `worker_id` and `lease_seconds` and answers "you are now enrolled". This answers "here is the state of the fleet".

FieldTypeRequired
capacityinteger (int64)yes
drainingbooleanyes
enrolled_atinteger (int64)yes
expired_leasesinteger (int64)yes
idstringyes
labelstringyes
last_seen_age_msinteger (int64)yes
last_seen_atinteger (int64)yes
principalstringyes
statestringyes
tasks_in_flightinteger (int64)yes
versionstringyes
{
  "capacity": 0,
  "draining": false,
  "enrolled_at": 0,
  "expired_leases": 0,
  "id": "string",
  "label": "string",
  "last_seen_age_ms": 0,
  "last_seen_at": 0,
  "principal": "string",
  "state": "string",
  "tasks_in_flight": 0,
  "version": "string"
}

WorkerTask

FieldTypeRequired
attemptinteger (int32)yes
capabilitystringyes
deadline_atinteger (int64)yes
emitternull or EmitterContextno
idstringyes
inputany JSONyes
kindstringyes
labelstringyes
lease_expires_atinteger (int64)yes
lease_tokenstringyes
max_attemptsinteger (int32)yes
namespacestringyes
parent_idstring or nullno
parent_step_idstring or nullno
principalstringyes
root_idstringyes
session_idstring or nullno
step_idstringyes
targetstringyes
timeout_secondsinteger (int64)yes
versionstringyes
{
  "attempt": 0,
  "capability": "string",
  "deadline_at": 0,
  "emitter": {
    "emitter_id": "string",
    "event_id": "string",
    "event_type": "string",
    "idempotency_key": "string",
    "managed_by": "string",
    "received_at": "string",
    "source": "string"
  },
  "id": "string",
  "input": {},
  "kind": "string",
  "label": "string",
  "lease_expires_at": 0,
  "lease_token": "string",
  "max_attempts": 0,
  "namespace": "string",
  "parent_id": "string",
  "parent_step_id": "string",
  "principal": "string",
  "root_id": "string",
  "session_id": "string",
  "step_id": "string",
  "target": "string",
  "timeout_seconds": 0,
  "version": "string"
}
ATFGraph documentationHosted workflow · Framework reference