GADS implements a workspace-based organization system that enables device management and access control. Workspaces allow administrators to segment devices and control user access to specific device groups.
- Default Workspace: Automatically created and cannot be deleted. Houses all devices and users that aren't explicitly assigned to other workspaces
- Custom Workspaces: User-created workspaces for organizing devices and controlling access
- Admin Users: Have access to all workspaces and can manage workspace assignments
- Regular Users: Can only access devices in their assigned workspaces
- Device Assignment: Each device belongs to exactly one workspace
- User Assignment: Users can be assigned to multiple workspaces
- Create, update, and delete workspaces
- Assign devices to workspaces
- Manage user access to workspaces
- Search and filter workspaces
- Pagination support for large installations
- Navigate to the Admin Dashboard
- Select the "Workspaces" tab
- Click "Add Workspace"
- Fill in the required fields:
- Name (must be unique)
- Description
- Click "Create"
- Go to the Admin Dashboard
- Select the "Devices" tab
- For new devices:
- Fill in the device details (choosing the workspace)
- Click "Add Device"
- For existing devices:
- Locate the device card
- Select a different workspace from the dropdown
- Click "Update Device"
- Access the Admin Dashboard
- Select the "Users" tab
- To modify workspace access:
- Locate the user card
- Select or deselect workspaces from the multi-select dropdown
- Click "Update User"
- Go to the Device Selection screen
- Use the workspace selector dropdown at the left
- The device list will automatically filter to show only devices from the selected workspace
- Additional filters available:
- All devices
- Android only
- iOS only
- Search by device name/details
GET /admin/workspaces: List all workspaces (paginated)POST /admin/workspaces: Create new workspacePUT /admin/workspaces: Update existing workspaceDELETE /admin/workspaces/:id: Delete workspace
GET /workspaces: Get workspaces accessible to current user
type Workspace struct {
ID string
Name string
Description string
IsDefault bool
}
type User struct {
// Other fields...
WorkspaceIDs []string
}
type Device struct {
// Other fields...
WorkspaceID string
}- The default workspace cannot be deleted
- Workspaces with assigned devices or users cannot be deleted
- Workspace names must be unique across the system
- Use meaningful workspace names that reflect your organization's structure
- Regularly review workspace assignments
- Maintain clear documentation of workspace purpose and contents
- Use the default workspace sparingly, primarily for legacy support
- Implement a consistent naming convention for workspaces