Skip to content

Request Access

File Information

  • Path: pages/_workspace_id/external/request-access.vue
  • Route: /:workspace_id/external/request-access
  • Purpose: Request external access to workspace for file uploads

Overview

The Request Access page allows external users to request access to a workspace for uploading files or accessing shared assets. Users submit their email and request details, and workspace administrators receive the request for approval.

Key Features

  1. Access Request Form

    • Email input
    • Name input (optional)
    • Request message (optional)
    • Access type selection
  2. Request Submission

    • Form validation
    • Request submission to backend
    • Confirmation display
    • Email notification
  3. Request Status

    • Pending request display
    • Request history
    • Status updates
  4. Workspace Information

    • Workspace name display
    • Workspace description
    • Access requirements

Components Used

  • Form input components
  • Validation components
  • Status display components

Data Properties

javascript
{
  form: {
    email: '',
    name: '',
    message: '',
    access_type: 'upload'
  },
  submitting: false,    // Submission state
  submitted: false,     // Submission status
  error: null,          // Error message
  workspaceId: null    // Workspace ID from route
}

Computed Properties

workspaceId

Returns workspace ID from route

isFormValid

Validates form data

Methods

submitRequest()

Submits access request:

  • Validates form
  • Submits request via API
  • Shows success message
  • Redirects to confirmation page
  • Handles errors

validateEmail(email)

Validates email format:

  • Email format validation
  • Returns validation result

API Endpoints

Submit Access Request

  • Endpoint: POST /external/request-access
  • Request Body:
    json
    {
      "email": "[email protected]",
      "name": "John Doe",
      "message": "Request access for project files",
      "workspace_id": 123,
      "access_type": "upload"
    }
  • Response: Request submitted confirmation

Check Request Status

  • Endpoint: GET /external/request-status
  • Query Parameters: email, workspace_id
  • Response: Request status object

User Flow

  1. External user navigates to request access page
  2. User views workspace information
  3. User fills out access request form
  4. User submits request
  5. Request is sent to workspace administrators
  6. User receives confirmation
  7. User is redirected to request submitted page
  8. Administrator reviews and approves/rejects

Notes for Development

  • Form validation required
  • Email must be valid format
  • Request sent to workspace admins
  • OTP sent to email on approval
  • Rate limiting on requests