Common modules
Compass modules
Confluence modules
Jira modules
Jira Service Management modules

Rate this page:

Jira admin page

The jira:adminPage module adds an item in the Apps section of the left navigation of Jira admin settings. When the item is clicked, content is rendered on a new Jira page. You can use the UI kit or custom UI to create content for the Jira page.

This module can be used in Jira Work Management, Jira Software, and Jira Service Management.

The page URL is constructed in the following format: /jira/settings/apps/{appId}/{envId}

See the AdminPage component documentation for an example. When adding this to your app, use it as a top-level component.

Example of an admin page

To organize your Jira admin space and simplify the app management, create Configure and Get started pages.

Configure page

On the Configure page, you can store your app’s configure settings.

The page URL is constructed in the following format: /jira/settings/apps/configure/{appId}/{envId}

Example of a configure page

To create this page, use the useAsConfig property.

When it’s set to true, it creates a Configure button that leads to this page from the app's entry in Manage Apps.

Example of a configure button in Manage Apps

The jira:adminPage entry with the useAsConfig property won't be displayed on the sidebar.

Related: Configuring apps

Get started page

On the Get started page, you can provide information on how to start using your app.

The page URL is constructed in the following format: /jira/settings/apps/get-started/{appId}/{envId}

Example of a get started page

To create this page, use the useAsGetStarted property.

When it’s set to true, it creates a Get started button that leads to this page from the app's entry in Manage Apps.

Example of a get started button in Manage Apps

The jira:adminPage entry with the useAsGetStarted property won’t be displayed on the sidebar.

Related: Manage your apps

Subpages

By default, the jira:adminPage module registers a top-level page. However, you can register multiple pages using the pages and sections properties.

Use pages to add individual pages to the sidebar and sections to group pages.

Handle sidebar URLs

The sidebar will only change the admin page URL, you'll need to handle routes inside your custom UI app using view.createHistory().

Limitations

Subpages only work with custom UI.

Subpages are not supported by the Configure and Get started pages.

Validation rules

Take into account the following validation rules when creating a jira:adminPage entry:

  • the jira:AdminPage module can only have a single entry that doesn’t include either useAsConfig or useAsGetStarted properties.
  • the jira:AdminPage module can only have a single entry that includes either useAsConfig or useAsGetStarted property.
  • the jira:AdminPage entry that includes either useAsConfig or useAsGetStarted properties can’t include either pages or sections.

You'll see an error message if these aren't followed.

Manifest example

The jira:adminPage module example containing both Configure and Get Started pages:

1
2
modules:
  jira:adminPage:
    - key: admin-page-example-hello-world-admin-page
      function: main-admin-page
      title: Admin page example
    - key: admin-page-example-hello-world-configure-page
      function: main-configure-page
      title: Configure page example
      useAsConfig: true
    - key: admin-page-example-hello-world-get-started-page
      function: main-get-started-page
      title: Get started page example
      useAsGetStarted: true
  function:
    - key: main-admin-page
      handler: index.runAdminPage
    - key: main-configure-page
      handler: index.runConfigurePage
    - key: main-get-started-page
      handler: index.runGetStartedPage

Properties

PropertyTypeRequiredDescription
key

string

Yes

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

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

functionstringThe admin page module requires a function for use with the UI kit or a resource when building with custom UI.A reference to the function module that defines the admin page. This function must return the AdminPage component.
resourcestringA reference to the static resources entry that your admin page wants to display. See resources for more details.
resolver{ function: string }Contains a function property, which references the function module that defines the configuration of resource. Can only be set if the module is using the resource property.
titlestringYesThe title of the admin page, which is displayed at the top of the page. The title also appears as an item in the Apps section of the left navigation of Jira admin settings.
iconstringThe absolute URL of the icon that's displayed next to the title. Relative URLs aren't supported. A generic app icon is displayed if no icon is provided.
layout UI kit:
  • native
  • basic
Custom UI:
  • native
  • blank
  • basic (deprecated)
(default: native)
The layout of the admin page that defines whether a page is rendered with default controls (native), lays out the entire viewport with a margin on the left and breadcrumbs (basic for UI kit), or is left blank allowing for full customization (blank for custom UI).
useAsConfigbooleanSee the description here.
useAsGetStartedbooleanSee the description here.
pagesPage[]You can only specify `pages` or `sections` but not both.The list of subpages to render on the sidebar.
sectionsSection[]The list of sections to render on the sidebar.
displayConditionsobjectThe object that defines whether or not a module is displayed in the UI of the app. See display conditions.

Page

PropertyTypeRequiredDescription
titlestringYesThe title of the subpage, which is displayed on the sidebar.
iconstringThe URL of the icon that's displayed next to the subpage title. A generic app icon is displayed if no icon is provided.
routestringYesThe unique identifier of the subpage. This identifier is appended to the admin page URL.

Section

PropertyTypeRequiredDescription
headerstringThe section header.
pagesPage[]YesThe list of subpages to render on the sidebar.

Extension data

Custom UI

Use the getContext bridge method to access the extension context in custom UI.

PropertyTypeDescription
typestringThe type of the module.

UI kit

Use the useProductContext hook to access the context in UI Kit.

Extension context

PropertyTypeDescription
typestringThe type of the module.

Rate this page: