Add extensions and custom controls to a work item type (Inheritance process)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

With extensions, you can add rich functionality to your work item forms. An extension comes in four flavors, or contribution types. The following controls appear on the web form layout for all inherited and customizable work item types (WITs):

  • Field-level contribution (custom controls)
  • Group-level contribution
  • Page-level contribution

The fourth type, action-level contributions, on the other hand, appear in the context menu of the web form.

Important

The Inheritance process model is available for projects configured to support it. If you’re using an older collection, check the process model compatibility. If your on-premises collection is configured to use the on-premises XML process model, you can only use that process model to customize the work tracking experience. For more information, see Choose the process model for your project collection.

You add all contributions by installing its extension from the Visual Studio Marketplace, Azure DevOps tab. Or, you can create your own custom control.

For example, you can add the Who recently viewed a work item? extension. This group-level contribution appears in your work item form as shown.

Work item form, group extension example, Who viewed this

Prerequisites

For guidance on tailoring Azure Boards to align with your specific business requirements, see About configuring and customizing Azure Boards.

  • Organization requirement: Ensure you have an organization in Azure DevOps.

  • Permissions:

    • Be a member of the Project Collection Administrators group.
    • Have collection-level permissions such as Create process, Delete process, Edit process, or Delete a field from organization set to Allow.
    • These permissions allow you to modify processes and fields within your organization.
  • Project process model requirement:

  • Permissions:

    • Be a member of the Project Collection Administrators group.
    • Have collection-level permissions such as Create process, Delete process, Edit process, or Delete a field from organization set to Allow.
    • These permissions allow you to modify processes and fields within your organization.

To add extensions or edit a process, you must be a member of the Project Collection Administrators group or be granted explicit permissions to edit a specific process.

Open organization process settings

  1. Sign in to your organization (https://dev.azure.com/{yourorganization}).

  2. Select Organization settings.

    Screenshot showing Organization settings button for selection.

  3. Select Process.

    Screenshot showing highlighted Process button for selection.

  1. Sign in to your collection (https://dev.azure.com/{Your_Collection}).

  2. Select Collection Settings or Admin settings.

  3. Select Process.

    Screenshot showing highlighted Process button in Collection settings.

Note

When you customize an inherited process, any projects using that process automatically reflect the customizations. To ensure a smooth transition, we recommend creating a test process and project, which allows you to test your customizations before you implement them organization-wide. For more information, see Create and manage inherited processes.

Review installed Marketplace extensions

From the Settings context, Extensions, you can view the extensions that are already installed. You may need to choose Refresh to refresh the page to show newly installed extensions.

Organization settings, Extensions page

To learn more about extensions, see Install free extensions.

Add a Marketplace extension

You can browse the Marketplace to determine what extension(s) you want to add.

  1. To add an extension to a work item type, choose your inherited process, the WIT, and then choose Get extensions.

    Process, WIT, Bug, Layout, Get extensions

  2. Select the extension you want to add. Here we choose the Work item checklist.

  3. Select the organization you want to add it to and choose Install.

    Visual Studio Marketplace, install extension

    Important

    Extensions you install are added to all WITs across all processes.

  4. Return to the process and WIT and verify the location of the extension is where you want it. Look for it at the bottom of the middle column and drag it to where you want it on the form.

    Group extension on Bug work item form

Add a field-level contribution or custom control

  1. Install the custom control as discussed in the previous section.

  2. Open Settings>Work>Process from a work item form. For details, see Open Settings>Process.

  3. (Optional) Add a field to associate with the custom control. Alternatively, you can specify an existing field, inherited or custom.

  4. With the WIT selected, choose Add custom control.

    Process, WIT, Bug, Layout, New custom control

    Note

    If you don't see the Add custom control option, then you haven't installed a field-level extension. Or, you may need to refresh your browser to cause your browser to register any new extensions that have been recently installed.

  5. Choose the custom control you want from the menu of options.

    For example, here we choose the Toggle control that you can associate with a Boolean field.

    Add a  custom control dialog, Definition tab

  6. Choose the Options tab and fill out the dialog box. The options you need to specify depend on the custom control you've selected.

    For example, here we specify the custom field, Triaged, and indicate the toggle labels to appear on the form.

    Custom control dialog

  7. (Optional) Open the Layout tab and specify the label for the field.

    Fill in any additional required fields. Review the extension description for guidance.

  8. Verify the working of the custom control by opening a work item of the type you modified. You may need to refresh your browser to see your changes.

    Here, we show how the control appears by default with the checkbox and then with the toggle control.

Boolean field with checkbox

Boolean field with toggle control

Boolean field with checkbox

Boolean field with toggle control

Group-level and page-level contributions

When you add group-level and page-level contributions, they are automatically added to all WITs defined for all processes, both inherited and custom. You can choose to hide these contributions from appearing on the form for a specific WIT, or move it within the form from the default location.

If you've installed a group or page contribution, refresh your browser, and then open a work item to view the placement of the contribution on the form. To move or hide the contribution, follow the guidance provided for the Layout tab.

Action-level contributions

Action-level contributions are added to the context menu of inherited and customizable WITs for both system and inherited processes. All action-level contributions are added to all work item types and cannot be hidden or removed without uninstalling or disabling the extension.

For example, the following image shows nine action-level contributions have been added and appear in the context menu for the user story.

User story web form, context menu, Action-level options

Programmatically add custom controls

You can use these REST APIs to work with extensions:

Note

Review changes made to an inherited process through the audit log. For more information, see Access, export, and filter audit logs.