# Navigating the Admin Panel

> Source: https://parallelworks.com/docs/admin-panel

## About the Admin Panel

This page explains the features in the **Admin Panel**, which you can access by clicking your username and selecting **Admin**.

:::info Persona

You’ll only be able to access these features if you’re an ACTIVATE platform administrator.

:::

:::info About Containers

In much of the user guide, we say “user workspaces” to talk about a user’s account on the ACTIVATE platform. Please note that this term is synonymous with “user container,” which we use on this page.

:::

## Platform Settings

When you navigate to the **Admin Panel**, you’ll see **Platform Settings** by default. This tab displays essential information about your organization’s version of the platform. 

When making changes on this page, click **Save Platform Settings**. Your changes will be applied immediately.

![Screenshot of the Platform Settings tab in the Admin Panel.](/content-images/docs/admin-panel/blank-platform-settings.png?v=b2157f98)

#### License Information

The **Information** section at the top of the page displays details that cannot be configured from within the platform: the **Status URL**, **Platform version**, and **Platform License**. If a license expiration date or licensed features are set, they're displayed here as well.

If a license has not been set, resources will not be able to be started until one is added.

To upload a new license, click **Update Platform License**. In the dialog box that appears, paste the license in the **New License** field and click **Update License**.

#### Platform Name

This field sets the display name shown on the login page. If it's not set, _Parallel Works ACTIVATE_ is used.

#### Maintenance Message

If you set a maintenance message, it will show as an alert on all pages of the platform. You can use this field to warn users about an upcoming maintenance window before enabling **Maintenance Mode**.

#### Maintenance Mode

While **Maintenance Mode** is enabled, only admins will be able to start and stop resources.

To enable **Maintenance Mode**, click the checkbox next to it. 

The platform will remain in maintenance mode until you deactivate it.

#### Forgot Password Enabled

While this option is enabled, the forgot password feature is available on the platform, and users can request a password reset from the login page.

#### API Key Expiration

By default, users can customize the expiration date for their created API keys with no expiration or a date in 7, 30, 60, or 90 days.

You can change the maximum number of days for API keys to expire. For example, if you set this date to 30 days, users may not create a key that expires after 60 days.

To make this change, check the box for **Enforce Maximum API Keys TTL** (Time to Live) and enter a number in the **Days** field that appears.  

#### Single Organization Platform 

If you check this box, other users will only see login options for the organization your account belong to. 

#### Enable Onboarding

When this option is enabled, new users will be guided through an onboarding flow on first login. During onboarding, users can add the compute resources and workflows recommended by their organization. For more information, please see [**Onboarding**](/docs/organization-admin/customize/onboarding).

#### Create k8s PVC

This option creates a PersistentVolumeClaim (PVC) in users' home directories. For more information about PVCs, please see [this page](https://kubernetes.io/docs/concepts/storage/persistent-volumes/) of Kubernetes's documentation. 

#### Delete User Files on Deletion

When this option is enabled, user files and SSH keys will be deleted from their workspace when their account is deleted.

#### Minimum Agent Version

Use this field to reject agent tunnel connections below a minimum version (e.g., `v7.45.2`). Already-connected agents below the minimum are disconnected on the next sweep. Leave the field empty to disable enforcement.

#### Docker Workspace Settings

Use this field to change Docker workspace settings, such as additional mounts, variables, and Domain Name System (DNS) settings. 

### Workspace Defaults

The **Workspace Defaults** section sets the default workspace configuration for the platform. These defaults are applied to user workspaces unless an organization or user has set their own. Leave a numeric field blank to use the built-in default.

- **Workspace Type**: the container runtime new users will be provisioned on (**docker** or **k8s**)
- **Workspace Image**: the container image for user workspaces; leave blank to use the upstream image
- **Default User Host**: the host new Docker workspaces are provisioned on
- **Default CPU Request** and **Default CPU Limit**: measured in cores
- **Default Memory Request** and **Default Memory Limit**: measured in GB
- **Default Ephemeral Storage Limit**: measured in GiB

When making changes in this section, click **Save Workspace Defaults**. Your changes will be applied immediately.

## Users

This tab displays all of your users’ information, including:

- username and email address
- organization
- license standing
- last login

![Screenshot of the Users tab in the Admin Panel.](/content-images/docs/admin-panel/blank-users-admin-tab.png?v=bdb8c5d8)

Click the search icon to filter the list by username, email address, or name.

![Screenshot of a circle around the search field in the Users tab.](/content-images/docs/admin-panel/click-username-search.png?v=22632681)

Use the **Filter** menu to narrow the list by **Status** to only active or only inactive users.

![Screenshot of a circle around the Filter menu in the Users tab.](/content-images/docs/admin-panel/click-enabled-dropdown.png?v=a8e74117)

Use the **Display options** menu to change the ordering, show or hide column headers and row actions, and choose which columns are displayed. The list shows 50 users at a time; use **Previous** and **Next** at the bottom of the page to move through longer lists.

![Screenshot of a circle around the Display options menu in the Users tab.](/content-images/docs/admin-panel/click-limit-dropdown.png?v=5b53c452)

### Editing User Information

In the **Users** tab, click the username you’d like to edit.

![Screenshot of the user clicking a username in the Users tab.](/content-images/docs/admin-panel/click-user-admin.png?v=f41ca763)

The user’s profile opens on the **Details** tab, which lists the groups the user belongs to and graphs their recent activity. The header shows the user’s username, license standing, email address, local time, and join date.

