Skip to content

Extensions

CompozyOS Extensions HTTP endpoints.

For people running agent work32 pages in this section
GET
/api/extensions

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Profile whose effective extension state is returned

Response Body

OK

application/json
  1. response
extensions*array<>
curl -X GET "https://example.com/api/extensions"
{  "extensions": [    {      "bound_env_keys": [        "string"      ],      "capabilities": [        "string"      ],      "consecutive_failures": 0,      "contents": {        "agents": 0,        "hooks": 0,        "loops": 0,        "mcp_servers": 0,        "skills": 0      },      "daemon_running": true,      "declared_profiles": [        {          "created_by_extension": true,          "credential_requirements": [            {              "missing": true,              "provider": "string",              "slot": "string",              "source_extension": "string"            }          ],          "exists": true,          "name": "string",          "needs_setup": true        }      ],      "description": "string",      "dev": true,      "diagnostics": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ],      "digest_matched": true,      "dormant_placements": [        {          "create_action": "string",          "dormant": true,          "kind": "string",          "profile": "string",          "resource": "string"        }      ],      "enabled": true,      "failure_code": "string",      "format": "string",      "gateway_confirmation_required": true,      "gateway_requirement_digest": "string",      "generation_hash": "string",      "health": "string",      "health_message": "string",      "inputs": [        {          "active": true,          "id": "string",          "set": true,          "type": "string"        }      ],      "installation_profile": "string",      "last_error": "string",      "layout": "string",      "marketplace": {        "author": "string",        "description": "string",        "digest_sha256": "string",        "entry_id": "string",        "format": "string",        "icon": "string",        "install_blocker": "string",        "install_slug": "string",        "installable": true,        "installed": true,        "installed_name": "string",        "installed_version": "string",        "layout": "string",        "manage_path": "string",        "name": "string",        "name_conflict": {          "entry_id": "string",          "source": "string",          "source_ref": "string"        },        "published_at": "2019-08-24T14:15:22Z",        "source": "string",        "source_ref": "string",        "tier": "string",        "trust": {          "allow_unverified": true,          "checksum_verified": true,          "decision": "string",          "registry_tier": "string",          "warnings": [            {              "category": "string",              "code": "string",              "data_freshness": "string",              "doc_url": "string",              "evidence": {                "property1": null,                "property2": null              },              "id": "string",              "message": "string",              "severity": "string",              "suggested_command": "string",              "title": "string"            }          ]        },        "update_available": true,        "updated_at": "2019-08-24T14:15:22Z",        "version": "string"      },      "mcp_servers": [        {          "auth": {            "issuer_url": "string",            "method": "string",            "registration": "string",            "scopes": [              "string"            ]          },          "launch": "string",          "name": "string",          "owner": "string",          "profile": "string",          "runtime_name": "string",          "scope": "string",          "status": "string",          "transport": "string",          "workspace_id": "string"        }      ],      "missing_env": [        "string"      ],      "missing_inputs": [        "string"      ],      "name": "string",      "origin": {        "entry_id": "string",        "source": "string",        "source_ref": "string"      },      "origin_path": "string",      "overrides_published": true,      "permissions": [        "string"      ],      "pid": 0,      "placements": [        {          "create_action": "string",          "dormant": true,          "kind": "string",          "profile": "string",          "resource": "string"        }      ],      "profile": "string",      "provenance": {        "allow_unverified": true,        "archive_digest_sha256": "string",        "catalog_entry_id": "string",        "checksum_sha256": "string",        "checksum_verified": true,        "digest_matched": true,        "entry_id": "string",        "installed_at": "2019-08-24T14:15:22Z",        "installed_by": "string",        "installed_from": "string",        "layout": "string",        "permissions": [          "string"        ],        "registry_tier": "string",        "resolved_ref": "string",        "slug": "string",        "source_name": "string",        "source_ref": "string",        "source_url": "string",        "trust": {          "allow_unverified": true,          "checksum_verified": true,          "decision": "string",          "registry_tier": "string",          "warnings": [            {              "category": "string",              "code": "string",              "data_freshness": "string",              "doc_url": "string",              "evidence": {                "property1": null,                "property2": null              },              "id": "string",              "message": "string",              "severity": "string",              "suggested_command": "string",              "title": "string"            }          ]        },        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "remote_version": "string",      "requires_env": [        "string"      ],      "restart_backoff_ms": 0,      "source": "string",      "state": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "type": "string",      "update_available": true,      "uptime_seconds": 0,      "version": "string",      "workspace_id": "string"    }  ]}
POST
/api/extensions

