Skip to main content
POST
Grant access

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-]+$

Body

application/json
principal_type
enum<string>
required
Available options:
user,
group,
org,
agent
principal_id
string
required
Maximum string length: 128
role
enum<string>
required

owner is not grantable via this endpoint.

Available options:
admin,
editor,
reader

Response

Existing binding updated.

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