Update Component

Catalog prerequisites

This operates on the database-backed component catalog configured on AgentOS, not on the in-code agents, teams or workflows lists. It requires a supported synchronous BaseDb adapter with component methods.

Published components can be readable across scoped owners, while writes remain owner-scoped; a visible foreign or shared row can still reject a write with 403. Draft versions require preview access. Saving configuration does not validate model credentials, run tools or deploy a service.

Update stored metadata

For example, update the name only if the current published version is still 1:

{"name": "Updated Agent", "guard": {"current_version": 1}}

The guard is optional; use the actual expected pointer. current_version=0 inside the guard means no current published version. Stale guards return 409; a non-null guard.latest_version returns 400. Boolean guard values are invalid.

Setting the top-level current_version selects an existing published configuration. Draft targets return 400, missing targets 404, and dependency conflicts 409. Optional fields supplied as null are ignored by the current handler rather than clearing stored metadata.

PATCH/components/{component_id}

Partially update a component by ID.

Authorization

HTTPBearer
AuthorizationBearer <token>

In: header

Path Parameters

component_id*Component Id

Component ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Component fields to update

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl --request PATCH 'https://example.com/components/string' \  --header 'Content-Type: application/json' \  --data-raw '{}'
{  "component_id": "string",  "component_type": "agent",  "name": "string",  "user_id": "string",  "description": "string",  "current_version": 0,  "metadata": {},  "created_at": 0,  "updated_at": 0,  "deleted_at": 0}