Feature Flag

This module allows third-party providers to send feature flag information to Jira and associate it with an issue.

Supplied feature flag information will be presented in the right sidebar of the new Jira issue view under Releases.

This module also provides actions, which allow users to create or link existing feature flags to Jira issues.

Feature flag information is written/deleted via REST. This API is part of the Jira Software REST documentation.

Note that the module key and name are not considered private and should therefore not contain any sensitive or personally identifiable information.

When a user uninstalls an app, all the data that the app sent to Jira is deleted. If the app is reinstalled, this data won't be added back unless the app resends historical information to Jira.

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": {
    "jiraFeatureFlagInfoProvider": {
      "homeUrl": "https://myfeatureflagprovider.com",
      "logoUrl": "https://myfeatureflagprovider.com/images/logo.svg",
      "documentationUrl": "https://myfeatureflagprovider.com/docs/jira-integration",
      "actions": {
        "createFlag": {
          "templateUrl": "https://myfeatureflagprovider.com/integration/jira/create?issueKey={issue.key}"
        },
        "linkFlag": {
          "templateUrl": "https://myfeatureflagprovider.com/integration/jira/link?issueKey={issue.key}"
        },
        "listFlags": {
          "templateUrl": "https://myfeatureflagprovider.com/integration/jira/flags?issueKey={issue.key}"
        }
      },
      "name": {
        "value": "My Feature Flag Provider"
      },
      "key": "featureflag-integration"
    }
  }
}

Properties

homeUrl
Type
Format
uri
Required
Yes
Description

URL to the provider's homepage


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.


actions
Type
Description

Optional actions that can be performed by Jira users, e.g., link an existing flag, create a new flag, etc.

Feature flag actions that can be performed by Jira users.

Each action is optional (unless indicated otherwise). The absence of an action indicates that the action is not supported by the provider.

Properties

createFlag
Type
Description

Action for creating a feature flag and linking it with a Jira issue.

Defines the URL template that is used when an action is invoked. The following context parameters are supported: {issue.key}, {issue.summary}, {issue.flags}.

linkFlag
Type
Description

Action for linking an existing feature flag to a Jira issue.

Defines the URL template that is used when an action is invoked. The following context parameters are supported: {issue.key}, {issue.summary}, {issue.flags}.

listFlags
Type
Description

Action for showing all linked feature flags, when there are multiple feature flags linked to a Jira issue.

Defines the URL template that is used when an action is invoked. The following context parameters are supported: {issue.key}, {issue.summary}, {issue.flags}.


documentationUrl
Type
Format
uri
Description

Optional URL to documentation about the provider's Jira integration


logoUrl
Type
Format
uri
Description

Optional URL to the provider's logo, which will be displayed in the UI