MCPcopy Index your code
hub / github.com/simstudioai/sim / checkWorkspaceAccess

Function checkWorkspaceAccess

apps/sim/lib/workspaces/permissions/utils.ts:139–155  ·  view source on GitHub ↗
(
  workspaceId: string,
  userId: string
)

Source from the content-addressed store, hash-verified

137 * @returns WorkspaceAccess object with exists, hasAccess, canWrite, and workspace data
138 */
139export async function checkWorkspaceAccess(
140 workspaceId: string,
141 userId: string
142): Promise<WorkspaceAccess> {
143 const ws = await getWorkspaceWithOwner(workspaceId)
144
145 if (!ws) {
146 return { exists: false, hasAccess: false, canWrite: false, canAdmin: false, workspace: null }
147 }
148
149 const permission = await getEffectiveWorkspacePermission(userId, ws)
150 const hasAccess = permission !== null
151 const canWrite = permissionSatisfies(permission, 'write')
152 const canAdmin = permissionSatisfies(permission, 'admin')
153
154 return { exists: true, hasAccess, canWrite, canAdmin, workspace: ws }
155}
156
157/**
158 * Thrown when a user attempts to access a workspace they don't have access to,

Callers 15

listLogsFunction · 0.90
fetchLogDetailFunction · 0.90
utils.test.tsFile · 0.90
requireWorkspaceFunction · 0.90
ensureWorkspaceAccessFunction · 0.90
executeFunction · 0.90
executeFunction · 0.90
authorizeCopilotChatRowFunction · 0.90
validateSelectorIdsFunction · 0.90
userCanAccessWorkspaceFunction · 0.90

Calls 3

getWorkspaceWithOwnerFunction · 0.85
permissionSatisfiesFunction · 0.85

Tested by

no test coverage detected