Confluye
Endpoints

Settings

Workspace preferences, members, and related admin HTTP APIs.

v1 settings currently expose preferences only. Members and the current workspace use /api/v1/workspace-members and /api/v1/workspaces. Session routes cover Git repository and Agent Runtime rollout. See Workspace settings.

Preferences

MethodPathAuth
GET, PATCH/api/v1/settings/preferencesBearer API key (any scope)
GET, PATCH/api/settings/preferencesSession

v1 401: { "error": "Valid bearer API key is required" }. Success: { preference }.

PATCH JSON (all optional): theme (system | light | dark), autoConnectOnDrop, canvasErrorNotifications, canvasViewport { x, y, zoom }, snapToGrid (off | small | large), showCanvasControls, allowTelemetry, chatAiProvider (openai | anthropic | google | local:claude-code | local:codex), chatAiModel, liveTransports, workflowFolders, workflowFolderAssignments, chatFolders, chatFolderAssignments.

agentRuntimeRollout is ignored here. Use PATCH /api/settings/agent-rollout (Admin/Owner) with { surface, mode } (surface: agentNode | copilot | home; mode: legacy | shadow | v2 or null).

Workspace and members

MethodPathNotes
GET/api/v1/workspaces{ workspace } for the key's workspace; 404 if missing
GET/api/v1/workspace-members{ members[] }; workspace key required
POST/api/v1/workspace-members{ email, role }; workspace key and Admin/Owner; 201 { member }

Invite role must be admin, member, or viewer. Empty email: 400. Non-admin invite on v1: 403 "Admin or Owner workspace role is required to invite members."

tRPC workspaceShell.workspaceMembers.invite does not enforce Admin/Owner — only membership.

Session-only settings

MethodPathRole
GET/api/settings/repositoryMember
PATCH, DELETE/api/settings/repositoryAdmin/Owner
GET, PATCH/api/settings/agent-rolloutGET member; PATCH Admin/Owner

Repository PATCH: { owner, repo, defaultBranch?, pathPrefix?, credentialId?, policy? }{ repository, repositoryAccess }. DELETE → { deleted: true\|false }.

Next steps