Query Parameters

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
allow_unverified?boolean
asset?string
confirm_gateway_digest?string
expected_digest?string
Match^[a-fA-F0-9]{64}$
inputs?
profile?string

Profile name. Omitted for a local operator keeps the installation available to all profiles.

ref*string
scope?string

Overrides manifest server defaults. Mixed defaults require an explicit scope. A workspace default requires a workspace-bound caller or workspace_id.

Value in"global""workspace"
source*string

Use marketplace for a registered plugin source and include the listed expected_digest.

Value in"curated""marketplace""github""git""local_path"
version?string
workspace_id?string

Registered workspace ID. Required for workspace scope unless the caller is already workspace-bound.

Response Body

Created

application/json
  1. response
extension*
curl -X POST "https://example.com/api/extensions" \  -H "Content-Type: application/json" \  -d '{    "ref": "string",    "source": "curated"  }'
{  "extension": {    "bound_env_keys": [      "string"    ],    "capabilities": [      "string"    ],    "consecutive_failures": 0,    "contents": {      "agents": 0,      "hooks": 0,      "loops": 0,      "mcp_servers": 0,      "skills": 0    },    "daemon_running": true,    "declared_profiles": [      {        "created_by_extension": true,        "credential_requirements": [          {            "missing": true,            "provider": "string",            "slot": "string",            "source_extension": "string"          }        ],        "exists": true,        "name": "string",        "needs_setup": true      }    ],    "description": "string",    "dev": true,    "diagnostics": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ],    "digest_matched": true,    "dormant_placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "enabled": true,    "failure_code": "string",    "format": "string",    "gateway_confirmation_required": true,    "gateway_requirement_digest": "string",    "generation_hash": "string",    "health": "string",    "health_message": "string",    "inputs": [      {        "active": true,        "id": "string",        "set": true,        "type": "string"      }    ],    "installation_profile": "string",    "last_error": "string",    "layout": "string",    "marketplace": {      "author": "string",      "description": "string",      "digest_sha256": "string",      "entry_id": "string",      "format": "string",      "icon": "string",      "install_blocker": "string",      "install_slug": "string",      "installable": true,      "installed": true,      "installed_name": "string",      "installed_version": "string",      "layout": "string",      "manage_path": "string",      "name": "string",      "name_conflict": {        "entry_id": "string",        "source": "string",        "source_ref": "string"      },      "published_at": "2019-08-24T14:15:22Z",      "source": "string",      "source_ref": "string",      "tier": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "update_available": true,      "updated_at": "2019-08-24T14:15:22Z",      "version": "string"    },    "mcp_servers": [      {        "auth": {          "issuer_url": "string",          "method": "string",          "registration": "string",          "scopes": [            "string"          ]        },        "launch": "string",        "name": "string",        "owner": "string",        "profile": "string",        "runtime_name": "string",        "scope": "string",        "status": "string",        "transport": "string",        "workspace_id": "string"      }    ],    "missing_env": [      "string"    ],    "missing_inputs": [      "string"    ],    "name": "string",    "origin": {      "entry_id": "string",      "source": "string",      "source_ref": "string"    },    "origin_path": "string",    "overrides_published": true,    "permissions": [      "string"    ],    "pid": 0,    "placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "profile": "string",    "provenance": {      "allow_unverified": true,      "archive_digest_sha256": "string",      "catalog_entry_id": "string",      "checksum_sha256": "string",      "checksum_verified": true,      "digest_matched": true,      "entry_id": "string",      "installed_at": "2019-08-24T14:15:22Z",      "installed_by": "string",      "installed_from": "string",      "layout": "string",      "permissions": [        "string"      ],      "registry_tier": "string",      "resolved_ref": "string",      "slug": "string",      "source_name": "string",      "source_ref": "string",      "source_url": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "remote_version": "string",    "requires_env": [      "string"    ],    "restart_backoff_ms": 0,    "source": "string",    "state": "string",    "trust": {      "allow_unverified": true,      "checksum_verified": true,      "decision": "string",      "registry_tier": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "type": "string",    "update_available": true,    "uptime_seconds": 0,    "version": "string",    "workspace_id": "string"  }}
GET
/api/extensions/commands

Query Parameters

extension?string

Filter by exact extension name

workspace?string

Operator workspace reference; agent callers use trusted session scope

profile?string

Read one profile's rows by name

all_profiles?boolean

Read the owner-labeled all-profiles aggregate

Response Body

OK

application/json
  1. response
commands*array<>
groups*array<>
curl -X GET "https://example.com/api/extensions/commands"
{  "commands": [    {      "approval_required": true,      "example": "string",      "extension": "string",      "flags": [        {          "default": null,          "enum": [            "string"          ],          "field": "string",          "maximum": 0,          "minimum": 0,          "name": "string",          "nullable": true,          "repeatable": true,          "required": true,          "type": "string"        }      ],      "risk_class": "read",      "summary": "string",      "tool_id": "string",      "verb": "string"    }  ],  "groups": [    {      "extension": "string",      "path": "string",      "summary": "string"    }  ]}
POST
/api/extensions/dev

Query Parameters

workspace?string

Operator workspace reference; agent callers use trusted session scope

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
confirm_gateway_digest?string
generation_hash*string
origin_path*string

Response Body

Created

application/json
  1. response
extension*
curl -X POST "https://example.com/api/extensions/dev" \  -H "Content-Type: application/json" \  -d '{    "generation_hash": "string",    "origin_path": "string"  }'
{  "extension": {    "bound_env_keys": [      "string"    ],    "capabilities": [      "string"    ],    "consecutive_failures": 0,    "contents": {      "agents": 0,      "hooks": 0,      "loops": 0,      "mcp_servers": 0,      "skills": 0    },    "daemon_running": true,    "declared_profiles": [      {        "created_by_extension": true,        "credential_requirements": [          {            "missing": true,            "provider": "string",            "slot": "string",            "source_extension": "string"          }        ],        "exists": true,        "name": "string",        "needs_setup": true      }    ],    "description": "string",    "dev": true,    "diagnostics": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ],    "digest_matched": true,    "dormant_placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "enabled": true,    "failure_code": "string",    "format": "string",    "gateway_confirmation_required": true,    "gateway_requirement_digest": "string",    "generation_hash": "string",    "health": "string",    "health_message": "string",    "inputs": [      {        "active": true,        "id": "string",        "set": true,        "type": "string"      }    ],    "installation_profile": "string",    "last_error": "string",    "layout": "string",    "marketplace": {      "author": "string",      "description": "string",      "digest_sha256": "string",      "entry_id": "string",      "format": "string",      "icon": "string",      "install_blocker": "string",      "install_slug": "string",      "installable": true,      "installed": true,      "installed_name": "string",      "installed_version": "string",      "layout": "string",      "manage_path": "string",      "name": "string",      "name_conflict": {        "entry_id": "string",        "source": "string",        "source_ref": "string"      },      "published_at": "2019-08-24T14:15:22Z",      "source": "string",      "source_ref": "string",      "tier": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "update_available": true,      "updated_at": "2019-08-24T14:15:22Z",      "version": "string"    },    "mcp_servers": [      {        "auth": {          "issuer_url": "string",          "method": "string",          "registration": "string",          "scopes": [            "string"          ]        },        "launch": "string",        "name": "string",        "owner": "string",        "profile": "string",        "runtime_name": "string",        "scope": "string",        "status": "string",        "transport": "string",        "workspace_id": "string"      }    ],    "missing_env": [      "string"    ],    "missing_inputs": [      "string"    ],    "name": "string",    "origin": {      "entry_id": "string",      "source": "string",      "source_ref": "string"    },    "origin_path": "string",    "overrides_published": true,    "permissions": [      "string"    ],    "pid": 0,    "placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "profile": "string",    "provenance": {      "allow_unverified": true,      "archive_digest_sha256": "string",      "catalog_entry_id": "string",      "checksum_sha256": "string",      "checksum_verified": true,      "digest_matched": true,      "entry_id": "string",      "installed_at": "2019-08-24T14:15:22Z",      "installed_by": "string",      "installed_from": "string",      "layout": "string",      "permissions": [        "string"      ],      "registry_tier": "string",      "resolved_ref": "string",      "slug": "string",      "source_name": "string",      "source_ref": "string",      "source_url": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "remote_version": "string",    "requires_env": [      "string"    ],    "restart_backoff_ms": 0,    "source": "string",    "state": "string",    "trust": {      "allow_unverified": true,      "checksum_verified": true,      "decision": "string",      "registry_tier": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "type": "string",    "update_available": true,    "uptime_seconds": 0,    "version": "string",    "workspace_id": "string"  }}
POST
/api/extensions/preview-install

Query Parameters

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
allow_unverified?boolean
asset?string
confirm_gateway_digest?string
expected_digest?string
Match^[a-fA-F0-9]{64}$
inputs?
profile?string

Profile name. Omitted for a local operator keeps the installation available to all profiles.

ref*string
scope?string

Overrides manifest server defaults. Mixed defaults require an explicit scope. A workspace default requires a workspace-bound caller or workspace_id.

Value in"global""workspace"
source*string

Use marketplace for a registered plugin source and include the listed expected_digest.

Value in"curated""marketplace""github""git""local_path"
version?string
workspace_id?string

Registered workspace ID. Required for workspace scope unless the caller is already workspace-bound.

Response Body

OK

application/json
  1. response
declared_profiles*array<>
digest_sha256?string
gateway_requirement_digest?string
inputs*array<>
name*string
placements*array<>
curl -X POST "https://example.com/api/extensions/preview-install" \  -H "Content-Type: application/json" \  -d '{    "ref": "string",    "source": "curated"  }'
{  "declared_profiles": [    {      "create": true,      "credentials": [        {          "missing": true,          "provider": "string",          "slot": "string",          "source_extension": "string"        }      ],      "name": "string"    }  ],  "digest_sha256": "string",  "gateway_requirement_digest": "string",  "inputs": [    {      "binding": {        "name": "string",        "type": "string"      },      "default": null,      "id": "string",      "prompt": "string",      "required": true,      "type": "string"    }  ],  "name": "string",  "placements": [    {      "create_action": "string",      "dormant": true,      "kind": "string",      "profile": "string",      "resource": "string"    }  ]}
POST
/api/extensions/update

Query Parameters

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
all?boolean
allow_unverified?boolean
check_only?boolean
inputs?
names?array<string>
profile?string

Profile name for input validation and persistence. Inputs do not cross profile boundaries.

scope?string

Select an existing installation; updates preserve every package attachment.

Value in"global""workspace"
version?string
workspace_id?string

Response Body

Per-extension outcomes, including partial failures

application/json
  1. response
updates*array<>
curl -X POST "https://example.com/api/extensions/update" \  -H "Content-Type: application/json" \  -d '{}'
{  "updates": [    {      "current_version": "string",      "error": {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      },      "latest_version": "string",      "name": "string",      "path": "string",      "registry": "string",      "slug": "string",      "status": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    }  ]}
GET
/api/extensions/{name}

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Profile whose effective extension state is returned

Response Body

OK

application/json
  1. response
extension*
curl -X GET "https://example.com/api/extensions/string"
{  "extension": {    "bound_env_keys": [      "string"    ],    "capabilities": [      "string"    ],    "consecutive_failures": 0,    "contents": {      "agents": 0,      "hooks": 0,      "loops": 0,      "mcp_servers": 0,      "skills": 0    },    "daemon_running": true,    "declared_profiles": [      {        "created_by_extension": true,        "credential_requirements": [          {            "missing": true,            "provider": "string",            "slot": "string",            "source_extension": "string"          }        ],        "exists": true,        "name": "string",        "needs_setup": true      }    ],    "description": "string",    "dev": true,    "diagnostics": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ],    "digest_matched": true,    "dormant_placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "enabled": true,    "failure_code": "string",    "format": "string",    "gateway_confirmation_required": true,    "gateway_requirement_digest": "string",    "generation_hash": "string",    "health": "string",    "health_message": "string",    "inputs": [      {        "active": true,        "id": "string",        "set": true,        "type": "string"      }    ],    "installation_profile": "string",    "last_error": "string",    "layout": "string",    "marketplace": {      "author": "string",      "description": "string",      "digest_sha256": "string",      "entry_id": "string",      "format": "string",      "icon": "string",      "install_blocker": "string",      "install_slug": "string",      "installable": true,      "installed": true,      "installed_name": "string",      "installed_version": "string",      "layout": "string",      "manage_path": "string",      "name": "string",      "name_conflict": {        "entry_id": "string",        "source": "string",        "source_ref": "string"      },      "published_at": "2019-08-24T14:15:22Z",      "source": "string",      "source_ref": "string",      "tier": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "update_available": true,      "updated_at": "2019-08-24T14:15:22Z",      "version": "string"    },    "mcp_servers": [      {        "auth": {          "issuer_url": "string",          "method": "string",          "registration": "string",          "scopes": [            "string"          ]        },        "launch": "string",        "name": "string",        "owner": "string",        "profile": "string",        "runtime_name": "string",        "scope": "string",        "status": "string",        "transport": "string",        "workspace_id": "string"      }    ],    "missing_env": [      "string"    ],    "missing_inputs": [      "string"    ],    "name": "string",    "origin": {      "entry_id": "string",      "source": "string",      "source_ref": "string"    },    "origin_path": "string",    "overrides_published": true,    "permissions": [      "string"    ],    "pid": 0,    "placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "profile": "string",    "provenance": {      "allow_unverified": true,      "archive_digest_sha256": "string",      "catalog_entry_id": "string",      "checksum_sha256": "string",      "checksum_verified": true,      "digest_matched": true,      "entry_id": "string",      "installed_at": "2019-08-24T14:15:22Z",      "installed_by": "string",      "installed_from": "string",      "layout": "string",      "permissions": [        "string"      ],      "registry_tier": "string",      "resolved_ref": "string",      "slug": "string",      "source_name": "string",      "source_ref": "string",      "source_url": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "remote_version": "string",    "requires_env": [      "string"    ],    "restart_backoff_ms": 0,    "source": "string",    "state": "string",    "trust": {      "allow_unverified": true,      "checksum_verified": true,      "decision": "string",      "registry_tier": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "type": "string",    "update_available": true,    "uptime_seconds": 0,    "version": "string",    "workspace_id": "string"  }}
DELETE
/api/extensions/{name}

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Act as this profile by name

Response Body

OK

application/json
  1. response
extension*
curl -X DELETE "https://example.com/api/extensions/string"
{  "extension": {    "data_path": "string",    "name": "string",    "path": "string",    "quarantine_path": "string",    "status": "string",    "warnings": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ]  }}
PUT
/api/extensions/{name}

Path Parameters

name*string

Extension name

Query Parameters

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
allow_unverified?boolean
check_only?boolean
confirm_gateway_digest?string
inputs?
profile?string

Profile name for input validation and persistence. Inputs do not cross profile boundaries.

scope?string

Select an existing installation; updates preserve every package attachment.

Value in"global""workspace"
version?string
workspace_id?string

Response Body

OK

application/json
  1. response
update*
curl -X PUT "https://example.com/api/extensions/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "update": {    "current_version": "string",    "error": {      "category": "string",      "code": "string",      "data_freshness": "string",      "doc_url": "string",      "evidence": {        "property1": null,        "property2": null      },      "id": "string",      "message": "string",      "severity": "string",      "suggested_command": "string",      "title": "string"    },    "latest_version": "string",    "name": "string",    "path": "string",    "registry": "string",    "slug": "string",    "status": "string",    "warnings": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ]  }}
GET
/api/extensions/{name}/enablement

Path Parameters

name*string

Extension name

Query Parameters

profile?string

Read one profile's rows by name

all_profiles?boolean

Read the owner-labeled all-profiles aggregate

Response Body

OK

application/json
  1. response
[index: integer]?
curl -X GET "https://example.com/api/extensions/string/enablement"
[  {    "enabled": true,    "profile": "string"  }]
PUT
/api/extensions/{name}/enablement

Path Parameters

name*string

Extension name

Query Parameters

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
enabled*boolean
profile*string

Response Body

OK

application/json
  1. response
enabled*boolean
profile*string
curl -X PUT "https://example.com/api/extensions/string/enablement" \  -H "Content-Type: application/json" \  -d '{    "enabled": true,    "profile": "string"  }'
{  "enabled": true,  "profile": "string"}
GET
/api/extensions/{name}/inventory

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Profile whose effective extension state is returned

Response Body

OK

application/json
  1. response
diagnostics?array<>
enabled*boolean
extension*string
format*string
items*array<>
curl -X GET "https://example.com/api/extensions/string/inventory"
{  "diagnostics": [    {      "category": "string",      "code": "string",      "data_freshness": "string",      "doc_url": "string",      "evidence": {        "property1": null,        "property2": null      },      "id": "string",      "message": "string",      "severity": "string",      "suggested_command": "string",      "title": "string"    }  ],  "enabled": true,  "extension": "string",  "format": "string",  "items": [    {      "id": "string",      "kind": "string",      "live": true,      "name": "string"    }  ]}
GET
/api/extensions/{name}/logs

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Profile name; omit for the default profile

follow?string

Stream extension_log deltas and atomic extension_log_reset snapshots

after?string

Return entries after this sequence within stream_epoch

stream_epoch?string

Opaque ring identity; required when after is greater than zero

Response Body

OK

application/json
  1. response
logs*array<>
stream_epoch*string
curl -X GET "https://example.com/api/extensions/string/logs"
{  "logs": [    {      "generation_hash": "string",      "message": "string",      "sequence": 0,      "stream_epoch": "string",      "timestamp": "2019-08-24T14:15:22Z"    }  ],  "stream_epoch": "string"}
GET
/api/extensions/{name}/preview

Path Parameters

name*string

Extension name

Query Parameters

profile?string

Read one profile's rows by name

all_profiles?boolean

Read the owner-labeled all-profiles aggregate

Response Body

OK

application/json
  1. response
agent_conflicts*array<string>
automation_starting*array<string>
changes*array<>
extension*string
gateway_confirmation_required*boolean
gateway_requirement_digest*string
missing_env*array<string>
missing_inputs*array<string>
curl -X GET "https://example.com/api/extensions/string/preview"
{  "agent_conflicts": [    "string"  ],  "automation_starting": [    "string"  ],  "changes": [    {      "change": "string",      "id": "string",      "kind": "string",      "name": "string"    }  ],  "extension": "string",  "gateway_confirmation_required": true,  "gateway_requirement_digest": "string",  "missing_env": [    "string"  ],  "missing_inputs": [    "string"  ]}
GET
/api/extensions/{name}/provenance

Path Parameters

name*string

Extension name

Query Parameters

profile?string

Read one profile's rows by name

all_profiles?boolean

Read the owner-labeled all-profiles aggregate

Response Body

OK

application/json
  1. response
provenance*
curl -X GET "https://example.com/api/extensions/string/provenance"
{  "provenance": {    "allow_unverified": true,    "archive_digest_sha256": "string",    "catalog_entry_id": "string",    "checksum_sha256": "string",    "checksum_verified": true,    "digest_matched": true,    "entry_id": "string",    "installed_at": "2019-08-24T14:15:22Z",    "installed_by": "string",    "installed_from": "string",    "layout": "string",    "permissions": [      "string"    ],    "registry_tier": "string",    "resolved_ref": "string",    "slug": "string",    "source_name": "string",    "source_ref": "string",    "source_url": "string",    "trust": {      "allow_unverified": true,      "checksum_verified": true,      "decision": "string",      "registry_tier": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "warnings": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ]  }}
POST
/api/extensions/{name}/reload

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; agent callers use trusted session scope

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
confirm_gateway_digest?string
generation_hash*string

Response Body

OK

application/json
  1. response
extension*
curl -X POST "https://example.com/api/extensions/string/reload" \  -H "Content-Type: application/json" \  -d '{    "generation_hash": "string"  }'
{  "extension": {    "bound_env_keys": [      "string"    ],    "capabilities": [      "string"    ],    "consecutive_failures": 0,    "contents": {      "agents": 0,      "hooks": 0,      "loops": 0,      "mcp_servers": 0,      "skills": 0    },    "daemon_running": true,    "declared_profiles": [      {        "created_by_extension": true,        "credential_requirements": [          {            "missing": true,            "provider": "string",            "slot": "string",            "source_extension": "string"          }        ],        "exists": true,        "name": "string",        "needs_setup": true      }    ],    "description": "string",    "dev": true,    "diagnostics": [      {        "category": "string",        "code": "string",        "data_freshness": "string",        "doc_url": "string",        "evidence": {          "property1": null,          "property2": null        },        "id": "string",        "message": "string",        "severity": "string",        "suggested_command": "string",        "title": "string"      }    ],    "digest_matched": true,    "dormant_placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "enabled": true,    "failure_code": "string",    "format": "string",    "gateway_confirmation_required": true,    "gateway_requirement_digest": "string",    "generation_hash": "string",    "health": "string",    "health_message": "string",    "inputs": [      {        "active": true,        "id": "string",        "set": true,        "type": "string"      }    ],    "installation_profile": "string",    "last_error": "string",    "layout": "string",    "marketplace": {      "author": "string",      "description": "string",      "digest_sha256": "string",      "entry_id": "string",      "format": "string",      "icon": "string",      "install_blocker": "string",      "install_slug": "string",      "installable": true,      "installed": true,      "installed_name": "string",      "installed_version": "string",      "layout": "string",      "manage_path": "string",      "name": "string",      "name_conflict": {        "entry_id": "string",        "source": "string",        "source_ref": "string"      },      "published_at": "2019-08-24T14:15:22Z",      "source": "string",      "source_ref": "string",      "tier": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "update_available": true,      "updated_at": "2019-08-24T14:15:22Z",      "version": "string"    },    "mcp_servers": [      {        "auth": {          "issuer_url": "string",          "method": "string",          "registration": "string",          "scopes": [            "string"          ]        },        "launch": "string",        "name": "string",        "owner": "string",        "profile": "string",        "runtime_name": "string",        "scope": "string",        "status": "string",        "transport": "string",        "workspace_id": "string"      }    ],    "missing_env": [      "string"    ],    "missing_inputs": [      "string"    ],    "name": "string",    "origin": {      "entry_id": "string",      "source": "string",      "source_ref": "string"    },    "origin_path": "string",    "overrides_published": true,    "permissions": [      "string"    ],    "pid": 0,    "placements": [      {        "create_action": "string",        "dormant": true,        "kind": "string",        "profile": "string",        "resource": "string"      }    ],    "profile": "string",    "provenance": {      "allow_unverified": true,      "archive_digest_sha256": "string",      "catalog_entry_id": "string",      "checksum_sha256": "string",      "checksum_verified": true,      "digest_matched": true,      "entry_id": "string",      "installed_at": "2019-08-24T14:15:22Z",      "installed_by": "string",      "installed_from": "string",      "layout": "string",      "permissions": [        "string"      ],      "registry_tier": "string",      "resolved_ref": "string",      "slug": "string",      "source_name": "string",      "source_ref": "string",      "source_url": "string",      "trust": {        "allow_unverified": true,        "checksum_verified": true,        "decision": "string",        "registry_tier": "string",        "warnings": [          {            "category": "string",            "code": "string",            "data_freshness": "string",            "doc_url": "string",            "evidence": {              "property1": null,              "property2": null            },            "id": "string",            "message": "string",            "severity": "string",            "suggested_command": "string",            "title": "string"          }        ]      },      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "remote_version": "string",    "requires_env": [      "string"    ],    "restart_backoff_ms": 0,    "source": "string",    "state": "string",    "trust": {      "allow_unverified": true,      "checksum_verified": true,      "decision": "string",      "registry_tier": "string",      "warnings": [        {          "category": "string",          "code": "string",          "data_freshness": "string",          "doc_url": "string",          "evidence": {            "property1": null,            "property2": null          },          "id": "string",          "message": "string",          "severity": "string",          "suggested_command": "string",          "title": "string"        }      ]    },    "type": "string",    "update_available": true,    "uptime_seconds": 0,    "version": "string",    "workspace_id": "string"  }}
GET
/api/extensions/{name}/secrets

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Read one profile's rows by name

all_profiles?boolean

Read the owner-labeled all-profiles aggregate

Response Body

OK

application/json
  1. response
bindings*array<>
bound_env_keys*array<string>
declared_env*array<string>
curl -X GET "https://example.com/api/extensions/string/secrets"
{  "bindings": [    {      "env_name": "string",      "header_name": "string",      "mcp_server": "string",      "stale": true    }  ],  "bound_env_keys": [    "string"  ],  "declared_env": [    "string"  ]}
PUT
/api/extensions/{name}/secrets

Path Parameters

name*string

Extension name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Act as this profile by name

Request Body

JSON request body

application/json
  1. body
bindings*array<>

Response Body

OK

application/json
  1. response
bindings*array<>
bound_env_keys*array<string>
declared_env*array<string>
curl -X PUT "https://example.com/api/extensions/string/secrets" \  -H "Content-Type: application/json" \  -d '{    "bindings": [      {        "env_name": "string"      }    ]  }'
{  "bindings": [    {      "env_name": "string",      "header_name": "string",      "mcp_server": "string",      "stale": true    }  ],  "bound_env_keys": [    "string"  ],  "declared_env": [    "string"  ]}
DELETE
/api/extensions/{name}/secrets/{env_name}

Path Parameters

name*string

Extension name

env_name*string

Declared environment name

Query Parameters

workspace?string

Operator workspace reference; omit for the global instance

profile?string

Act as this profile by name

Response Body

No Content

curl -X DELETE "https://example.com/api/extensions/string/secrets/string"
Empty