Skip to main content
PATCH
Change a principal's role

Authorizations

Authorization
string
header
required

User session JWT or instance API key (iak_*). Send as Authorization: Bearer <token>.

Path Parameters

knowledgeBaseId
string
required

Knowledge base id. Legacy physical prefix vs_ (the kb_ rename is deferred).

Maximum string length: 128
Pattern: ^vs_[A-Za-z0-9-]+$
principalType
enum<string>
required

Type of access principal. agent is a first-class owner principal for conversation/agent-owned knowledge bases (§F-6); principal_id is then the agent id (or its service-account id).

Available options:
user,
group,
org,
agent
principalId
string
required

Identifier of the principal. For user, the user id; for group and org, the group/org slug or id resolvable by the platform.

Maximum string length: 128

Body

application/json
role
enum<string>
required
Available options:
admin,
editor,
reader

Response

Updated binding.

Per-knowledge-base access binding, persisted in the platform-managed product_bindings store (storage owns no bindings collection). Principals: user, group, org, and agent - agent ownership is first-class (§F-6). The owner appears as an explicit role: owner binding; admin / editor / reader are grantable via the API (owner is not).

object
enum<string>
required
Available options:
knowledge_base.access_binding
knowledge_base_id
string
required
Pattern: ^vs_[A-Za-z0-9-]+$
principal_type
enum<string>
required
Available options:
user,
group,
org,
agent
principal_id
string
required
Maximum string length: 128
role
enum<string>
required
Available options:
owner,
admin,
editor,
reader
created_at
integer
required
email
string | null

Resolved at read time for user principals.

org_slug
string | null
granted_by
string | null
updated_at
integer