Team folders — viewing team files
Last updated: May 19, 2026
Team folders — viewing team files
Wevion's RBAC determines whose Creative Hub folders you can see. Super_admin and owner roles see all teammates' folders; other roles see own + explicitly shared. The toolbar Members switcher (visible to qualifying roles) switches the view. URL pattern: /creative-hub/:folderId?member=:memberId. Backed by getVisibleSessionIds() in creative-hub.helpers.ts.
Who is this for
PMs auditing team creative work. Admins onboarding new members. Anyone needing to see what a teammate uploaded or generated.
Who can see what
Role | Sees |
|---|---|
| All teammates' Creative Hub folders + files |
| All teammates' Creative Hub folders + files |
| Own folder + folders explicitly shared with admin role |
| Own folder + folders explicitly shared with manager role |
| Own folder + explicit shares |
| No Creative Hub access by default |
| Read-only on explicit shares |
canViewTeam flag (true for super_admin / owner) gates the Members switcher visibility.
How to switch view
If you have canViewTeam:
Top toolbar shows Members dropdown
Pick a teammate from the list
View flips to that member's root folder
URL becomes
/creative-hub/:rootFolderId?member=:memberId
You see the teammate's folders and files as they exist. Read-only by default (no edits to their files); your own action menus appear for files you co-own.
How RBAC is enforced
In code (apps/backend/src/services/creative-hub/creative-hub.helpers.ts):
getVisibleSessionIds(userId, teamId)returns the list of session IDs whose Creative Hub the current user can accessFor super_admin / owner: returns all session IDs in the team
For others: returns only
[userId]+ any explicitly granted shares
buildAllowedFolderIds(visibleSessionIds)resolves to Drive folder IDsFolder list / file list endpoints filter by these allowed IDs
Result: data isolation by default; team-wide access only for qualifying roles.
Shared work without team switcher
If you're not super_admin / owner but need to share specific work with a teammate:
Internally: use team-folder workflow (admin sets up shared workspace folder all members write to). Often manual coordination.
Externally via Drive: share the folder using
ch-105(Drive permissions) — works for any user role.
The Members switcher is for visibility audit by privileged roles, not for daily collaboration. For daily collab, use shared team folders.
Use cases
PM weekly review
PM (owner role) clicks through each mediabuyer's folder weekly: spot-check new uploads, AI-generated experiments, identify creative blockers.
Audit of departing employee
Before offboarding: super_admin views the departing member's folders, transfers or archives important assets.
Onboarding a new hire
Onboard a mediabuyer: super_admin browses team folders to find example campaigns + creative patterns to share with the new hire.
Compliance check
Owner periodically reviews team creative folders to ensure brand compliance + flag any non-approved assets.
Limits + caveats
No edit on teammate's files (read-only when viewing as super_admin / owner unless explicitly co-owner)
Members list paginated if team > 50 members
Switching is per-page-load — refreshing returns to own root unless URL has
?member=paramAudit log records view of teammate folders (action:
creative_team_folder_view) for accountability
Common issues
"Members switcher missing": your role lacks
canViewTeam(not super_admin / owner). This is by design."Teammate folder appears empty": they haven't uploaded yet, OR their
ensureUserFolder()hasn't fired yet (no upload has triggered root creation)."Can't open teammate's file": Wevion RBAC allows view, but Drive permission may not — direct Drive open requires explicit Drive share (see ch-105).
"View not switching": stale URL param; click another teammate then click back, OR clear URL
?member=param and re-pick.
Related
Creative permissions — full RBAC model
Role hierarchy — what each role can do globally
Share external — Drive permissions for true cross-user access