Appearance
External Users
File Information
- Path:
pages/_workspace_id/workspace-settings/external-user/list.vue - Route:
/:workspace_id/workspace-settings/external-user/list - Purpose: External user management and administration
Overview
The External Users page manages external users who have access to the workspace for limited purposes, such as uploading files or accessing shared assets. External users have restricted permissions compared to regular workspace users.
Key Features
External User List
- Display all external users
- User information (name, email)
- Access status
- Access expiration
- Upload permissions
Add External Users
- Invite external users by email
- Set access permissions
- Set access expiration
- Configure upload limits
User Management
- Edit user details
- Update access permissions
- Extend access expiration
- Revoke access
Access Control
- Upload-only access
- View-only access
- Shared asset access
- Folder-specific access
Request Management
- View access requests
- Approve/reject requests
- Request history
Components Used
- External user list components
- Invite external user dialog
- Access permission components
- Request management components
Data Properties
javascript
{
externalUsers: [], // List of external users
accessRequests: [], // Pending access requests
loading: false, // Loading state
saving: false, // Saving state
showInviteDialog: false // Invite dialog visibility
}Computed Properties
activeExternalUsers
Returns active external users
expiredUsers
Returns users with expired access
pendingRequests
Returns pending access requests
Methods
loadExternalUsers()
Loads external users:
- Fetches external users from API
- Updates user list
- Handles errors
inviteExternalUser(userData)
Invites external user:
- Validates user data
- Sets access permissions
- Sends invitation via API
- Refreshes user list
- Shows success message
updateAccess(userId, accessData)
Updates user access:
- Validates access data
- Updates access via API
- Refreshes user list
- Shows success message
revokeAccess(userId)
Revokes user access:
- Confirms revocation
- Revokes access via API
- Refreshes user list
- Shows success message
approveRequest(requestId)
Approves access request:
- Approves request via API
- Creates external user
- Refreshes requests and users
- Shows success message
rejectRequest(requestId)
Rejects access request:
- Rejects request via API
- Refreshes requests
- Shows success message
API Endpoints
Get External Users
- Endpoint:
GET /workspace/external-users - Query Parameters:
workspace_id - Response: Array of external user objects
Invite External User
- Endpoint:
POST /workspace/external-user/invite - Request Body: External user invitation data
- Response: Invitation sent confirmation
Update External User Access
- Endpoint:
PUT /workspace/external-user/access - Request Body: Access update data
- Response: Updated user object
Revoke Access
- Endpoint:
DELETE /workspace/external-user/revoke - Query Parameters:
user_id,workspace_id - Response: Success confirmation
Get Access Requests
- Endpoint:
GET /workspace/external-user/requests - Query Parameters:
workspace_id - Response: Array of request objects
Approve Request
- Endpoint:
POST /workspace/external-user/request/approve - Request Body: Request ID
- Response: Approved request and user
External User Object Structure
javascript
{
id: 890,
name: "Jane Smith",
email: "[email protected]",
access_type: "upload",
expires_at: "2024-12-31T23:59:59Z",
upload_limit: 10,
status: "active",
created_at: "2024-01-15T10:00:00Z"
}User Flow
- User navigates to External Users
- Page loads external users and requests
- User views external user list
- User invites external user
- User sets access permissions
- User manages access requests
- User updates/revokes access (if needed)
- Changes are saved
- Success message displayed
Access Types
- Upload: Can upload files only
- View: Can view shared assets only
- Limited: Limited access to specific folders
Notes for Development
- Page requires workspace admin permissions
- External users have restricted access
- Access expiration enforced
- Upload limits enforced
- Request approval required
Related Documentation
- User Management - Regular user management
- External Upload Page - External user upload
- Workspace Settings - Main settings page