From aad105fb5b84054f191e7f28c686d0540ec006f5 Mon Sep 17 00:00:00 2001
From: Matt Fellows <53900+mefellows@users.noreply.github.com>
Date: Tue, 9 Jul 2024 21:10:31 +1000
Subject: [PATCH] feat: store existing UI docs alongside new
---
website/docs/docs/ui-old/bi-directional.md | 83 +++++++++++++
website/docs/docs/ui-old/can-i-deploy.md | 82 ++++++++++++
website/docs/docs/ui-old/dashboard.md | 117 ++++++++++++++++++
.../docs/docs/ui-old/settings/api-tokens.md | 17 +++
.../docs/docs/ui-old/settings/environments.md | 55 ++++++++
.../docs/docs/ui-old/settings/preferences.md | 59 +++++++++
website/docs/docs/ui-old/settings/secrets.md | 24 ++++
website/docs/docs/ui-old/settings/teams.md | 48 +++++++
website/docs/docs/ui-old/settings/users.md | 84 +++++++++++++
website/docs/docs/ui-old/settings/webhooks.md | 93 ++++++++++++++
.../docs/docs/user-interface/application.md | 27 ++--
website/docs/docs/user-interface/contract.md | 59 ++++-----
website/docs/docs/user-interface/dashboard.md | 19 +--
.../docs/user-interface/migration/guide.md | 4 +-
.../docs/docs/user-interface/migration/new.md | 17 +--
.../docs/user-interface/settings/roles.md | 14 +--
.../settings/system-accounts.md | 37 +++---
website/sidebars.js | 54 +++++---
18 files changed, 790 insertions(+), 103 deletions(-)
create mode 100644 website/docs/docs/ui-old/bi-directional.md
create mode 100644 website/docs/docs/ui-old/can-i-deploy.md
create mode 100644 website/docs/docs/ui-old/dashboard.md
create mode 100644 website/docs/docs/ui-old/settings/api-tokens.md
create mode 100644 website/docs/docs/ui-old/settings/environments.md
create mode 100644 website/docs/docs/ui-old/settings/preferences.md
create mode 100644 website/docs/docs/ui-old/settings/secrets.md
create mode 100644 website/docs/docs/ui-old/settings/teams.md
create mode 100644 website/docs/docs/ui-old/settings/users.md
create mode 100644 website/docs/docs/ui-old/settings/webhooks.md
diff --git a/website/docs/docs/ui-old/bi-directional.md b/website/docs/docs/ui-old/bi-directional.md
new file mode 100644
index 00000000..cc52188d
--- /dev/null
+++ b/website/docs/docs/ui-old/bi-directional.md
@@ -0,0 +1,83 @@
+---
+title: Bi-Directional Contract Testing
+---
+
+This section describes the Bi-directional Contract Testing screens in PactFlow. Bi-Directional Contract Testing is a type of **static contract testing** where two contracts - one representing consumer expectations, and another representing provider capability - are compared to ensure they are compatible. Refer to the [docs](/docs/bi-directional-contract-testing) for more information on this feature.
+
+## Overview tab
+
+When you open the overview page, if the selected integration uses the bi-directional contract testing feature, a "view contracts" button will appear that takes you to the detailed view.
+
+
+
+
+
+
+
+
+
+| Status | Description | Action Required |
+|-------------|-------------|-|
+|  | The consumer contract is compatible with the provider's contract.| N/A |
+|  | The consumer contract is incompatible with the provider's contract, the provider self-verification is unsuccessful, or a classic pact test has failed. | Review the [detail page](#detail-page) to understand the failure cause. |
+|  | No schema comparison has been found for the consumer contract. | Either a consumer contract has yet to be published, or PactFlow has not verified yet. Wait a few minutes and try again (PactFlow generates results in the background), or run a [`Can I Deploy`](/docs/ui-old/can-i-deploy) query for the application in question to force PactFlow to generate a result. |
+
+
+
+:::info scope of this screen
+Currently this page supports showing one verification per consumer version. Whichever provider version was most recently published will be the verification displayed.
+
+Each verification is still generated behind the scenes though, and will work as expected when using `can-i-deploy` in your build pipeline or via CLI.
+:::
+
+## Detail Page
+
+The detail page displays a comprehensive breakdown of the comparison results between a provider contract and its consumer contract (pact), along with metadata, pacticipant information and provider self-verification results.
+
+
+
+
+
+
+
+### Contract Comparison Tab
+
+This tab shows any errors and warnings grouped by the affected resource in the OpenAPI document. The grouping is in the form `{verb} {path}`, for example, `get /products/{id}`. This is a helpful view if you are more familiar with the OpenAPI Document.
+
+There may be more than one interaction in the consumer contract that is incompatible with a given route.
+
+When provider and consumer contracts are incompatible, warnings, error messages and any mismatches (for Pact verifications) are listed here. You can also find incompatibility messages under interaction items on the [Consumer Contract Tab](#consumer-contract-tab), grouped by the interactions defined in the consumer contract. This is a more helpful view for consumer teams diagnosing problems.
+
+
+
+For interpreting the errors and warnings displayed on these screens, refer to the [compatibility checks](/docs/bi-directional-contract-testing/compatibility-checks) guide.
+
+### Consumer Contract Tab
+
+Displays the verification result of comparing the consumer contract against the provider contract, from the perspective of the consumer contract.
+
+Clicking the interaction item toggles the interaction detail in relation to the current Bi-Directional Contract Testing.
+
+:::note
+When you perform a classic pact test with Bi-Directional Contract Testing, the classic pact test result displays here.
+:::
+
+
+
+For interpreting the Bi-Directional Contract Testing related errors and warnings displayed on these screens, refer to the [compatibility checks](/docs/bi-directional-contract-testing/compatibility-checks) guide.
+
+### Provider Contract Tab
+
+Displays the verification result of comparing the consumer contract against the provider contract, from the perspective of the provider contract.
+
+
+
+
+
+
+## Matrix View Tab
+
+When a pact is published, a comparison will be generated asychronously with the latest provider contract from each branch, and for the provider contract of each deployed/released provider version. These results will be used to populate the data for the matrix page.
+
+Should a [`can-i-deploy`](https://docs.pact.io/pact_broker/can_i_deploy) query be made for a combination of application versions for which a comparsion has not been generated, the comparsion will be performed synchronously, and the results returned in the response.
+
diff --git a/website/docs/docs/ui-old/can-i-deploy.md b/website/docs/docs/ui-old/can-i-deploy.md
new file mode 100644
index 00000000..1f78d787
--- /dev/null
+++ b/website/docs/docs/ui-old/can-i-deploy.md
@@ -0,0 +1,82 @@
+---
+title: Can I Deploy
+---
+
+## What is Can I Deploy
+Can I Deploy page is the web version of our popular CLI tool [can-i-deploy](https://docs.pact.io/pact_broker/can_i_deploy), which queries the "Matrix". This UI provides a rich query interface for the Matrix to ensure you can safely deploy your application. It provides additional context not readily available during CLI usage.
+
+You can find `Can I Deploy` button in the top navigation bar on the overview page.
+
+## Walkthrough
+
+
+
+## Can I Deploy layout
+
+The Can I Deploy page contains three main areas:
+
+
+
+
+
+
+
+**UI selectors**
+It helps you choose your application from the application list, the application version and the deployment target. For more information, see the [Selectors](#Selectors) section.
+
+**Messaging list**
+It summarizes if you are safe to deploy your chosen application version.
+
+**Verification statuses table**
+It demonstrates your application version and deployment target.
+
+
+
+
+| Status | Description |
+| --------------------------------- | --------------------------------------------------------------------------------------------- |
+|  | The application version has a successful verification published for it. |
+|  | The verification for the application version had failed. |
+|  | No verification result has been published for the application version. |
+
+
+
+### Selectors
+
+There are three selectors for customizing your Matrix query.
+
+
+
+
+
+
+
+**a -**
+You can choose your application name from the list of applications.
+
+**b -**
+You can choose your application version from the list of versions mentioned below:
+- The latest version from a branch (default: your main branch)
+- Specific version number
+- Version in an environment (Note: you need to have `environment read permission` to interact with this selection)
+- The latest version
+- The latest version with a specific tag
+
+**c -**
+Below are a few options for choosing your deployment target::
+- Deploy to an environment (Note: you need to have `environment read permission` to interact with this selection)
+- Deploy with the other applications' latest version with a specific tag
+- Deploy with other applications' latest main branch
+
+**d -**
+There is a button to submit the matrix query. When a selector is missing or invalid, it is disabled.
+
+## Miscellaneous
+
+### Permission warning
+
+You might see a warning in the following screenshot about the environment permission issue. To set up read/management permissions for your environment, please contact your account administrator. Otherwise, you will not be able to select and run the query that includes environments.
+
+
+
+
diff --git a/website/docs/docs/ui-old/dashboard.md b/website/docs/docs/ui-old/dashboard.md
new file mode 100644
index 00000000..9e457606
--- /dev/null
+++ b/website/docs/docs/ui-old/dashboard.md
@@ -0,0 +1,117 @@
+---
+title: Dashboard
+---
+
+## Dashboard layout
+
+The main PactFlow screen has four functional areas.
+
+
+
+
+
+
+
+**1 -**
+The list of all integrations is displayed on the left panel. Integration here is the pair of a consumer and provider that have a pact. Select an integration to have its details displayed in the center panel. The status icon (see table below) will be displayed for the verification result of latest pact.
+
+**2 -**
+The details of the selected integration will be displayed here.
+
+**3 -**
+You can filter the list of integrations here by either the Consumer or Provider name.
+
+**4 -**
+If you have been assigned to a [team](#settings-teams), you can select them here. This will filter the list of integrations
+by the applications that belong to the team.
+
+**5 -**
+The tabs at the top provide different views of the currently selected integration.
+
+- The Network Diagram will display a graph view of all the integrations that are reachable from the selected one.
+
+- The [Matrix](#matrix) will display more details of all the pacts and verifications of the selected integration.
+
+- The Webhooks will display a list of triggered webhooks for the integration and logs.
+
+**6 -**
+The settings (or cog) button will take you to all the setting screens. Here you'll be able to setup
+[API tokens](#settings-api-tokens), [webhooks](#settings-webhooks), [users](#settings-users) and more.
+
+**7 -**
+Displays the current logged in user and subscription status.
+
+
+
+
+
+| Status | Description |
+| --------------------------------- | --------------------------------------------------------------------------------------------- |
+|  | The pact has a successful verification published for it. |
+|  | The latest verification for the pact had failed. |
+|  | No verification result has been published for the pact. |
+|  | A new version of the pact has been published since the last verification result was received. |
+
+
+
+## Version tag menus
+
+The blue and grey "pill" icons shown next to the consumer and provider version numbers on the Overview, Matrix and Pact pages represent [tags](https://docs.pact.io/pact_broker/tags) that belong to the relevant application versions in PactFlow.
+
+A blue pill indicates that this is the latest version that has a tag with that name. For example, the latest consumer version with a "main" tag.
+
+
+
+A grey pill indicates that there's a later application version that has the same tag.
+
+
+
+Clicking on the tag pill icon will allow you to perform actions in the context of that application version tag.
+
+### Consumer version tags
+
+The consumer version tag has the following menu items.
+
+
+
+#### Menu items
+
+##### Resources
+
+- Copy pact URL - Copies the URL of the latest pact with the given tag into the clipboard.
+- Copy stub URL - Copies the URL of the [stub](/docs/stubs) created from the latest pact for the given tag.
+- Copy badge URL - Copies the URL of the [verification status badge](https://docs.pact.io/pact_broker/advanced_topics/provider_verification_badges/) for the latest pact for the given tag into the clipboard.
+- Copy tag URL - Copies the URL of the application version tag into the clipboard.
+- Copy tag name - Copies the name of the tag into the clipboard.
+
+##### Delete
+
+- Delete all pacts with the given tag - Allows you to delete all pacts that belong to application versions with the given tag. This is only visible if the current user has the [contract_data:bulk_delete](/docs/permissions#contract_databulk_delete) permission.
+
+### Provider version tags
+
+Clicking on a tag pill for a provider version tag will make the following menu available.
+
+
+
+#### Menu Items
+
+##### Resources
+
+- Copy tag URL - selecting this menu item will copy the URL of the application version tag into the clipboard.
+- Copy tag name - selecting this menu item will copy the name of the tag into the clipboard.
+
+## Matrix
+
+The "Matrix" displays a table that shows the verification status of each combination of consumer and provider version from the selected integration.
+
+
+
+
+
+
+
+### Matrix Filters
+Filter the consumer versions and provider versions of the selected integration by version number, branch, environment or tag.
+
+Note: The environment filter option will only be shown to users with the environment read or manage permission.
diff --git a/website/docs/docs/ui-old/settings/api-tokens.md b/website/docs/docs/ui-old/settings/api-tokens.md
new file mode 100644
index 00000000..ffb56524
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/api-tokens.md
@@ -0,0 +1,17 @@
+---
+title: API Tokens
+---
+
+
+
+**About**
+This screen helps you copy and re-generate your API tokens. There are two types of API tokens you can use:
+
+1. The read only token for anything that needs to download pacts. It should be used for a developer's machine.
+
+2. The read-write token for anything required to publish pact files or verification results. It should only be used by your CI when publishing pacts and verification results.
+
+**Buttons**
+1. The Copy button allows you to copy the token values without displaying them.
+
+2. The Regenerate button allows you to generate a new value for that token.
diff --git a/website/docs/docs/ui-old/settings/environments.md b/website/docs/docs/ui-old/settings/environments.md
new file mode 100644
index 00000000..fad5b0ec
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/environments.md
@@ -0,0 +1,55 @@
+---
+title: Environments
+---
+
+
+
+Here you can manage the list of environments used by your organization. These represent your real-world deployment or release environments. Maintaining this list, along with the `record-deployment` and `record-release` commands, allows PactFlow to ensure you are safe to deploy using the `can-i-deploy` tool. You can read more [here.](https://docs.pact.io/pact_broker/recording_deployments_and_releases/)
+
+
+
+
+| Field | Description |
+| ----- | ----------- |
+| Name | A unique name, no spaces allowed. This name is used in the can-i-deploy and record-deployment CLI commands. For example, "payments-sit-1". This field cannot be edited |
+| DisplayName | Verbose environment name. "Payments Team SIT 1". |
+| Production | Whether or not this environment is a production environment. |
+| Teams | Associating the environment with teams, used to determine which teams can view and edit the environment after it is created. See the permissions section below for details. |
+
+
+
+#### Recording deployments and releases
+
+To successfully record a deployment or release to an environment, the user must be allowed to record a deployment/release for the application. Moreover, the user must be allowed to view the environment resource.
+
+In terms of permissions and resource relationships, that means:
+
+1. The user must have `deployment_and_release:record:team` and `environment:view:team` (or `environment:manage:team`) AND the environment, application and user must be assigned to the same team.
+
+OR
+
+2. The user must have `deployment_and_release:record:*` and `environment:view:*` (or `environment:manage:*`).
+
+#### Creating Production Environments
+
+If all the Broker services are deployed to the same "public" internet, then there only needs to be one Production environment. If there are multiple segregated production environments (for example, when maintaining on-premises software for multiple customers) you should create a separate production Environment for each logical deployment environment.
+
+#### Permissions
+
+Environments can be associated with Teams via creating or editing an Environment, or in the Team settings when creating or editing a Team. The permissions that determine when a user can associate an environment with a team are as follows:
+
+#### environment:manage:*
+Users with this permission can view, edit and delete all environments. When creating or editing an environment the user can add or remove any team, regardless of their 'teams' permissions.
+
+#### team:manage:*
+When creating or editing any team the user can change the environments associated with the team.
+
+#### team:manage:{uuid}
+When creating or editing a team they have permission for, the user can change the environments associated with that team.
+
+#### environment:read:*
+The user can view a list of all environments but cannot edit or delete environments.
+
+#### environment:read:team
+The user can view a list of all the environments associated with their teams, but cannot edit or delete environments.
+
diff --git a/website/docs/docs/ui-old/settings/preferences.md b/website/docs/docs/ui-old/settings/preferences.md
new file mode 100644
index 00000000..a4e38c40
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/preferences.md
@@ -0,0 +1,59 @@
+---
+title: Preferences
+---
+
+In this screen, you can see which settings you can modify in PactFlow Preferences panels. There are two types of preferences:
+
+## Personal preferences
+
+These are the settings that affect individual users.
+
+#### Show welcome dialog
+
+When a user logs in to PactFlow, this setting controls whether the "Welcome to PactFlow" dialog appears.
+
+#### Show an alert when my tokens are about to expire
+
+This setting determines if the user sees the token expiry alert on the main dashboard for any API tokens that are either expired or expiring within seven days. An administrator must enable token expiration in the System preferences for this to happen.
+
+## System preferences
+
+These are global system settings and can only be changed by an administrator.
+
+#### API Token expiration
+
+By default, user and system account tokens don't expire, but can be re-generated at any time to invalidate the old tokens and create new ones. This setting enables tokens to automatically expire after a fixed period of time, which can be specified in units of hours, days, weeks or months.
+
+After a token expires, the users can generate a new one from the [API Tokens setting page](./api-tokens), while users with the appropriate `system_account:manage` permission can regenerate system account tokens from the [user
+management screen](./users#system-accounts).
+
+#### Display an announcement banner on login
+
+This setting allows for an announcement banner to appear when users log in, with [Markdown
+formatted text](https://commonmark.org/help/) (which also supports HTML markup). Note that text will be santized in the UI, so you can not add any Javascript to the banner.
+
+#### Default Role
+
+This preference assigns the default role for new users. If this preference is not set, new users will be assigned the [User](/docs/permissions/predefined-roles#user) role.
+
+#### Default Team
+
+This preference sets the default team for new team members. If it is not set, new users will be added to the "[Default team](/docs/ui-old/settings/teams#the-default-team)" if it exists.
+
+#### Operational Notification Contacts
+
+This field specifies the email addresses that will receive notifications about platform maintenance, operations, and security issues.
+
+For existing accounts, the email addresses of users with the Administrator role have been initialized as the default. For new accounts, the default will be the email address of the account creator.
+
+Note: Any email address can be added to this field. The owner of the email address does not need to have a PactFlow account.
+
+#### Consolidate User Logins by Email
+
+Allow users to be linked to different identity providers via their email address. When enabled, logins from different identity providers will be considered the same user if they have the same email address.
+
+This setting does not affect existing users that have previously logged in and have a stored identity. To fix this, see the troubleshooting article on [duplicate users](/docs/authentication/legacy#4-ive-added-an-identity-provider-and-see-duplicate-users).
+
+:::warning
+Do not enable this setting unless you can guarantee the identity providers you use validate the user's email address.
+:::
\ No newline at end of file
diff --git a/website/docs/docs/ui-old/settings/secrets.md b/website/docs/docs/ui-old/settings/secrets.md
new file mode 100644
index 00000000..7664fd76
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/secrets.md
@@ -0,0 +1,24 @@
+---
+title: Secrets
+---
+
+
+
+
+
+
+
+You can create your own variables to store sensitive values like usernames and passwords here. These will be encrypted and stored in the PactFlow platform and available to use when creating your webhooks.
+
+
+
+
+
+
+
+| Field | Description |
+| ---------- | ----------- |
+| Team | When creating or updating a secret, users with the `secret:manage:team` permission (by default, assigned the `User` role) must assign a secret to a team. Team secrets may only be used in webhooks assigned to the same team. Users with the `secret:manage:*` permission (by default, assigned to the `Administrator` role) may choose not to assign a secret to any team. Secrets without a team assigned may only be used in webhooks with no team assigned. |
+| Name | Give a name to your secret. This will be available as a dynamic variable prefixed with `user.`. For instance, if you create a `BuildkiteToken` secret you can access it as `${user.BuildkiteToken}`. |
+| Description | Describe your secret. |
+| Value | Specify the value you would like to encrypt. |
\ No newline at end of file
diff --git a/website/docs/docs/ui-old/settings/teams.md b/website/docs/docs/ui-old/settings/teams.md
new file mode 100644
index 00000000..4ab90032
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/teams.md
@@ -0,0 +1,48 @@
+---
+title: Teams
+---
+
+Our Team Management feature allows you to manage the following capabilities:
+
+* Allocate users to teams
+* Allocate applications to teams
+* Assign team administrators
+* Allocate environments to teams
+
+_NOTE: Editing of teams is restricted to users with the `team:manage:*` permission (Administrators) or who have been assigned as Team Administrators by an existing user with the team manage permission._
+
+
+
+**A new Team** will allow you to create a new team and assign applications and environments to that team.
+
+**Deleting a team** allows you to unlink all users, applications and environments from a team and remove it. Deleting the team will also disassociate any secrets and webhooks that were associated with the team. The secrets and webhooks that were disassociated will then be editable only by users with the `secret:manage:*` and `webhook:manage:*` permissions respectively (eg Administrators).
+
+**Editing a team** allows you to change the name and applications of an existing team, assign Team Administrators and assign environments.
+
+Clicking the team's name will take you to the allocated user's screen.
+
+## The "Default" team
+
+The `contract_data:manage:team` permission that comes with the `User` role allows users to manage contract-related data (for example, publish pacts and verification results) for applications assigned to their teams. To help you get started with teams quickly, every new PactFlow account is set up with a special, system defined "Default" team. All new users and applications are automatically added to this team on creation.
+
+The default team can be deleted once your own user defined teams have been created. From then on, users and applications will need to be assigned to teams explicitly through the UI. To ensure that your users can continue to manage their applications, you should create your own teams with the appropriate users and applications assigned before deleting the default team.
+
+## Editing or Creating a team
+
+
+
+With the team applications, you can search for applications and add them to the team. This allows the team users to be able to filter the main dashboard by those applications.
+
+Team Administrators can also be assigned to this screen. Team Administrators can assign users and applications to a team, and update its name.
+
+Lastly, environments can be allocated to the team here. Once selected the environments can be re-ordered and saved in that order.
+
+## Allocating users to a team
+
+
+
+You can search for users by name to add to the team. Clicking the trashcan icon next to a user will remove them from the team.
+
+**Edit** takes you to the edit team dialog, and **Delete** allows you to delete the team.
+
+You can also switch to other teams from this screen by using the team select box at the top.
diff --git a/website/docs/docs/ui-old/settings/users.md b/website/docs/docs/ui-old/settings/users.md
new file mode 100644
index 00000000..47783900
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/users.md
@@ -0,0 +1,84 @@
+---
+title: Users
+---
+
+Our User Management feature allows you to manage the following capabilities:
+
+* See the users in their team as well as their login activity (all)
+* Invite new users to join the team (Administrators only)
+* Grant or remove administrator access for other users (Administrator only)
+* Enable and disable users (Administrator only)
+* Delete users (Administrator only)
+* Create system accounts (Administrator only)
+* Edit user roles (Administrator only)
+
+_NOTE: By default, the account creator is the Administrator._
+
+
+
+**(1)** The current plan details are displayed, alongside the remaining user seat and system account limits.
+
+**(2)** If the current user is an Administrator, the option to invite new users will be presented here.
+
+**(3)** Change view between active users, system accounts and disabled users here.
+
+**(4)** When multiple users are selected, bulk actions are available.
+
+**(5)** Individual user actions are available in these menus.
+
+
+## Enabling and Disabling Users
+
+You may disable (or enable) a user by choosing the action via the `"..."` menu to the right of the user's record. You may also select the user with the checkbox and use the bulk action menu. These actions apply to local users or federated identities (such as SAML2.0, Google or GitHub providers).
+
+
+
+Bulk actions can be applied to multiple users:
+
+
+
+_NOTE: Disabled users do not count toward your user limit._
+
+## Delete User
+
+You may delete a user by choosing the action via the `"..."` menu to the right of the user's record. You may also select the user with the checkbox and use the bulk action menu. These actions apply to local users or federated identities (such as SAML2.0, Google or GitHub providers).
+
+The deleted user will no longer appear in the UI and cannot be edited.
+
+Deleting a federated identity user should only be undertaken when the user is removed from the SSO organization. This is because the SSO provider remains the source of truth and if the user logs into PactFlow again via SSO, the account gets reinstated.
+To remove a user from PactFlow who will remain in the SSO organization it is recommended to instead `disable` the user. Disabled users will not be counted towards your seat limit, though their details will still appear inside PactFlow. Disabled users can also be re-enabled via the UI if needed.
+
+
+
+## Invite users
+
+_NOTE: You do not need to invite users if your account is setup to authenticate via Google, GitHub or SAML2.0_
+
+Administrators can invite one or more users from the following dialog:
+
+
+
+After a successful invitation, the user will receive an email with a temporary password. They will need to login to your account to set a new password before they can login.
+
+This option will create a local user account in the system - it will not create accounts in federated Identity Providers.
+
+_NOTE_: If the user being invited (as identified by their email address) already exists in PactFlow, they **will not** receive another email and can login to your account with their existing credentials.
+
+## User roles
+
+By default, each user is assigned the `User` role. The account creator is also assigned the `Administrator` role. See [Roles and Permissons](/docs/permissions/predefined-roles) for more information.
+
+There are a few options to change a user's role. The `Make Administrator`/`Remove Administrator` menu items allow administrators role to be added or removed. `Edit Roles` allows all the roles of a user to be edited. The `Add Role`/`Remove Role` bulk action menu items can add or remove a role from multiple users.
+
+## System accounts
+
+You can have multiple system accounts, based on your plan. System accounts are a type of user account to be used only with API access. They are primarily for use with CI/CD systems to access PactFlow. From the system account screen (by selecting it from the user type dropdown), you can create new system accounts, disable existing ones and get or renegenerate the access tokens for the account. These functions require administrator access. You can also see the last time a token for that account was
+used to access any PactFlow API.
+
+
+
+## Federation with Google, GitHub or SAML2.0
+
+Federation allows team members to join your account without being invited - i.e., they will be provisioned into PactFlow on demand, up until your account limit. You can simply share the link to the account `https://.pactflow.io` and they may choose to login with Google, GitHub or your SAML provider.
+
+Other user management features such as team management, roles and the ability to disable users still apply to your federated users.
diff --git a/website/docs/docs/ui-old/settings/webhooks.md b/website/docs/docs/ui-old/settings/webhooks.md
new file mode 100644
index 00000000..9ebbe23f
--- /dev/null
+++ b/website/docs/docs/ui-old/settings/webhooks.md
@@ -0,0 +1,93 @@
+---
+title: Webhooks
+---
+
+Here you can create and edit your webhooks.
+
+| Field | Description |
+| ----- | ----------- |
+| Team | When creating or editing a webhook, users with the `webhook:manage:team` permission (by default, assigned to the `User` role) must assign a webhook to a team. Users with the `webhook:manage:*` permission (by default, assigned to the `Administrator` role) may choose not to assign a webhook to any team. Team selection affects which secrets are available for use in the webhook. See the [Secrets](#secrets) section below. |
+| Description | A description of your webhook |
+| Consumer | You can select a specific consumer for the webhook, or `ALL` for all consumers. |
+| Provider | You can select a specific provider for the webhook, or `ALL` for all providers. |
+| Events | Select the events for which you want the webhook to fire (Mandatory to select one). |
+| Method | All webhook requests will be HTTP Post. |
+| URL | The URL to send the webhook request to (Mandatory). You can use dynamic variables in this field. |
+| Headers | Headers as `KEY: VALUE` pairs to set on the request. |
+| Body | The request body. You can use dynamic variables in the body. |
+| Basic auth username | The username to use if your webhook requires Basic HTTP authentication |
+| Basic auth password | The password to use if your webhook requires Basic HTTP authentication |
+| Enabled | Uncheck this if you wish to disable the webhook |
+
+#### Webhook event types
+
+##### Contract published that requires verification
+
+This webhook is used to trigger one or more build that run the provider verification for a newly published pact. This event fires once for each of the following provider versions that are missing a verification result for the pact just published:
+
+* The latest version from the provider's [main branch](https://docs.pact.io/pact_broker/branches#pacticipant-main-branch-property)
+* Any version currently [deployed to an environment](https://docs.pact.io/pact_broker/recording_deployments_and_releases)
+
+The provider versions are de-duplicated by version number, so that if the same provider version is the head, and/or deployed to multiple environments, the webhook will only trigger once for each provider version. The template parameter `${pactbroker.providerVersionDescriptions}` will describe which branch/stage that particular provider version number pertains to, for example, "latest from main branch, deployed in test"
+
+See the [Pact Broker docs](https://docs.pact.io/pact_broker/webhooks#using-webhooks-with-the-contract_requiring_verification_published-event) for more information on the usage of this event.
+
+##### Contract published with changed content or tags
+
+* If your pact is published _without_ any tags applied to the consumer version, this event will be fired if the pact content is different from the previous version.
+
+* If your pact is published _with_ tags applied to the consumer version, you can think of all the pacts that share the same tag name as forming a time ordered "pseudo branch". This event will fire if the new pact for any of the "pseudo branches" is different from the previous version. One of the implications of this is that if a pact is published with the same content as a previous version, but with a new tag, this event will fire as it is considered to be the first version of a new pseudo branch.
+
+* If you want a provider build to be triggered by pact changes, select this event for your webhook.
+
+##### Contract published
+
+This event fires every time a pact is published.
+
+##### Provider verification published
+
+This event fires every time a provider verification is published.
+
+#### Dynamic Variables
+
+##### Secrets
+
+User defined secrets that have the same team assigned as the webhook may be used in the path of the URL, the headers, body, username and password. They will be replaced with their appropriate values at runtime. For webhooks that have no team assigned, only secrets that also have no team assigned may be used. The list of secrets available for use in a particular webhook are shown in the `Dynamic variables` section (click on the heading to display the values).
+
+To use a secret in a webhook, use the expression `${user.}` for example `${user.ciToken}`.
+
+##### PactFlow
+
+The following variables may be used in the path and query parameters of the URL, the headers, body, username and password. They will be replaced with their appropriate values at runtime.
+
+| Expression | Description |
+| ---------- | ----------- |
+| `${pactbroker.consumerName}` | The consumer's name |
+| `${pactbroker.providerName}` | The provider's name |
+| `${pactbroker.consumerVersionNumber}` | The version number of the most recent consumer version associated with the pact content. |
+| `${pactbroker.providerVersionNumber}` | The provider version number for the verification result |
+| `${pactbroker.providerVersionTags}` | The list of tag names for the provider version associated with the verification result, separated by ", ". |
+| `${pactbroker.providerVersionBranch}` | The repository branch associated with the provider version |
+| `${pactbroker.consumerVersionTags}` | The list of tag names for the most recent consumer version associated with the pact content, separated by ", " |
+| `${pactbroker.consumerVersionBranch}` | The repository branch associated with the consumer version |
+| `${pactbroker.pactUrl}` | The "permalink" URL to the newly published pact (the URL specifying the consumer version URL, rather than the "/latest" format. |
+| `${pactbroker.verificationResultUrl}` | The URL to the relevant verification result. |
+| `${pactbroker.githubVerificationStatus}` | The verification status using the correct keywords for posting to the Github commit status API. See https://developer.github.com/v3/repos/statuses. |
+| `${pactbroker.bitbucketVerificationStatus}` | The verification status using the correct keywords for posting to the Bitbucket commit status API. See https://developer.atlassian.com/server/bitbucket/how-tos/updating-build-status-for-commits/. |
+| `${pactbroker.azureDevOpsVerificationStatus}` | The verification status using the correct keywords for posting to the Azure DevOps GitStatusState API. See https://docs.microsoft.com/en-us/rest/api/azure/devops/git/statuses/create?view=azure-devops-rest-6.0 |
+| `${pactbroker.consumerLabels}` | The list of labels for the consumer associated with the pact content, separated by ", ". |
+| `${pactbroker.providerLabels}` | The list of labels for the provider associated with the pact content, separated by ", ". |
+| `${pactbroker.providerVersionDescriptions}`| The descriptions of the provider version(s) for which the contract_requiring_verification_published webhook has been triggered. Only populated for the contract_requiring_verification_published event. |
+| `${pactbroker.eventName}` | The name of the event that triggered the webhook |
+
+#### Basic auth
+
+If your webhook requires basic auth, we recommend using a secret to store the password value. Reference the secret value in the password field by entering `${user.}` where `` is the name of the secret. For example, `${user.myBasicAuthPassword}`.
+
+
+
+#### Important
+
+* For security reasons, if you enter a password value directly into the password field (without using a secret), the password value will not be displayed the next time the webhook is viewed. The existing password value will be maintained when other fields are updated. To update the password, enter a new value and click the Update button.
+
+* If you wish to test the execution of a webhook with a plain text (non-secret) password, you will need to enter it into the password field again before pressing the test button.
diff --git a/website/docs/docs/user-interface/application.md b/website/docs/docs/user-interface/application.md
index 24d2aa5a..d095fdb0 100644
--- a/website/docs/docs/user-interface/application.md
+++ b/website/docs/docs/user-interface/application.md
@@ -2,30 +2,25 @@
title: Application
---
-Applications (or "Pacticipants") are the center of the PactFlow experience. From this page, you can:
+Applications (or "Pacticipants") are at the center of the PactFlow experience. From this page, you can:
1. See all versions of your application.
2. Discover all integrated applications and their contracts.
3. See the health of the application at a glance.
-4. Check if you application is deployable.
-5. Configure you application settings.
-
+4. Check if your application is deployable.
+5. Configure your application settings.
### Version Details
-In the left-hand panel, all versions of the currently selected application can be seen.
-
-Select a version to see the details.
+In the left-hand panel, you can see all versions of the currently selected application. Select a version to view its details.

### Compatibility
-This tab displays each of the integrated applications as tiles, showing a summary of the verification status of each integrated application.
-
-Each tile has a historical bar chart showing the compatibility of previous versions, hover over them to see details or click to pin them.
+This tab displays each of the integrated applications as tiles, showing a summary of the verification status for each. Each tile has a historical bar chart showing the compatibility of previous versions. Hover over the bar chart to see details, or click to pin them.
-Select a branch in each tile to see versions related to that branch, or use the toggle at the top to quickly change all tiles to the latest updated (latest) or main branch.
+Select a branch in each tile to see versions related to that branch, or use the toggle at the top to quickly change all tiles to the latest updated or main branch.
Click "View contract" to see a contract for a specific version.
@@ -33,7 +28,7 @@ Click "View contract" to see a contract for a specific version.
### Can I Deploy
-This tab shows the current deployability to a given environment (see the [`can-i-deploy`](https://docs.pact.io/pact_broker/can_i_deploy) docs for more). You must select a team from the drop-down to fetch environments related to the selectedteam before the results can be displayed.
+This tab shows the current deployability to a given environment (see the [`can-i-deploy`](https://docs.pact.io/pact_broker/can_i_deploy) documentation for more information). You must select a team from the drop-down menu to fetch environments related to the selected team before the results can be displayed.

@@ -41,7 +36,7 @@ Click on the link in the row to navigate to the specific verification result for
### Network
-This tab shows all directly applications directly integrated to the currently selected application. Click on a node to navigate to the collaborating application.
+This tab shows all applications directly integrated with the currently selected application. Click on a node to navigate to the collaborating application.

@@ -49,18 +44,18 @@ This tab shows all directly applications directly integrated to the currently se
#### General
-This tab allows you to see the name, and modify the display name of the application.
+This tab allows you to see and modify the display name of the application.

#### Version Control
-This tab allows you to specify the main branch and repository URL (e.g. a GitHub URL) for the application.
+This tab allows you to specify the main branch and repository URL (e.g., a GitHub URL) for the application.

#### Badge
-This tab allows you to generate `can-i-deploy` build build badegs for the current application.
+This tab allows you to generate `can-i-deploy` build badges for the current application.

\ No newline at end of file
diff --git a/website/docs/docs/user-interface/contract.md b/website/docs/docs/user-interface/contract.md
index dd24338c..b019161c 100644
--- a/website/docs/docs/user-interface/contract.md
+++ b/website/docs/docs/user-interface/contract.md
@@ -12,17 +12,17 @@ The following table describes the statuses displayed on this page:
-| Status | Description |
-| --------------------------------- | --------------------------------------------------------------------------------------------- |
-| ✅ | The pact has a successful verification published for it. |
-| ❗️ | The latest verification for the pact had failed. |
-| ⚠️ | No verification result has been published for the pact. |
+| Status | Description |
+| ------ | -------------------------------------------------------- |
+| ✅ | The pact has a successful verification published for it. |
+| ❗️ | The latest verification for the pact had failed. |
+| ⚠️ | No verification result has been published for the pact. |
You can see the interactions based on their status using the filter controls:
-
+
### Test Details
@@ -32,14 +32,14 @@ Each test scenario is broken down into:
1. The name of the scenario.
2. Zero or more provider states, where each provider state may have associated JSON parameters.
-3. The type of interaction (one of `Synchronous/HTTP`, `Synchronous/Messages` or `Asynchronous/Messages`).
+3. The type of interaction (one of `Synchronous/HTTP`, `Synchronous/Messages`, or `Asynchronous/Messages`).
4. The request and/or response(s) portion of the test.
-Each test may have zero or more errors associated with them.
+Each test may have zero or more errors associated with it.
#### HTTP Requests
-For HTTP interactions, the requests and responses are shown in the [HTTP Message](https://developer.mozilla.org/en-US/docs/Web/HTTP/Messages#http_requests) format, as you would expect to see from a [cURL](https://curl.se/) command.
+For HTTP interactions, the requests and responses are shown in the [HTTP Message](https://developer.mozilla.org/en-US/docs/Web/HTTP/Messages#http_requests) format, similar to what you would see from a [cURL](https://curl.se/) command.

@@ -47,14 +47,15 @@ Matching rules are hidden by default. Click the toggle to reveal the matching ru
#### Asynchronous Messages
-Asynchronous messages are unidirectional, and only have a "request" element:
+Asynchronous messages are unidirectional and only have a "request" element:

Matching rules are hidden by default. Click the toggle to reveal the matching rule information.
#### Synchronous Interactions
-Synchronous messages are bidirectional, and have a "request" element and one or more "response" elements:
+
+Synchronous messages are bidirectional and have a "request" element and one or more "response" elements:

@@ -62,20 +63,20 @@ Matching rules are hidden by default. Click the toggle to reveal the matching ru
#### Plugin Interactions
-Plugin interactions may be associated with HTTP, Asynchronous or Synchronous Messages. The layout of the tests will depend on which interaction type is being used.
+Plugin interactions may be associated with HTTP, Asynchronous, or Synchronous Messages. The layout of the tests will depend on the interaction type being used.
Additional information about the plugin will be displayed, including:
-1. Plugin markup - the plugin defined representation of the contract
-2. Plugin configuration - additional JSON configuration used by the plugin
+1. Plugin markup - the plugin-defined representation of the contract.
+2. Plugin configuration - additional JSON configuration used by the plugin.
-
+
Matching rules are hidden by default. Click the toggle to reveal the matching rule information.
#### Binary Content
-Binary content will be displayed as hexdump. ASCII characters will attempt to be displayed in the right-hand column:
+Binary content will be displayed as a hexdump. ASCII characters will attempt to be displayed in the right-hand column:
```
00000000: 0001 0305 1f0a 0962 6364 6566 6768 696a .......bcdefghij
@@ -85,28 +86,28 @@ Binary content will be displayed as hexdump. ASCII characters will attempt to be
### Application Information
-In the right panel, information about each application in the current integration is shown, including the version, current branch, tags and any deployed environments. The following actions are available from these tiles:
+In the right panel, information about each application in the current integration is shown, including the version, current branch, tags, and any deployed environments. The following actions are available from these tiles:
-- Copy contract URL - Copies the URL of the latest pact (consumer) or provider contract (provider)
-- Copy stub URL - Copies the URL of the [stub](/docs/stubs) created from the latest pact
+- Copy contract URL - Copies the URL of the latest pact (consumer) or provider contract (provider).
+- Copy stub URL - Copies the URL of the [stub](/docs/stubs) created from the latest pact.
-
-
+
+
### Pact Metadata
In the right panel, any metadata from the pact file is shown.
-### Menu items
+### Menu Items
The following actions are available on this page:
-
+
-- Refresh the page - updates the page to use newer data if available.
-- Delete verification results - deletes the currently visible (latest) verification result.
-- Delete pact for consumer version `:version` - deletes the current pact.
-- Delete the integration - deletes both pacticipants, and all associated data (pacts, verifications, application versions, tags and webhooks) that are not associated with other integrations.
-- Delete all pacts - allows you to remove all pacts between the current consumer and provider.
+- Refresh the page - Updates the page to use newer data if available.
+- Delete verification results - Deletes the currently visible (latest) verification result.
+- Delete pact for consumer version `:version` - Deletes the current pact.
+- Delete the integration - Deletes both pacticipants and all associated data (pacts, verifications, application versions, tags, and webhooks) that are not associated with other integrations.
+- Delete all pacts - Removes all pacts between the current consumer and provider.
-Some of these actions are only visible if the current user has the appropriate permissions, such as [contract_data:bulk_delete](/docs/permissions#contract_databulk_delete).
+Some of these actions are only visible if the current user has the appropriate permissions, such as [contract_data:bulk_delete](/docs/permissions#contract_databulk_delete).
\ No newline at end of file
diff --git a/website/docs/docs/user-interface/dashboard.md b/website/docs/docs/user-interface/dashboard.md
index 39fa72f1..a1459145 100644
--- a/website/docs/docs/user-interface/dashboard.md
+++ b/website/docs/docs/user-interface/dashboard.md
@@ -2,23 +2,25 @@
title: Dashboard
---
-This screen provides a way to quickly discover and access your applications.
+This screen provides a quick way to discover and access your applications.

## Favourites / Quick Access
-The top panel shows a subset of applications in a condensed view to allow quick access to applications.
+The top panel shows a subset of applications in a condensed view for quick access.
-Select the "My Favourites" item from the drop-down to see your saved applications. Favourite an application by clicking the star icon in list of applications below. Remove an icon from your favourites by clicking the cross icon.
+- Select "My Favourites" from the drop-down to see your saved applications.
+- Favourite an application by clicking the star icon in the list of applications below.
+- Remove an application from your favourites by clicking the cross icon.

-Select a team from the drop-down to see all applications in a specific team.
+Select a team from the drop-down to see all applications in that team.
## All Applications
-The bottom panel shows all applications in the account. Use the search box to filter the list of applications based on their name or display name. If you have many applications, pagination controls will appear to aid with navigation.
+The bottom panel shows all applications in the account. Use the search box to filter applications by their name or display name. If you have many applications, pagination controls will appear to aid navigation.

@@ -26,12 +28,11 @@ The bottom panel shows all applications in the account. Use the search box to fi
#### Feedback / Switch UI
-The feedback button will allow you to switch back to the old UI or provide feedback on the new UI.
+The feedback button allows you to switch back to the old UI or provide feedback on the new UI.
#### Settings
-The settings (or cog) button will take you to all the setting screens. Here you'll be able to setup
-[API tokens](#settings-api-tokens), [webhooks](#settings-webhooks), [users](#settings-users) and more.
+The settings (cog) button takes you to all the setting screens, where you can set up [API tokens](#settings-api-tokens), [webhooks](#settings-webhooks), [users](#settings-users), and more.
#### Help
@@ -39,4 +40,4 @@ The help link directs you to our documentation.
#### Profile
-The profile link shows the current logged-in user, the current version of PactFlow and a link to logout.
\ No newline at end of file
+The profile link shows the currently logged-in user, the current version of PactFlow, and a link to log out.
\ No newline at end of file
diff --git a/website/docs/docs/user-interface/migration/guide.md b/website/docs/docs/user-interface/migration/guide.md
index 168dab40..0785e5ab 100644
--- a/website/docs/docs/user-interface/migration/guide.md
+++ b/website/docs/docs/user-interface/migration/guide.md
@@ -2,11 +2,11 @@
title: Migration Guide
---
-If you are using PactFlow's Classic user interface (UI), this document provides an overview of the key changes introduced when moving to the new UI.
+If you are using PactFlow's Classic user interface (UI), this document provides an overview of the key changes introduced in the new UI.
## Viewing Integrations
-There is no longer a list of "integrations". Instead, the user interface is based around "applications". To discover the integrations for a specific application, you first must navigate to the application of choice.
+There is no longer a list of "integrations". Instead, the user interface is based around "applications". To discover the integrations for a specific application, you must first navigate to the application of your choice.
| Before | After |
| ----------------------------------------------------------------------- | ---------------------------------------------------------------------- |
diff --git a/website/docs/docs/user-interface/migration/new.md b/website/docs/docs/user-interface/migration/new.md
index 10809f16..544025ca 100644
--- a/website/docs/docs/user-interface/migration/new.md
+++ b/website/docs/docs/user-interface/migration/new.md
@@ -4,22 +4,25 @@ title: Overview
Welcome to your new home ❤️
-PactFlow's new user interface is a beautiful and intuitive user experience, optimised around our recommended best practices.
+PactFlow's new user interface offers a beautiful and intuitive experience, optimized around our recommended best practices.
-It has all of the key features you have come to enjoy, with a particular focus on:
+It includes all the key features you enjoy, with a particular focus on:
-1. An application-centric view of the world, to reflect the primary job of developers - creating, updating and maintaining *applications*.
-2. Deeper integration of capabilities such `can-i-deploy` into common workflows.
+1. An application-centric view that reflects the primary job of developers—creating, updating, and maintaining *applications*.
+2. Deeper integration of capabilities like can-i-deploy into common workflows.
3. Adoption of SmartBear's product design system to improve interoperability with other SmartBear products.
-
And much more.
## Upgrade to the New User Experience
-In the navigation bar of your account, simply click the "Try our new UI" button. You may be required to login again. If you ever need to switch back to the old UI, there is an option to switch back in the navigation bar:
+In the navigation bar of your account, click the "Try our new UI" button. You may need to log in again. If you need to switch back to the old UI, there is an option to do so in the navigation bar.
### Providing Feedback
-On any page of the new user interface, you can provide us feedback. Click the "take survey" button under the "Switch UI" in navigation. You can complete this survey multiple times as required.
\ No newline at end of file
+On any page of the new user interface, you can provide feedback by clicking the "take survey" button under "Switch UI" in the navigation bar. You can complete this survey multiple times as needed.
+
+### Migrating from the Previous UI
+
+To understand the key changes introduced in the new UI, see the [migration guide](/docs/user-interface/migration/guide).
\ No newline at end of file
diff --git a/website/docs/docs/user-interface/settings/roles.md b/website/docs/docs/user-interface/settings/roles.md
index 645aeac4..c506c0e0 100644
--- a/website/docs/docs/user-interface/settings/roles.md
+++ b/website/docs/docs/user-interface/settings/roles.md
@@ -2,13 +2,13 @@
title: Roles
---
-PactFlow comes with a number of default [roles](/docs/permissions/predefined-roles). You can create your own custom roles to customise the role-based access model to your security needs. Some roles, such as the `Team Administrator` role, are not user-editable. These locked roles are denoted by a 🔒 icon.
+PactFlow comes with a number of default [roles](/docs/permissions/predefined-roles). You can create custom roles to tailor the role-based access model to your security needs. Some roles, such as the `Team Administrator` role, are not user-editable. These locked roles are denoted by a 🔒 icon.
Only users with the `role:view:*` permission can view all roles.

-Click on a tile to edit a role, or the ellipsis to copy the role's UUID.
+Click on a tile to edit a role or on the ellipsis to copy the role's UUID.
## Create a Role
@@ -18,8 +18,8 @@ Only users with the `role:manage:*` permission can create new roles.
### Role Fields
-| Field | Description |
-| ---------- | ----------- |
-| Name | Give a name to your role. |
-| Description | Describe the purpose of the role. |
-| Permissions | Select the permissions you would like the role to have. |
\ No newline at end of file
+| Field | Description |
+|-------------|------------------------------------------|
+| Name | Give a name to your role. |
+| Description | Describe the purpose of the role. |
+| Permissions | Select the permissions you want the role to have. |
\ No newline at end of file
diff --git a/website/docs/docs/user-interface/settings/system-accounts.md b/website/docs/docs/user-interface/settings/system-accounts.md
index 6267870a..9a57209f 100644
--- a/website/docs/docs/user-interface/settings/system-accounts.md
+++ b/website/docs/docs/user-interface/settings/system-accounts.md
@@ -2,36 +2,39 @@
title: System Accounts
---
-System accounts are a type of user account to be used only with API access. They are primarily for use with CI/CD systems to access PactFlow. You can have multiple system accounts, based on your plan.
+System accounts are user accounts specifically for API access, primarily used with CI/CD systems to access PactFlow. They are intended for machine-to-machine use. The number of system accounts you can have is based on your plan.
+
+:::info
+System accounts are not permitted to be used as a replacement for real users (i.e., people) who work with PactFlow - they must have their own dedicated user account. See the [FAQ](https://pactflow.io/faq/) for more.
+:::
From this screen, you can manage the following capabilities:
-* See the System Accounts in your organisation as well as their team membership, assigned roles, login and API token activity (all)
-* Create new System Accounts for the organisation (Administrators only)
-* Grant or remove administrator access to System Accounts (Administrator only)
-* Enable and disable System Accounts (Administrator only)
-* Delete System Accounts (Administrator only)
-* Edit System Account roles (Administrator only)
+* View system accounts in your organization, including their team membership, assigned roles, login, and API token activity (all users).
+* Create new system accounts for the organization (Administrators only).
+* Grant or remove administrator access to system accounts (Administrators only).
+* Enable and disable system accounts (Administrators only).
+* Delete system accounts (Administrators only).
+* Edit system account roles (Administrators only).

-1. If the current User is an Administrator, the option to create new System Accounts will be presented here.
-2. When a single System Account is selected, individual System Account actions are available to add/remove role, disable or delete the System Account.
-3. When multiple System Accounts are selected, these actions may be applied to all selected System Accounts
-
+1. If the current user is an Administrator, the option to create new system accounts will be presented here.
+2. When a single system account is selected, individual system account actions are available to add/remove roles, disable, or delete the system account.
+3. When multiple system accounts are selected, these actions may be applied to all selected system accounts.
## Delete and Disable a System Account
-You may delete or disable a system account. You may also select the user with the checkbox and use the bulk action menu. A deleted user will no longer appear in the UI and cannot be edited.
+You may delete or disable a system account. You can also select the user with the checkbox and use the bulk action menu. A deleted user will no longer appear in the UI and cannot be edited.
-Disabled users are hidden by default, and can be viewed by checking "Display disabled system accounts", where a disabled user can be re-enabled.
+Disabled users are hidden by default and can be viewed by checking "Display disabled system accounts," where a disabled user can be re-enabled.
## System Account Roles
-By default, each System Account is assigned the `CI/CD` role. See [Roles and Permissons](/docs/permissions/predefined-roles) for more information.
+By default, each system account is assigned the `CI/CD` role. See [Roles and Permissions](/docs/permissions/predefined-roles) for more information.
-There are a few options to change a user's role. The `Make Administrator`/`Remove Administrator` menu items allow administrators role to be added or removed. `Edit Roles` allows all the roles of a user to be edited. The `Add Role`/`Remove Role` bulk action menu items can add or remove a role from multiple users.
+There are several options to change a user's role. The `Make Administrator`/`Remove Administrator` menu items allow the administrator role to be added or removed. `Edit Roles` allows all the roles of a user to be edited. The `Add Role`/`Remove Role` bulk action menu items can add or remove a role from multiple users.
-## Federation with Google, GitHub or SAML2.0
+## Federation with Google, GitHub, or SAML2.0
-System Accounts are local accounts, and are not connected to social or SSO providers.
\ No newline at end of file
+System accounts are local accounts and are not connected to social or SSO providers.
\ No newline at end of file
diff --git a/website/sidebars.js b/website/sidebars.js
index ecee8953..ee788347 100644
--- a/website/sidebars.js
+++ b/website/sidebars.js
@@ -10,28 +10,50 @@ module.exports = {
label: 'New UI ✨',
items: [
'docs/user-interface/migration/new',
- 'docs/user-interface/migration/guide'
+ 'docs/user-interface/dashboard',
+ 'docs/user-interface/application',
+ 'docs/user-interface/contract',
+ 'docs/user-interface/bi-directional',
+ {
+ type: 'category',
+ label: 'Settings',
+ items: [
+ 'docs/user-interface/settings/api-tokens',
+ 'docs/user-interface/settings/preferences',
+ 'docs/user-interface/settings/webhooks',
+ 'docs/user-interface/settings/secrets',
+ 'docs/user-interface/settings/users',
+ 'docs/user-interface/settings/system-accounts',
+ 'docs/user-interface/settings/teams',
+ 'docs/user-interface/settings/roles',
+ 'docs/user-interface/settings/environments'
+ ]
+ },
+ 'docs/user-interface/migration/guide',
]
},
- 'docs/user-interface/dashboard',
- 'docs/user-interface/application',
- 'docs/user-interface/contract',
- 'docs/user-interface/bi-directional',
{
type: 'category',
- label: 'Settings',
+ label: 'Legacy UI',
items: [
- 'docs/user-interface/settings/api-tokens',
- 'docs/user-interface/settings/preferences',
- 'docs/user-interface/settings/webhooks',
- 'docs/user-interface/settings/secrets',
- 'docs/user-interface/settings/users',
- 'docs/user-interface/settings/system-accounts',
- 'docs/user-interface/settings/teams',
- 'docs/user-interface/settings/roles',
- 'docs/user-interface/settings/environments'
+ 'docs/ui-old/dashboard',
+ 'docs/ui-old/bi-directional',
+ 'docs/ui-old/can-i-deploy',
+ {
+ type: 'category',
+ label: 'Settings',
+ items: [
+ 'docs/ui-old/settings/api-tokens',
+ 'docs/ui-old/settings/preferences',
+ 'docs/ui-old/settings/webhooks',
+ 'docs/ui-old/settings/secrets',
+ 'docs/ui-old/settings/users',
+ 'docs/ui-old/settings/teams',
+ 'docs/ui-old/settings/environments'
+ ]
+ }
]
- }
+ },
]
},
{