![Screenshot of a user's profile in the Admin Panel.](/content-images/docs/admin-panel/user-admin-settings.png?v=43560185)

The **Groups** tab manages the user’s group memberships, and the **External Auth** tab lists the external identity providers linked to the account.

#### Account Actions

The **...** menu next to the user’s name holds the account actions:

- **Impersonate** switches your session to the user’s account. For more information, please see [**Using Impersonate**](#using-impersonate).
- **Edit user** marks the account as complimentary, which keeps it active without consuming a license seat.
- **Restart workspace** restarts the user’s workspace.
- **Disable user** and **Enable user** control whether the user can log in to the platform.
- **Change password** sets a new login password.
- **Remove MFA** clears the user’s multi-factor authentication enrollment.
- **Login sessions** lists and revokes the user’s active login sessions.
- **Feature previews** turns feature previews on or off for the user.
- **Promote to platform admin** gives the user access to the **Admin Panel** and all of its settings. This option does not affect the group setting `org:admin`. For more information, please see [**About Roles**](/docs/organization-admin#about-group-roles).
- **Promote to billing admin** gives the user access to the billing pages.
- **Make organization owner** transfers ownership of the user’s organization to them.
- **Delete user** permanently removes the account.

A disabled user is marked **Inactive** in the **License** column of **Admin** > **Users**.

![Screenshot of a disabled user marked Inactive in the Users tab.](/content-images/docs/admin-panel/enabled-view.png?v=a8ac88e3)

#### Set Password

Select **Change password** from the **...** menu. Enter the new password in **New password** and **Confirm password**, then click **Update password**. Your change will be applied immediately.

![Screenshot of the Set Password dialog box.](/content-images/docs/admin-panel/admin-set-password.png?v=455b464c)

### Setting User Images

Open the user’s profile and go to the **Workspace** tab. This tab controls where and how the user’s workspace runs:

- **Type**: the container runtime, **docker** or **k8s** (Kubernetes).
- **User Host**: the host the workspace is provisioned on. This field appears for Docker workspaces only.
- **Image**: the container image the workspace runs.
- **CPU Request** and **CPU Limit**: measured in cores.
- **Memory Request** and **Memory Limit**: measured in GB.
- **Ephemeral Storage Limit**: measured in GiB.

Each field inherits the platform or organization default until you set a value for this user. To change the image, click **Override** in the **Image** row.

![Screenshot of the user clicking Override in the Image row of the Workspace tab.](/content-images/docs/admin-panel/click-set-image.png?v=73dcc379)

Enter the image you want the workspace to run, then click **Save**. Your changes will be applied immediately.

![Screenshot of a workspace image override entered in the Workspace tab.](/content-images/docs/admin-panel/click-update-image.png?v=a168ea9c)

### Restarting a User's Workspace

A workspace picks up a new image the next time it starts. To restart it now, select **Restart workspace** from the **...** menu next to the user’s name.

![Screenshot of the user selecting Restart workspace.](/content-images/docs/admin-panel/click-update-in-place.png?v=1df28d61)

A dialog box will appear. Click **Restart**. Your change will be applied immediately.

![Screenshot of the Restart workspace dialog box.](/content-images/docs/admin-panel/click-apply-mass-update.png?v=6875713e)

### Using Impersonate

If you want to quickly access another user's account, you can use the impersonate feature to bypass the login/logout process.

In the **Users** tab, open the **...** menu for the account you want to access, then click **Impersonate**. Confirm the dialog box that appears.

![Screenshot of the user selecting Impersonate in the Users tab.](/content-images/docs/admin-panel/click-impersonate-icon.png?v=73f70c67)

You'll be redirected to the user's **Home** page. You can navigate and control resources, storage resources, and workflows as if you were logged in to the user's account.

When you're done, click the user's name at the bottom of the sidebar, then **Return to [Your Account]**.

![Screenshot of the user selecting Return to their own account.](/content-images/docs/admin-panel/click-return-to-admin.png?v=9c40c3df)

## Groups Allocations

This tab displays information for all of your groups, including:

- name and description
- organization
- number of members
- allocation amount
- amount used
- percentage of allocation used
- creation date

Use the **Organization** menu at the top of the page to choose which organization's groups are listed.

![Screenshot of the Groups Allocations tab in the Admin Panel.](/content-images/docs/admin-panel/blank-admin-groups-tab.png?v=e93eb796)

All the functions in [**Managing Groups**](/docs/organization-admin/managing-groups) can be completed from this tab as well.

## Resources

This tab inventories the cloud resources the platform has provisioned. The list is split into tabs by resource type: **Cluster**, **VM**, **Lustre**, **Disk**, **Bucket**, **NFS**, **IP**, **Orphan**, and **Credentials**.

The **VM** tab displays information for every instance, including:

- CSP
- instance name and instance ID
- cloud state
- organization and user that own it
- cloud account
- machine type
- region and zone
- start time
- when the resource was last seen

![Screenshot of the VM tab in the Admin Panel.](/content-images/docs/admin-panel/blank-admin-instances-tab.png?v=492dc691)

Use the **Organization** and **Last seen within** menus to narrow the list, and the **Filter**, **Display options**, and search controls to refine it further.

You can configure your instance types on the platform by organization. For more information, please see [**Configuring Instance Types**](/docs/organization-admin/cloud/instance-types).

## Workspaces

This tab displays information for all of your user containers, including:

- container name
- owner
- organization
- container image and running version
- status (safe to kill or in use)

Type, creation date, and host are available in the **Display options** menu.

![Screenshot of the Workspaces tab in the Admin Panel.](/content-images/docs/admin-panel/blank-admin-workspaces-tab.png?v=cd307f3b)

### Killing User Containers

In the **Workspaces** tab, select containers with their checkboxes. Click **Kill**.

![Screenshot of the user selecting a container checkbox and clicking the Kill button.](/content-images/docs/admin-panel/click-kill-containers-admin.png?v=20177e9d)

A dialog box will appear. Confirm that you’ve selected the containers you want kill.

Click **Apply mass-update**. Your changes will be applied immediately.

![Screenshot of the Kill Containers dialog box.](/content-images/docs/admin-panel/click-update-workspaces.png?v=3035bea6)

## Images

This tab manages the compute images shown to users when they define clusters. The images listed here are references to images on your cloud service provider (CSP) — deleting an image from this tab will not delete it from the CSP account.

The table groups images by CSP and displays each image's name, ID, region, architecture, and size, along with whether it's **Published** and whether it's the **Latest** image. The `latest` tag automatically points to the most recently added image.

### Adding an Image

Click **Add Machine Image**. On the next page, you can configure the parameters listed below.

- **Name**: the name of the image.
- **CSP**: the cloud service provider the image lives on (**aws**, **google**, **azure**, **openstack**, or **oracle**).
- **CSP ID**: the unique ID of the image in the CSP (e.g., `ami-1234567890` on AWS).
- **Region**: the region the image is in. This field appears for AWS, Oracle, and OpenStack images.
- **Size (GiB)**: the size of the image.
- **Architecture**: **amd64** or **arm64**.
- **OS Type**: the operating system family of the image (**platform**, **rhel**, **ubuntu**, or **windows**).
- **Published**: makes the image available for use.

When you're done, click **Save**. A dialog box with the message _Image added successfully_ will appear.

### Managing Images

Each image's row has a menu with the following actions. Each action asks for confirmation before it's applied.

- **Edit** opens the image's parameters.
- **Set published** and **Set unpublished** control whether the image is available for use. If a published image is currently set as latest, unpublishing it will prevent it from being used as the latest image.
- **Set latest** points the `latest` tag at the image. This action is available for published images only.
- **Disable** and **Enable** control whether the image can be selected by users at all.
- **Delete** permanently removes the image reference from the platform.

## Reports

This tab displays information for your reports, including:

- type of report
- email address that receives reports
- who the report monitors
- frequency
- creator
- creation date

![Screenshot of the Reports tab in the Admin Panel.](/content-images/docs/admin-panel/blank-admin-reports-tab.png?v=434b5664)

### Creating Reports

In the **Reports** tab, click **Add**.

![Screenshot of the user clicking the Add button in the Reports tab.](/content-images/docs/admin-panel/click-add-new-report.png?v=12317d9e)

On the next page, you can edit the parameters listed below.

![Screenshot of the report creation settings.](/content-images/docs/admin-panel/blank-new-report.png?v=e9769660)

Use the **Type** dropdown menu to select the type of report you want to generate:

- summary
- project
- monthly
- user
- application

Use the **Who** field to enter the username who the report will monitor.

Use the **Email** field to enter the report recipient’s email address.

Use the **Frequency** bubbles to select how frequently the report will be generated:

- daily
- weekly
- monthly
- event (once, at the time of creation)
- test (once, at the time of creation)
- disable (end reports for the time being)

## Webhooks 

Webhooks allow external services to be notified when certain events happen. When the specified events happen, we'll send a POST request to each of the URLs you provide. 

### Adding a Webhook

Click **Add**.

![Screenshot of the user clicking the Add button in the Webhooks tab.](/content-images/docs/admin-panel/click-add-webhook.png?v=367df220)

In the dialog box that appears, select what the webhook **Triggers on**. Currently, you can choose from these webhook types: 
- `USER_CREATED` flags when a new user logs in for the first time.
- `USER_DISABLED` flags when a user has been disabled.
- `USER_REMOVED_FROM_GROUP` flags when a user has been removed from a group in your organization.
 
Add a **Webhook name** and paste the **URL** that your webhook will be sent to. **Description** is an optional field. 
 
Choose whether to **Enable** this webhook.

Click **Create**.

![Screenshot of the user clicking the Create button in the Add Webhook dialog box.](/content-images/docs/admin-panel/click-create-webhook.png?v=1de2fd24)

You'll be taken back to the **Webhooks** tab. A dialog box with the message _Webhook created successfully_ will appear in the bottom right corner of your screen.

![Screenshot of the Webhooks tab.](/content-images/docs/admin-panel/webhooks-tab.png?v=a94975d5)

### Deleting a Webhook

Open the **...** menu for the webhook you'd like to delete, then click **Delete**.

![Screenshot of the user clicking Delete in a webhook's menu.](/content-images/docs/admin-panel/click-delete-webhooks.png?v=3f6b45c4)

A pop-up module will appear. Click **Delete webhook**.

![Screenshot of the user clicking the Delete webhook button.](/content-images/docs/admin-panel/click-delete-webhook-for-real.png?v=3b095a3b)

You'll be taken back to the **Webhooks** tab. A dialog box with the message _Webhook(s) deleted successfully_ will appear in the bottom right corner of your screen.

### Responding to Events 

To see the shape of webhooks, please see [this section](/docs/organization-admin/settings/webhooks#responding-to-events). Admin-level webhooks take the same shape as organizaiton-level webhooks, with one exception: 
- You will not see `organization` inside the `webhook` object.

## Alerts

This tab collects error messages from all users in your organization. These messages are shown for 7 days before they're automatically deleted.

![Screenshot of the Alerts tab in the Admin Panel.](/content-images/docs/admin-panel/blank-admin-alerts-tab.png?v=d680ab15)

Use the **Search alerts** field to filter alerts by keywords in their title or message.

![Screenshot of a circle around the Search alerts field in the Alerts tab.](/content-images/docs/admin-panel/click-alerts-filter.png?v=076e351b)

Alerts are grouped into a panel for each day. Click a date to collapse or expand that day's alerts.

![Screenshot of a circle around a date panel in the Alerts tab.](/content-images/docs/admin-panel/click-alerts-dates.png?v=34b7200a)

## Errors

This tab displays recent unknown errors from the platform API, including each error's method, path, message, user, request ID, and time. The oldest entries are automatically removed when the storage limit is reached.

Use the search bar to filter errors by message, path, user, or request ID.

Click **Refresh** to reload the list. You can also click **Trigger Test Error** to generate a sample error and confirm that error reporting is working.

Use the **Previous** and **Next** buttons at the bottom of the page to move through the list.

## Notifications

This tab lets you send notifications to individual users, organizations, or the entire platform. Recipients see them in their [**Inbox**](/docs/your-workspace/inbox).

Use the **Target** dropdown menu to choose who receives the notification:

- **User** sends the notification to a single user. Select the recipient in the **Username** dropdown menu that appears.
- **Organization** sends the notification to every user in an organization. Select the recipient in the **Organization** dropdown menu that appears.
- **All** sends the notification to every user on the platform.

Use the **Level** dropdown menu to select **Info** or **Alert**.

Enter a **Notification title**. You can optionally add a **Message** and a **Notification href**, which attaches a link to the notification.

The **Preview** section shows what the notification will look like to recipients. When you're ready, click **Send notification**. A dialog box with the message _Notification sent successfully_ will appear.

## Previews

This tab manages platform-wide feature previews. When a preview is enabled here, it's active for all users and cannot be individually disabled.

Click a feature card to see its details, including which users have enabled it under **Enabled by Users**. Features marked **Admin only** aren't visible to regular users.

If previews that no longer exist on the platform are still present in user accounts, an _Orphaned previews_ message will appear. Click **Clean up** to remove them.

## Integrations

This tab connects third-party services to extend platform functionality. Each integration card shows whether the service is **Configured** or **Not configured**.

#### Sentry

The Sentry integration monitors errors, performance, and user sessions. Click **Configure** to set it up. Once configured, error tracking and session replays are active.

#### Health Monitoring

The Health Monitoring integration shares a small health snapshot with Parallel Works every 5 minutes so support can catch expiring certificates, failed certificate renewals, and outages before they cause downtime. Reporting is **on by default**; click **Edit** on its card to review exactly what is sent or to turn it off.

Each snapshot contains only the following. It never includes usernames, email addresses, IP addresses, job or workflow data, or any other user content.

| Field | Contents |
| --- | --- |
| Version | The deployment's installed platform version |
| Domains | Per platform domain: domain name, certificate expiry date, certificate source, and renewal status |
| License | License expiry date and whether it is in the grace period or expired |
| Health | Whether the deployment can reach its own database, and the process start time |
| Usage | Monthly active user count, assigned seat count, and total/free seat counts when seat allocations are configured |

Snapshots are pushed over outbound HTTPS; nothing connects back into the deployment, and a failed send is simply retried at the next interval without affecting the deployment itself. The identity the deployment reports as (shown on the tile under **Reports as**) is derived from its platform license.

To stop reporting, toggle **Enable reporting** off and save. The change takes effect within one interval, without a restart. You can also point **Custom endpoint** at your own receiver instead of the Parallel Works default.

#### GitHub

The GitHub integration connects a GitHub App to enable repository access on the platform. Click **Configure** to set it up. Once configured, users can link their GitHub accounts in their account settings. For more information, please see [**Connections**](/docs/account-settings/connections).

GitLab is not configured here: each organization registers its own GitLab servers under **Settings** > [**GitLab Servers**](/docs/organization-admin/settings/gitlab-servers).

To remove the GitHub App configuration, click the delete icon on its card. 

:::warning Irreversible Action

Removing the GitHub App configuration will disconnect all linked users and delete all stored credentials.

:::

## PKI Validation

This tab serves a configurable token file at `/.well-known/pki-validation/` for HTTP-based domain control validation, which some certificate issuers require when provisioning SSL/TLS certificates.

:::info Note

The file is served over plain HTTP without authentication.

:::

Enter the **Filename**, including its extension (e.g., `1e2175b230684937b0093e71b3cc3404.txt`), and paste the verification token in the **File contents** field. The file body is preserved exactly, including whitespace.

Once you enter a filename, the **Public URL** field displays the address where the file will be served. Click **Save** to start serving the file. The tab will display an **Active** badge while a file is being served.

To stop serving the file, click **Remove**. A dialog box will appear; click **Remove** to confirm. The endpoint will return a 404 error afterward.

## Migrations

This tab runs and manages database migrations for Postgres and MongoDB. It's primarily used when operating a [self-hosted ACTIVATE deployment](/docs/self-hosting/kubernetes-deployment).

The **Mongo Migrations Registry** table lists each migration with its status (**Applied** or **Not Applied**), whether it runs automatically, when it was first applied, and who applied it. Click **Run** (or **Rerun**) in a migration's row to execute it individually, or click **Run Unapplied Auto Mongo Migrations** to run all pending automatic migrations.

To run migrations in bulk, click **Run Migrations** and choose **Both (Postgres + Mongo)**, **Postgres Only**, or **Mongo Only**.

:::warning Irreversible Action

Running migrations will modify your database schema and data. Ensure you have backups before proceeding.

:::

The **Migration Run History** section logs each run with its start time, duration, actor, and per-step results. Click **Delete All Logs** to clear the history. Deleting logs only removes the log entries; it does not affect the migrations or the data in your database.

## Maintenance

This tab cleans up old or orphaned data to free database space and keep the platform running smoothly.

Each operation shows a preview of what will be deleted before you confirm.

:::warning Irreversible Action

Deletions on this tab permanently remove data from the database and cannot be undone.

:::

#### Old Workflow Runs Cleanup

This section removes workflow runs created before a specified time period. Enter a number of months in the **Delete workflow runs older than** field and click **Preview** to see how many runs will be deleted. If the preview returns results, click **Delete Workflow Runs** and confirm.

#### Orphaned Workflow Runs

This section finds workflow runs that reference non-existent users or workflows — for example, runs where the user has been deleted, or where the workflow definition no longer exists. Click **Scan for Orphaned Runs** to preview them, then click **Delete Orphaned Runs** and confirm.

#### Orphaned Infrastructures

This section finds infrastructure that references non-existent users — resources whose owner's account has been deleted. Click **Scan for Orphaned Infra** to preview them, then click **Delete Orphaned Infra** and confirm.
