Bitbucket modules
Common modules
Compass modules
Confluence modules
Jira modules
Jira Service Management modules
Rovo modules (Preview)

Jira backlog action (preview)

This section describes a Forge preview feature. Preview features are deemed stable; however, they remain under active development and may be subject to shorter deprecation windows. Preview features are suitable for early adopters in production environments.

We release preview features so partners and developers can study, test, and integrate them prior to General Availability (GA). For more information, see Forge release phases: EAP, Preview, and GA.

The jira:backlogAction module adds a menu item to the more actions (•••) menu on the backlog view. When the menu item is clicked, the associated Forge app for the module is rendered.

Example of an backlog action button

Manifest structure

1
2
modules {}
└─ jira:backlogAction []
   ├─ key (string) [Mandatory]
   ├─ resource (string) [Mandatory]
   ├─ render (string) [Optional]
   ├─ resolver {} [Optional]
   ├─ title (string | i18n) [Mandatory]
   ├─ tooltip (string | i18n) [Optional]
   ├─ icon (string) [Optional]
   ├─ actionType (string) [Optional]
   ├─ viewportSize (string) [Optional]
   ├─ displayCondition {} [Optional]
   └─ actions [] [Optional]
     ├─ key (string) [Mandatory]
     ├─ title (string | i18n) [Mandatory]
     ├─ tooltip (string | i18n) [Optional]
     ├─ actionType (string) [Optional]
     └─ viewportSize (string) [Optional]

resources []
├─ key (string) [Mandatory]
└─ path (string) [Mandatory]

Properties

PropertyTypeRequiredDescription
key

string

YesA key for the module, which other modules can refer to. Must be unique within the manifest.

Regex: ^[a-zA-Z0-9_-]+$

resourcestringYesA reference to the static resources entry that your context menu app wants to display. See resources for more details.
render'native'Yes for UI KitIndicates the module uses UI Kit.
resolver{ function: string } or
{ endpoint: string }
Yes

Set the function property if you are using a hosted function module for your resolver.

Set the endpoint property if you are using Forge remote to integrate with a remote back end.

viewportSize'small', 'medium', 'large', 'xlarge' or 'max'The display size of resource. Can only be set if the module is using the resource property. Remove this property to enable automatic resizing of the module.
titlestring or i18n objectYes

The title of the backlog action, which is displayed as a menu item.

The i18n object allows for translation and is available to participants of the Internationalization for Forge EAP. See i18n object.

tooltipstring or i18n object

The tooltip of the backlog action menu item, which is displayed on hover.

The i18n object allows for translation and is available to participants of the Internationalization for Forge EAP. See i18n object.

iconstring

The icon displayed next to the title.


For custom UI and UI Kit apps, the icon property accepts a relative path from a declared resource. Alternatively, you can also use an absolute URL to a self-hosted icon. See Icons for more information.

If no icon is provided, or if there's an issue preventing the icon from loading, a generic app icon will be displayed.

displayConditionsobjectThe object that defines whether or not a module is displayed in the UI of the app. See display conditions.
actionType'modal' or 'dynamic'

Specifies how an action is executed by the app, providing options for modal or dynamic implementations. Defaults to 'modal'. See action type.

actionsActionDefines nested actions supported by this module, which are accessed by hovering on the app item in the more actions menu. See Action.
actions.key

string

Yes, if using actions

A key for the action nested in this module, which allows the app resources to load different setups or code paths based on the action triggered. Must be unique to the module.

Regex: ^[a-zA-Z0-9_-]+$

To determine the key of the action that was triggered, use the action property in the extension property of the context object.

For example: (await view.getContext()).extension.action;

actions.titlestring or i18n objectYes, if using actions

The title of the action, which is displayed as a nested menu item.

The i18n object allows for translation and is available to participants of the Internationalization for Forge EAP. See i18n object.

actions.tooltipstring or i18n object

The tooltip of the action menu item, which is displayed on hover.

The i18n object allows for translation and is available to participants of the Internationalization for Forge EAP. See i18n object.

actions.viewportSize'small', 'medium', 'large', 'xlarge' or 'max'The display size of resource. Can only be set if the module is using the resource property. Remove this property to enable automatic resizing of the module.
actions.actionType'modal' or 'dynamic'Specifies how an action is executed within the app, providing options for modal or dynamic implementations. Defaults to 'modal'. See action type.

i18n object

Internationalization (i18n) for Forge apps is now available through Forge's Early Access Program (EAP). For details on how to sign up for the EAP, see the changelog announcement.

EAPs are offered to selected users for testing and feedback purposes. APIs and features under EAP are unsupported and subject to change without notice. APIs and features under EAP are not recommended for use in production environments.

For more details, see Forge EAP, Preview, and GA.

KeyTypeRequiredDescription
i18nstringYesA key referencing a translated string in the translation files. For more details, see Translations.

Extension data

UI Kit and Custom UI

Use the useProductContext hook to access the extension context in UI Kit or getContext bridge method in custom UI.

PropertyTypeDescription
typestringThe type of the module.
project.idstringThe id of the project where the module is rendered.
project.keystringThe key of the project where the module is rendered.
project.typestringThe type of the project where the module is rendered.
board.idstringThe id of the project where the module is rendered.
board.type"simple" | "scrum" | "kanban"The type of the board where the module is rendered.

Manifest example

1
2
modules:
  jira:backlogAction:
    - key: hello-world-backlog-action-module
      resource: main
      resolver:
        function: resolver
      render: native
      title: Hello World
      icon: https://developer.atlassian.com/platform/forge/images/icons/issue-panel-icon.svg
      viewportSize: medium
      actions:
        - key: action_1
          title: Action 1
        - key: action_2
          title: Action 2
          tooltip: tooltip for action 2
          viewportSize: small

Example app


Jira project stats app

Rate this page: