Tab Panel

Tab panel modules allow add-ons to insert new elements into the following tabbed sections of the host application's user interface.

  • Issue page Activity section
  • Project page sidebar

The tab panel module takes care of integrating the add-on content into the application for you. The add-on content automatically gets the tab panel styles and decorators from the host application.

jiraProjectTabPanels and jiraProfileTabPanels are deprecated as of 1 October 2017.

The initial location for jiraProjectTabPanels was phased out of Jira Cloud in March 2015. We recommend that apps implement web items and web panels in the Jira project sidebar instead. Support for jiraProfileTabPanels has been removed. If your app has user-specific content, we recommend you create a general page and a link to this page from the user profile menu.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
  "modules": {
    "jiraIssueTabPanels": [
      {
        "url": "/my-issue-tab",
        "weight": 100,
        "name": {
          "value": "My Issue Tab Panel"
        },
        "key": "my-issue-tab"
      }
    ],
    "jiraProjectTabPanels": [
      {
        "url": "/my-project-tab",
        "weight": 100,
        "name": {
          "value": "My Project Tab Panel"
        },
        "key": "my-project-tab"
      }
    ]
  }
}

Properties

key
Type
Max length
100
Required
Yes
Pattern
^[a-zA-Z0-9-]+$
Description

A key to identify this module.

This key must be unique relative to the add on, with the exception of Confluence macros: Their keys need to be globally unique.

Keys must only contain alphanumeric characters and dashes.

The key is used to generate the url to your add-on's module. The url is generated as a combination of your add-on key and module key. For example, an add-on which looks like:

1
2
3
4
5
6
7
8
9
{
    "key": "my-addon",
    "modules": {
        "configurePage": {
            "key": "configure-me",
        }
    }
}

Will have a configuration page module with a URL of /plugins/servlet/ac/my-addon/configure-me.


name
Type
Required
Yes
Description

A human readable name.

Represents a string that can be resolved via a localization properties file. You can use the same i18n Property key and value in multiple places if you like, but identical keys must have identical values.

Example

1
2
3
4
{
  "value": "My text"
}

Properties

value
Type
Max length
1500
Required
Yes
Description

The human-readable default value. This will be used if no translation exists. Only the following HTML tags are supported: b, i, strong, em, and code.

i18n
Type
Max length
300
Description

The localization key for the human-readable value. Translations for the keys are defined at the top level of the add-on descriptor.


url
Type
Format
uri-template
Required
Yes
Description

Specifies the URL targeted by the tab panel. The URL is relative to the add-on's base URL.


conditions
Type
Description

Conditions can be added to display only when all the given conditions are true.


params
Type
Description

This object represents a map of key/value pairs, where each property name and value corresponds to the parameter name and value respectively.

Example

1
2
3
4
5
6
7
{
  "params": {
    "someOtherProperty": "someValue",
    "myCustomProperty": "myValue"
  }
}

weight
Type
Description

Determines the order in which the tab panel's link appears in the menu or list.

The "lightest" weight (i.e., lowest number) appears first, rising relative to other items, while the "heaviest" weights sink to the bottom of the menu or list.

Built-in web items have weights that are incremented by numbers that leave room for additional items, such as by 10 or 100. Be mindful of the weight you choose for your item, so that it appears in a sensible order given existing items.