Customizable Teams

Change the layout and add custom content for all of the teams in your organization.

Introduction

The default layout of the teams page suits most organizations, but some may want to change what content appears for teams, or change the positioning of it. Customizing the team page allows you to select which widgets are visible and the layout of those widgets. Any changes made apply for all teams on your account.

Only administrators can customize their account's layouts via the UI Customization page under Settings.

Customizing Layout

To edit team content and layout, enter Edit mode by clicking the Edit Layout button.

Edit Layout Button

Repositioning

From the Edit mode, you can toggle the visibility of widgets on teams. You can also drag and drop them to rearrange and resize them.

Edit Layout View

Disabling

Sometimes, a widget is not useful to your organization's teams. In those cases, you can disable the widget by toggling the visibility of the widget

Toggle Widget View

To re-enable the widget, you can find the disabled widget in the Hidden Items section at the bottom of the page.

Hidden Items View

Previewing

You can (and should) preview your layout as a particular team to ensure that the new layout does not look too compressed and shows your team information as you expect by selecting a team and clicking the Preview button.

Preview Selection View

The preview modal shows the view as it will appear on the selected team page.

Preview Result View

Canceling and Resetting

If you want to revert to your previously saved state, discarding your updates since you last saved, you can do so by pressing the Cancel button.

Cancel Button

If you want to discard all of your changes, including custom widgets that you or others might have created, you can press the Reset to Default button. This will revert all changes and remove all saved configurations.

Reset to Default Button

Saving

Once you are happy with the new layout, you can exit Edit mode by pressing the Save button.

Save Layout View

Once you are finished editing the view, the changes will persist on your account for all users.

Custom Widgets

In addition to rearranging and hiding widgets, you can add custom widgets to the page for all of your teams. Sometimes these widgets will be the same for each team, and other times you can use liquid templates to allow each team's custom widget to render different content.

There are several caveats on what types of websites can be rendered in a custom widget. See the explanation about what can be included.

To begin, press the New Widget button.

New Widget Button

Enter the title of the widget card, an optional description, the URL (which can use liquid templates for custom content per team), and the minimum height of the content.

New Widget Modal

Liquid Templating

A custom widget's URL field supports liquid templating. When templates are evaluated, they receive a context object. This allows the action to behave dynamically based on the information in the team's context.

Context fields are accessed using Liquid's double handle bar notation: {{ identifier }}. When evaluated this would be replaced by the matching value in the context.

The context contains the following properties:

Description
team.hrefA link to the HTML page for the team.
team.idThe unique identifier for the team.
team.nameThe display name of the team.
team.contactsAn object representing the contacts for the team.
team.managerAn object representing the manager of the team.
team.slugThe URL friendly name of the team.
team.service_statAn object representing the stats about the team's service statistics.
team.tagsAn object representing the tags for the team.

Filters

In addition to Liquid’s standard filters, we also support:

contacts_by_display_name

Find contacts by their display name

  • Input: {{ team | contacts_by_display_name: 'pagerduty' }}
  • Output: \[contact_1, contact_2\]
tag_value

Returns the value of the first matching tag.

  • Input: {{ team | tag_value: "version" }}
  • Output: "3.2.1"
tag_values

Returns the array of matching tag values.

  • Input: {{ team | tag_values: "ip" }}
  • Output: \["1.1.1.1", "2.2.2.2"\]

This can be combined with the standard filters to extract specific values:

  • Input: {{ service | tag_values: "ip" | last }}
  • Output: "1.1.1.1"