Only this pageAll pages
Powered by GitBook
1 of 40

Custom Fields Suite

Loading...

Loading...

Loading...

Using app

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Integrations

Loading...

Loading...

Loading...

Loading...

Support

For solution partners

OTHER APPS BY APPSVIO 💖

Key benefits of cascading custom field

Improve data organizations, customer support, and internal workflows with advanced custom field.

🔑 What are the key benefits of using Jira issue templates in Atlassian project management?

  1. Enhanced Issue Creation

    Use Regex to validate field input, Dynamic custom field for calculated field behaviors, and multilevel select for a comprehensive data hierarchy.

  2. Effortless Configuration

    Easy setup of multilevel select custom fields with default values. Options for each level can be loaded in bulk, saving time and reducing setup complexity. Import and export configuration options streamline the setup process across different instances.

  3. Improved Customer Service

    Allows customers to specify their needs more accurately with a detailed hierarchy. Gain better-defined data in tickets by leveraging cascading fields, Regex validation, and Dynamic custom fields for enhanced input accuracy and dynamic responses.

  4. Flexible Data Management

    Custom fields can be filled in during issue creation and edited later, like any standard Jira custom field. Values can be presented and managed on the issue screen for easy reference and modification. Dynamic custom field ensures dynamic field content, while Regex provides input validation.

  5. Comprehensive Data Handling with Custom Fields Suite for Jira

    With Custom Fields Suite for Jira and expanded cascading fields, you gain better-defined values from customers and team workers, and can manage data more efficiently. This integration ensures that your fields are structured, validated, and dynamic, enhancing both data entry and management processes.

Delete options

Delete unused options from cascading custom field.

When you delete the option from the custom field, values on issues will be cleared.

How to delete an option?

  1. Go to the options for the selected custom field.

  2. Click on the option you want to delete.

  3. Click on the Delete, and that's all.

Use on the create issue view

Learn how to use Multilevel Select custom field right when creating issues. PS. As easy as pie🍰

The multilevel select custom field looks the same as the regular Jira select. Depending on which screen the Jira administrator added this custom field to, a Jira user can enter a value on the Create issue screen and the View issue screen.

Read how to add a custom field to the screen.

Create an issue with cascading custom field.

🐾 Steps

  1. Click Create on the top navigation in Jira.

  2. Click on the area below the multilevel select name to open the dialog.

  3. Choose values on the select lists.

  4. Click Save.

🎉 Result

A new issue with a filled Multilevel Select custom field has been created in Jira.

View issue screen to display or change values

🐾 Steps

  1. Click on the area next to the Multilevel Select name to open the dialog.

  2. Choose values on the select lists.

  3. Click Save.

🎉 Result

The Multilevel Select custom field has been edited on the issue.

By default, a custom field added to the View issue screen is visible in the right panel under Details. You can pin it to the top if you want - this field will be moved to the Pinned fields.

If you want to display this field in the left area, change its position in the configuration: Project settings > Issue layout. You can also create a tab on the screen and move this field there. It's configurable in the Project settings > Screens.

👉 Next steps

Let's check how to implement Multilevel Select field on the customer portal.

Calculate total story points

Learn how to use Dynamic custom field in Jira Software to improve business and software teams' workflow.

The development team has planned the sprint and broken down an epic into tasks and subtasks. Project Manager, Amy, wants to track the number of subtasks within the epic to better manage workload distribution and task progress. Amy requested the creation of a Dynamic Custom Field that automatically counts all subtasks within an epic. Admin configured the custom field using a Jira Expression to ensure the subtask count is dynamically updated without manual input.

Once the epic is planned, Amy opens the epic in Jira and immediately sees the "Total Subtasks" field displaying "5" This clear, automatic calculation allows Amy and the team to quickly understand the overall breakdown of work within the epic.

As more subtasks are created or completed during the sprint, the field updates automatically to reflect the latest count, giving the team a reliable way to track and manage task complexity. By implementing this dynamic custom field, the team benefits from improved visibility and automation, ensuring they always have an up-to-date view of the total subtasks in each epic.

multilevel-select-delete
dynamic-field

Use case

Explore use cases of using Jira Expressions custom field

Use Cases

Explore use cases of using Multilevel Select custom field.

Use case

Explore use cases of using Regex custom field.

Continue creating an issue.

  • Click Create to save values as a new issue in Jira.

  • Use saved values in JQL
    multilevel-field-create-issue
    multilevel-select

    Known limitations

    Read about limitation and restriction because of Forge

    As of today (January 2022), we know several limitations related to this app. In the brackets, you can see related tasks on the Atlassian side.

    • Due to technical limitations, you can't create more than 7 levels of selection.

    • You can't edit our custom field during a bulk edit operation.

    • When you put a field description in the custom field configuration, this text is not visible on the Create issue screen. A description provided by our app on the Create custom field screen is displayed under the field.

    Card Number Validation for Delegations

    See how you can use Regex custom field to improve internal workflow for example in HR project.

    The HR team in a company uses Jira Software to manage employee delegations. When an employee creates a new issue to settle delegation expenses, they need to provide their card number. To ensure that the card number is correct, the HR project admin asks the global admin to create a Regex custom field.

    The card number must follow a specific format: 16 digits grouped as 4 sets of 4 digits separated by space (e.g., 1234 5678 9012 3456 - ^\d{4} \d{4} \d{4} \d{4}$)

    Now, Emily creates issues to settle delegation. She needs to put her card number in dedicate field. Validation goes correct because there is no error or notice, so she is sure that she didn't miss any digit.

    By implementing this solution, the HR team can ensure that all card numbers are correctly formatted, leading to smoother and more efficient delegation settlements.

    Jira REST API integration

    Integrate app with Jira REST API

    Custom fields of type Multilevel Select are the same as native custom fields like Select or Cascading Select. It means you can use Jira REST API to get the values or create a new issue with Multilevel Select.

    How to update our fields on issue? You have to use this endpoint: https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put and as a payload, put what we have described in Create issue section 👇

    Main features of cascading field

    Explore the main features of Custom Fields Suite for Jira and discover how advanced cascading custom field can be a game-changer.

    🔑 Key features of Custom Fields Suite for Jira

    • Cascading custom field up to 7️⃣ levels and use it when creating an issue.

    Set up the Multilevel Select custom field with default values and add it to the issue scheme. Define a hierarchy of up to 7 levels and use it like any other custom field in Jira on the create issue screen.

    About Custom Fields Suite for Jira

    Hello 👋 This is the documentation for Custom Fields Suite for Jira - the app with advanced custom fields: cascading up to 7 levels, Regular Expressions (Regex), and Dynamic custom field.

    🚀

    What is a custom field?

    Custom fields in Jira are user-defined attributes that can be added to issues to capture specific information beyond the default fields provided by Jira. Custom fields allow organizations to tailor Jira to their unique workflows and data requirements. They can be of various types, such as text, date, number, user picker, and more, enabling teams to collect and track information pertinent to their processes, projects, and reporting needs.

    Display the number of linked issues

    Read how you can use the Dynamic custom field on the customer portal to take care of your customer better and improve communication between customers and the organization.

    Agent Phill got a ticket CUS-189 to resolve. He needs to assess its complexity first to know how to approach it. Dynamic field custom fields that count external and internal comments are added in this project screen, so after opening the ticket, he sees that there are 6 externals, and 2 internal comments. Also, the team uses Dynamic field to count attachments and linked issues, so Phill also sees the number of them. Having those numbers, Phill right away knows, that this incident is bigger and it can be global. Hen can immediately judge by the linked issues that it is not a single incident and is more complex, occurring among multiple reporters. It surely can take longer, so Phill can plan more hours to deal with it.

    Do you want to display linked issues in the view of request details? We've got you 🙌 .

    Regex custom field to validate data

    Regular Expression custom fields allow you to validate a field value format. You can only fill this field with format requirements specified in the custom field configuration.

    • Dynamic custom field

    Enhance your workflow and customer support with Dynamic custom fields using Jira Expression to get specific values. They are used for dynamic calculations, validations, and defining custom field behavior based on the context of issues or projects.

    • Use all three custom fields on the service desk portal.

    Expand the customer service experience and add a cascading custom field to the ticket creation process. Add to the request types Regex to validate the exact data you need, and show customers automated data with Dynamic custom field.

    • Use bulk filling levels in the cascading field when there are many options.

    Don't worry about complicated field setup. Load options for each level in bulk to save time.

    • Import/export configuration options from cascading custom field.

    You can import options you want to configure in cascading from the file to save time and not do it manually. Export other configurations when, for example, you are doing it on a test instance.

    • Enhance reporting of values from cascading custom field.

    Multilevel Select works as a gadget on the dashboard. A gadget working on the native dashboard collects values of each Multilevel Select field, giving a clear view of the results of a particular custom field.

    • Integration with eazyBI reports.

    Our custom fields are also compatible with eazyBI reports.

    What is the Cascading field in Jira?

    A cascading field in Jira allows users to select values hierarchically. This is often used to categorize issues with a multi-level classification system. For instance, selecting a value in the primary dropdown (e.g., "Hardware") might determine the available options in the secondary dropdown (e.g., "Laptop," "Desktop," "Printer"), thereby helping users provide more specific and structured information about an issue.

    💡 With Custom Fields Suite for Jira, you can create up to 7 levels of cascading fields and implement them on the service desk portal.

    🔜 What is the Regex field in Jira?

    The regular Expression field in Jira allows text validation in a specific, wanted format. For example, the Card number Regex custom field will accept only 16 digits. Another way is that it will show that the format does not match the requirements.

    🔜 What is Dynamic custom fields?

    The Dynamic custom field (Jira Expressions) is a read-only field that customizes how fields behave in Jira. For example, this custom field can use other issue properties to show its value, such as the number of linked issues. This custom field inserts or counts values from current Jira issues.

    💡Dynamic custom field is only read-only: in Jira issues and on the customer portal.

    Introducing a free ITSM e-book with the most common use cases, proven strategies, and practical flows for agents inside! Download here

    👋 Welcome to Custom Fields Suite for Jira

    The Custom Fields Suite for Jira app provides three advanced and non-standard custom fields that drive business logic and improve workflow.

    • Multilevel select: create cascading field up to 7 levels

    • Regex: validate a specific format in the field

    • Dynamic custom field: show values form other fields validated with syntax

    Your feedback is really important to us ❤️

    If you like our app, don’t be shy! Share your opinion on the app's listing in the Review tab.

    👉 Next steps: Main features and key benefits

    Watch webinar: Building an efficient service catalog with Jira Service Management
    Try Feature Bundle for free
    regex-card-validation

    ⭐️ Best practices

    How get most of cascading custom field? Read best practices on how to utilize multilevel select custom field.

    Use templates in Regex and Dynamic custom field

    • When creating a Regex or Dynamic custom field, check for a template for your case to speed up the process.

    Use Clear Names and Descriptions:

    • Ensure that both the names of the custom fields and their options are clear and easily understandable by both customers and employees.

    Avoid Deleting Options Unnecessarily:

    • Instead of deleting options from multilevel select fields, disable them if they are no longer needed. This ensures historical data remains intact and can still be referenced if needed in the future. Disabled options can always be re-enabled if required.

    Create Multiple Contexts Instead of Multiple Custom Fields:

    • Where possible, use multiple contexts for a single custom field rather than creating numerous custom fields. This approach minimizes clutter in your Jira instance and makes field management more efficient. Contexts allow the same custom field to have different options based on project or issue type.

    Import and Export Options and use Bulk filling:

    • Utilize import and export functionalities to manage options in multilevel select fields efficiently. When dealing with a large number of options, these features allow for quick updates and backups, saving time and ensuring consistency.

    Use Gadgets to Analyze Data:

    • Leverage Jira gadgets to analyze and visualize data captured through multilevel select fields. Gadgets like pie charts and bar charts can help identify trends and make informed decisions based on the detailed data provided by these fields.

    Validate data that is crucial

    • Ensure the data you need to resolve or complete tasks is valid and accurate. Validate the format with the Regex custom field and eliminate corrections.

    By following these best practices, you can ensure that multilevel select fields in Jira are used effectively, providing valuable insights and maintaining data integrity across your projects.

    Get issue

    Below you can see part of the response you get when you get an issue via REST API. Read more about the endpoint at https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-get

    Create issue

    Below is an example of create issue payload with three options, selected in Multilevel Select. Read more about the endpoint at https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-post

    How to get an option ID?

    🐾 Steps

    1. Go to the Multilevel Select configuration.

    2. Find an option for which you need an ID.

    3. Click the chevron icon next to this option to expand the block.

    4. In the General configuration tab, you can find option ID. Click on the icon to copy it.

    Use on the service desk portal

    Allow you customers to define values with cascading custom field and gain specified data needed to ticket resolution.

    Integrating cascading custom fields into the service desk portal improves the customer service experience by enabling customers to accurately specify their needs through a detailed hierarchy, helping them select the most appropriate option.

    If the app wants an API Token, please update the app manually in the "Manage app" section. This is a previous version, and it's no longer needed.

    How to add a custom field to the portal?

    Remember to add your Multilevel Select custom field to appropriate screens, including those from Jira Service Management, and to request types.

    1. Go to the custom fields after choosing Issues in global settings.

    2. Find your custom fields and choose Screens and contexts.

    3. Add custom fields to the proper service desk project's screens.

    1. Now, you have to add the field to the request type in which you would like to use this field. Go to the project settings -> Request types -> Choose the one you need -> and custom field with drag and drop.

    2. This field is labeled as hidden—please don't bother. It's a configuration workaround. Also, as a hidden field, custom field names cannot be translated into languages.

    This field can't be set as required in the request type configuration.

    Result 🎉

    Now, you should display the Multilevel Select custom field on the portal in the chosen projects.

    When customers create tickets, they can define values from multilevel select catalogs.

    This custom field always loads at the end of the request form. It is impossible to change its position, regardless of the request form configuration.

    Agents see chosen values right in the ticket details in Jira.

    👉 Next steps

    Now let's explore how to manage values from the Multilevel Select custom field efficiently with the gadget.

    Use Regex on create issue view

    The Regex custom field looks the same as the regular Jira select. Depending on which screen the Jira administrator added this custom field to, a Jira user can enter a value on the Create issue screen and the View issue screen.

    Read how to add a custom field to the screen.

    Create an issue with Regex custom field.

    🐾 Steps

    1. Click Create on the top navigation in Jira.

    2. Click on the Regex field and fill in the data as usual in the text field.

    3. If the data is correct, there won't be any additional notice. If the validation goes wrong, there will be a message.

    1. Continue creating an issue.

    2. Click Create to save values as a new issue in Jira.

    🎉 Result

    A new issue with a Regext custom field has been created in Jira.

    View issue screen to display or change values

    🐾 Steps

    1. Click on the Regex field on the right side - in the issue details section.

    2. Put the data.

    3. Click Save.

    🎉 Result

    The Regex custom field has been edited on the issue.

    By default, a custom field added to the View issue screen is visible in the right panel under Details. You can pin it to the top if you want - this field will be moved to the Pinned fields.

    If you want to display this field in the left area, change its position in the configuration: Project settings > Issue layout. You can also create a tab on the screen and move this field there. It's configurable in the Project settings > Screens.

    📚 Featured articles

    Read more about use cases with Multilevel Select app. We try to make it easier on our users and share articles about it 📚 Enjoy the reading!

    Translate options

    Adjust options name to user localization and translate the values in cascading custom field.

    There is a possibility of translating the level's name, descriptions, and options.

    How to translate options?

    1. Go to the custom field and its context, and edit the custom field configuration just as you want to configure some levels.

    2. Below each tab, you will see a Translate option.

    3. Expand the Translate option, choose a language, and type the translated text.

    4. Go to the next levels if you want to translate other options.

    5. Don't forget to save the changes.

    Languages available:

    • English UK

    • English US

    • Chinese (China)

    • Chinese (Taiwan)

    Internal service catalog

    Use Multilevel Select in your internal processes to smooth the workflow.

    Anne leads an HR team and oversees a project that functions as an internal employee service desk. She wants to create an internal service catalog.

    Here's a breakdown of how the cascading select field levels might be structured based on the provided context:

    Workflow:

    • Anne asked the admin to create a custom multilevel select field named "Service Catalog"

    • The Multilevel Select field has levels:

    Service Categories

    EazyBI reports

    Use Multilevel Select custom field in EazyBI reports

    Utilizing the Multilevel Select custom field in eazyBI reports allows for more detailed and nuanced data analysis.

    When configuring reports in eazyBI, these fields enable users to segment and filter data based on multiple hierarchical criteria.

    For instance, a Multilevel Select field capturing the application, hosting type, and version in a support ticketing system can generate comprehensive reports on incident trends and resolutions.

    How to configure eazyBI with a Multilevel Select custom field?

    ☝️ First, make sure the is installed on your instance. If not, ask your admin.

    Use Regex on the service desk portal

    Discover how to add Regex custom field to request types and use it on the customer portal.

    Ensure your customers give you correct data and prevent mistakes and invalid formats. 👇

    How to add a Regex custom field to the portal?

    Remember to add your Regex custom field to appropriate screens, including those from Jira Service Management, and to request types.

    1. Go to the custom fields after choosing Issues in global settings.

    Scopes Justification

    Below we explain why the app requires each of the permissions (scopes) declared in manifest.yml. The descriptions are concise and refer to real usage in the code and the available gadgets.

    • storage:app — Persist app configuration, cached/aggregated data, and large tree data split into chunks in Forge Storage/KVS.

    • read:user-configuration:jira — Read the current user’s Jira preferences (e.g., locale) to properly render texts.

    Migrating from Multi-Level Cascading Select

    If you use Sourcesence app and you would like to merge to Multilevel Select, here is how to do it.

    How to merge from the Multi-Level Cascading Select app to Multilevel Select

    Multilevel cascading fields from the Multi-Level Cascading Select app are easily imported into the Multilevel Select configuration with only a few adjustments. Both apps have import/export features, so let's use it.

    1. Go to the Manage apps and find MLCS.

    "customfield_10045":{
       "ids":[
          "35f0ae78-814c-4f06-83b4-6b2d9792e4a3",
          "5cfd4afc-a325-4067-988d-030f863c4483",
          "fa32794b-164a-41fa-a54f-09f380cc1e4f"
       ],
       "values":"Vegetarian, Italian cuisine, Quatro Fromaggi Pizza",
       "value_level1":"Vegetarian",
       "value_level2":"Italian cuisine",
       "value_level3":"Quatro Fromaggi Pizza"
    }
    {
       "update":{},
       "fields":{
          "summary":"Issue created via REST API",
          "project":{
             "id":"10005"
          },
          "issuetype":{
             "id":"10007"
          },
          "reporter":{
             "id":"65263gf77rig3d3bd"
          },
          "customfield_10045":{
             "ids":[
                "83f0ae78-814c-4f06-83b4-9b2d9792e4a3",
                "5cfd4vfc-a325-4067-988d-030f863c4489",
                "fa32794b-164a-41fa-a54f-39f380cc1e4f"
             ],
             "values":"Vegetarian, Italian cuisine, Quatro Fromaggi Pizza",
             "value_level1":"Vegetarian",
             "value_level2":"Italian cuisine",
             "value_level3":"Quatro Fromaggi Pizza"
          }
       }
    }
    read:avatar:jira — Display user/project avatars in UI components that render users.
  • read:project-category:jira — Potentially used by the shared API client when resolving project metadata (categories) for configuration screens.

  • read:project:jira — Read project metadata when building configuration UIs and issue creation metadata.

  • read:field-configuration:jira — Read custom field configuration for a specific field in a project/issue type.

  • read:field:jira — List available Jira fields and schemas.

  • read:issue-meta:jira — Read issue creation metadata (fields and their defaults) for a project/issuetype.

  • read:issue-details:jira — Read issue details to display current values and context (e.g., on portal panel or config screens).

  • read:audit-log:jira — Included for administrative visibility required by shared admin tooling; no direct call currently in this repo.

  • read:issue-type:jira — Resolve issue types for a project and on a specific issue.

  • read:status:jira — Read status metadata that may be referenced by configuration and reporting UI (via standard issue payloads and metadata).

  • read:issue-security-level:jira — Ensure issue reads are permitted when issues are protected by security levels; some Jira APIs require this scope to read security level names.

  • read:user:jira — Read user details in contexts where accountIds are mapped to display names (report views, configuration UIs).

  • read:issue.changelog:jira — Some report UIs may aggregate over changelogs; included for compatibility with shared client components. Not directly referenced in this repository.

  • read:issue:jira — General read access to issue resources beyond details-only paths (covers a large part of GET /rest/api/3/issue and related subresources used across UI flows).

  • read:issue.vote:jira — Included for completeness with the shared client that can read vote info; not directly used in this repository.

  • write:issue:jira — Historically required by similar apps to modify native issue fields. In this app, updates are made to an App-owned field value via the Apps endpoint (see below). Direct writes to core issue fields are not performed in this repository.

  • read:custom-field-contextual-configuration:jira — Read custom field contexts/global context for a field to determine visibility and behavior.

  • read:jira-user — Read user profile information in broader contexts (some Jira Cloud orgs require this scope for certain user APIs). Used by the shared client while resolving User objects with avatarUrls.

  • read:jira-work — Read issues, fields and metadata necessary for the cascading select UI and related configuration screens; Jira classifies some of these as "work" data.

  • write:jira-work — Update app-managed field values via the Apps endpoint and potentially evaluate expressions that require broader work scope.

  • manage:jira-configuration — The Apps Custom Field Configuration APIs may require elevated configuration read access, and some operations in shared clients expect this manage-level scope for reading configuration at scale.

  • read:servicedesk-request — Read Jira Service Management (JSM) Request Type fields on the customer portal and internal screens.

  • service-desk-cascading-custom-field
    mulitlevel-select-config
    service-desk-catalog
    Czech
  • Dutch

  • Estonian

  • Finnish

  • French

  • Hungarian

  • German

  • Icelandic

  • Italian

  • Japanese

  • Korean

  • Norwegian

  • Polish

  • Portuguese (brazil)

  • Portuguese (Portugal)

  • Romanian

  • Russian

  • Slovak

  • Spanish

  • Swedish

  • Turkish

  • Vietnamese

  • How to create an ultimate internal service desk without Jira Service Management

    Agentless service desk: 5 hacks for seamless customer support in Jira

    Apptoberfest Demo: Multilevel Select for Jira

    Cover
    Cover
    Cover
  • Technical Support

    • Hardware Issues

      • Laptops

      • Desktops

    • Software Issues

      • Apps Error

        • App XYZ

          • Crashes

    • Network Issues

      • Connectivity Problems

      • VPN Setup

  • Project Management

    • Project planning

      • Requirements Gathering

      • Resource Allocation

  • Development Services

    • Web Development

      • Frontend Development

      • Backend Development

  • For example, Alice is tester in Technical Support team and works on features in ABC apps. So she chooses Technical Support -> Software Issues -> App ABC -> Features .

    Benefits:

    • Improved Usability: Users can easily find and select the relevant options without being overwhelmed by numerous fields.

    • Enhanced Readability: A single cascading select field with logical groupings makes the form more readable and reduces cognitive load.

    • Time Efficiency: Employees save time by quickly locating the necessary options, thus improving productivity and reducing frustration.

    • Cost Savings: By streamlining the process, the company reduces the time and resources spent on navigating and filling out complex forms, leading to cost savings.

  • Open the eazyBI home page, and then click on settings: ⚙️ on the right side.

  • Change the tab for advanced settings.

  • Now, we're at the place where we can configure Mutlilevel Select custom field.

  • You will need a custom field ID. When opening the custom field configuration, you can find it in the URL.

    1. Now paste the prepared code that should look like the one below.

    1. Define how many levels the custom field has in the levels section.

    2. Now, go to the Source Data tab and choose Jira.

    3. Define details and move to the custom fields tab.

    4. Find your custom field, and import.

    In advanced settings, you can see the configuration.

    eazyBI app

    Find your custom fields and choose Screens and contexts.

  • Add custom fields to the proper service desk project's screens.

  • Now, you have to add the field to the request type in which you would like to use this field. Go to the project settings -> Request types -> Choose the one you need -> and custom field with drag and drop.

  • This field is labeled as hidden—please don't bother. It's a configuration workaround. Also, as a hidden field, custom field names cannot be translated into languages.

  • This field can't be set as required in the request type configuration.

    Result 🎉

    Now, you can use the Regex custom field on the portal in the chosen projects.

    When customers create tickets, you will quickly validate data in this field.

    This custom field always loads at the end of the request form. It is impossible to change its position, regardless of the request form configuration.

    Agents see values right in the ticket details in Jira.

    Next, choose the Import/Export tab in the front navigation bar.

  • Export file in CSV. In the Sourcesence app, every level is represented by rows (like the image below 👇); you need to change it from columns to import custom fields into Multilevel Select.

  • Import from Sourcesense app
    1. Your file should look like this:

    1. Save the file in CSV.

    2. Use the Import feature in Multilevel Select. Go to the custom field -> Context ->Edit custom field config -> Settings (on the right side) -> Import in CSV

    3. If the file is not prepared correctly, you will get a notice.

    In the same way, you can import files in JSON. Details about the import and export features in our app can be found here, with an explanation of the file requirements.

    Use saved values in JQL

    This page describes how to search for values using JQL

    Multilevel Select for Jira provides a dedicated JQL searcher that lets you search for issues which include a filled multilevel select custom field. It works slightly different in comparison with regular select or cascading select custom fields. Each level has its representation in JQL.

    This searcher can be used in any place in Jira where using JQL is available: in the Issue Navigator, in a Saved Filter, as an Agile Board query, etc.

    For more information about JQL searching, see the official Atlassian documentation on Advanced Searching and Advanced Searching Functions.

    To find issues which include a multilevel select custom field, enter: "[customfield_name]" or "[customfield_name].levelX", where X is the number of level.

    In the advanced view in the Issue Navigator JQL autocomplete works only for values which have already been saved on issues. If an option is added in the configuration but is not yet selected on any issue in Jira, the autocomplete will not suggest it.

    If the option still fails to suggest despite appearing on the issue, check if JQL autocomplete is set to ON in the configuration. As a Jira administrator, go to the System > General configuration > JQL Auto-complete.

    Example

    Let's look at the multilevel select custom field called "Provide your country". Its structure is shown below.

    Provide your country

    Below are examples of how to search for issues depending on the values entered in the multilevel select custom field.

    You can create up to 7 levels for each multilevel select custom field. This limitation is due to performance issues.

    Forge custom field searcher

    In case of any issues with JQL, check if the proper searcher is set for the multilevel select custom field. The valid option is Forge custom field searcher.

    🐾 Steps

    1. Go to Issues > Custom fields.

    2. Find a multilevel select custom field which you want to configure.

    3. Click Edit details.

    4. Check Search template.

    👉 Next steps

    Let's check how to save searching as a filter and use it on the dashboard.

    Dynamic custom field

    Read how to configure Dynamic custom field based on Jira Expression.

    The Dynamic custom field lets you automatically count or put an actual value based on the issue, like a number of linked issues, attachments, or members of the groups based on age. This Dynamic custom field has an informational function for the user, customer, teamwork and actualizes the data automatically.

    This custom field is for read-only use in Jira.

    👀 Learn with an interactive demo

    How to configure Dynamic custom field?

    1. Go to the Issues in global settings and to the Custom Fields section.

    2. Create a new custom field and find it in the Advanced section "Dynamic custom field".

    3. Associate custom fields with the projects and screens you need: Please note that this is a read-only field, so match it with the request details view and issue view screens.

    This field works on the issue view and Request details view.

    1. In the already created custom field, choose Context -> Create, edit, or delete contexts -> Edit custom field config.

    2. Then, define Jira Expressions. You can use our templates or provide your code.

    Recommended Jira Expressions documentation .

    1. Run a test : Select an issue to see if it meets the expression above.

    2. Save the field.

    How to add a Dynamic custom field to the project?

    a) Company-managed project

    To add a custom field in a company-managed project, you can do it from the custom field level with Screens and context and then add or remove the associated screen.

    You can get the same result by adding a custom field to the list in Screens options on the left menu in Issue global settings. Remember to add this field only to issue views and Request details views. due to is read-only field.

    ⚠️ To add a custom field to the company-managed project, you must be a global admin.

    b) Team-managed project

    In a team-managed project, go to the project settings -> issue types -> Search for a field -> and add a custom field where needed.

    ⚠️ You can do it as project admin.

    Display Dynamic custom field on the issue view

    This custom field is read-only. This means that users or customers can't fill out this field; they only see the value.

    After adding the custom field to the screens, you can see the field value in issue details on the right side.

    Templates available

    • Comment count

    • Last comment time

    • Last comment time (readable)

    • Last comment author

    New hardware request

    Use cascading custom field to allow your employees select what they exactly need.

    The IT department has set up a request type to handle new hardware requests from employees. A custom multilevel select field streamlines the request process, allowing employees to specify the type of hardware they need and the associated specifications.

    Workflow:

    • Create a request type "New Hardware Request".

    • Create a custom multilevel select field named "Hardware Request Details.", and add it to the screens and request type.

    Incident Submission: App name and versions

    Use cascading custom field to improve ticketing process and incident resolution.

    A company uses the Jira service desk to manage customer support tickets. To streamline the process of incident reporting, a custom Multilevel Select field is implemented, allowing customers to specify the application, hosting type, and version involved in the incident.

    Workflow:

    Admin creates a custom field, adds it to the screen, and requests the type.

    Customer:

    • Logs into the Help Center.

    JSM Automation integration

    Integrate app with Jira Automation

    You can use set value to Multilevel Select custom field in Automation action. To do that, click on the More options and provide JSON which represents the options you want to save on the issue.

    How to get an option ID?

    Gadget on dashboards and filters

    Now, let think about how to manage values efficiently and make the most of them.

    How to use Multilevel Select as a gadget on the dashboard?

    Multilevel Select also works as a standard gadget. It displays which values are defined in each custom field and level and in which issues.

    Steps 🐾

    1. Create a new dashboard in the top navigation bar, or open an already created one and edit it.

    [jira.customfield_10082]
    data_type = "string"
    dimension = true
    levels = ["Level 1","Level 2","Level 3", "Level_4"]
    split_by = ", "
    javascript_code = '''
    var cfList = [];
    if (issue.fields.customfield_10038) {
    issue.fields.customfield_10082 = issue.fields.customfield_10038.values;
    };
    '''
    Features
  • Slow performance

  • App ABC

    • Crashes

    • Features

    • Slow performance

  • Software Installation

  • Execution and Monitoring

    • Task Tracking

    • Status Reporting

  • Project Closure

    • Deliverable Handover

    • Post-Implementation Review

  • Mobile App Development

    • iOS Development

    • Android Development

    custom-field-id
    eazy-bi-integration-multilevel
    multilevel-select-eazy-bi
    sourcesense-import
    multilevel-cascading-import

    San Jose

    Florida

    Nevada

    Europe

    Germany

    France

    Italy

    Africa

    Australia

    Search for issues which contains a word 'San' on any level

    Provide your country is EMPTY

    Search for issues where custom field is empty

    Provide your country is not EMPTY

    Search for issues which contains at least one value in the custom field

    Level 1

    Level 2

    Level 3

    USA

    California

    Fresno

    JQL

    Description

    "Provide your country.level1" = USA

    Search for issues where USA is selected on the first level

    "Provide your country.level2" = Florida

    Search for issues where Florida is selected on the second level

    "Provide your country.level1" = Europe and "Provide your country.level2" = Italy

    Search for issues where Europe is selected on the first level and Italy on the second level

    "Provide your country.level3" = Fresno

    Search for issues where Fresno is selected on the third level

    "Provide your country.level3" != Fresno

    Search for issues where on the third level is different value than Fresno (additionally, the third level must have any value)

    Gadget on dashboards and filters

    "Provide your country" ~San

    Creation time
  • Creation time (readable)

  • Days in prev status

  • Last status changer

  • Attachment size (bytes)

  • Attachment size (KB)

  • Attachment size (MB)

  • Attachment size (GB)

  • Attachment count

  • Is Done status

  • Child issues Done %

  • Done sub-tasks

  • Sub-task count

  • Sub-task components

  • Issue link count

  • Parent resolution

  • Parent status category

  • Project type

  • here
    jira-expression
    Cascading custom field can look like this:

    New Hardware Request

    • Hardware Types

      • Laptops

        • High performance

          • MacBook

            • 14'

            • 16'

            • 18'

          • Dell

            • 14'

            • 16'

            • 18'

          • Standard

            • HP

              • 14'

              • 15'

        • Desktops

          • High Performance

          • Standard

          • Compact

        • Monitor

          • 4K

          • Full HD

          • Ultrawide

        • Peripheral

          • Keyboard

            • Wireless

            • Standard

    Example Scenario:

    Jane needs a new laptop for remote work. She creates a "New Hardware Request" issue in Jira, selects "Laptop" in the first level of the multilevel select field, and then selects "Lightweight" in the second level. She would like a 16-inch MacBook. She submits the issue for review.

    Tom needs an ergonomic mouse for his home office setup. He creates a "New Hardware Request" ticket, selects "Mouse" in the first level of the multilevel select field, and then selects "Ergonomic" in the second level. He submits the issue for review.

    Benefits:

    • Efficient Request Process: The multilevel select field allows employees to provide detailed hardware requests in a structured and efficient manner.

    • Clear Specifications: Ensures that the IT department receives all necessary information to fulfill requests accurately.

    • Streamlined Review: IT can easily review and prioritize requests based on detailed specifications, improving response times and satisfaction.

    Creates a new ticket titled "Incident Report."
  • Fills out the custom multilevel select field named "Incident Details."

  • The multilevel select field "Applications" has three levels:

  • Applications

    • App A

      • Cloud

        • v. 1.0

        • v. 1.1

      • Data Center

        • v. 3.0

        • v. 3.1

        • v. 3.2

    • App B

      • Cloud

        • v. 2.1

        • v. 2.2.

    • App C

      • Cloud

        • v. 4.2.1

        • v. 4.0

    • Provides additional details about the incident in the description field.

    • Submits the ticket.

    Support Team:

    • Review the submitted ticket and the selected application, hosting type, and version.

    • Triages the issue based on the provided details and assigns it to the appropriate team member.

    • Investigates and resolve the incident, providing updates in the issue comments.

    • Updates the issue status to "Resolved" once the incident is addressed.

    Alice is encountering an issue with "App A" hosted on the cloud. She logs into the Jira Service Desk portal, creates an "Incident Report" issue, selects "App A" in the first level, "Cloud" in the second level, and "v1.1" in the third level. She describes the problem and submits the ticket.

    Bob encounters an issue with "App B" hosted on a Data Center - version 1.0. He creates an "Incident Report" issue, selects "App B" in the first level, "Data Center (DC)" in the second level, and "v.1.0" in the third level. He describes the issue and submits the ticket.

    Benefits:

    • Structured Reporting: The Multilevel Select field ensures that all necessary information about the application, hosting type, and version is captured in a structured manner.

    • Efficient Triage: Support teams can quickly triage and assign incidents based on the detailed information provided.

    • Improved Resolution Time: With clear and detailed incident reports, the support team can more efficiently investigate and resolve issues.

    🐾 Steps
    1. Go to the Multilevel Select configuration.

    2. Find an option for which you need an ID.

    3. Click the chevron icon next to this option to expand the block.

    4. In the General configuration tab, you can find option ID. Click on the icon to copy it.

  • Find Multilevel Select gadget.

  • Choose a cascading field you want to use and define how to group the results. You can group issues by Status Category, Priority, Assignee, and Status.

  • You can also add JQL filter.

  • Enjoy the results 🎉

  • You can easily navigate into issues containing the given level.

  • You can hide levels with no issues.

    Multilevel Select

    Let's configure multilevel cascading custom field.

    For all of the following procedures, you must be logged in as a user with the Jira Administrators global permission.

    👀 Learn with an interactive demo

    How to create a new multilevel select custom field with options?

    🐾 Steps

    1. Go to Issues > Custom fields.

    2. Create a new custom field of type Multilevel Select. You will find it in the advanced section.

    3. Click "Contexts and the default value" next to the custom field that has already been created.

    • You can create select deep up to 7 levels.

    • Each option within a level must have a unique name.

    How to add a Multilevel Select custom field to the project?

    a) Company-managed project

    To add a custom field in a company-managed project, you can do it from the custom field level with Screens and context and then add or remove the associated screen.

    You can get the same result by adding a custom field to the list in Screens options on the left menu in Issue global settings.

    ⚠️ To add a custom field to the company-managed project, you must be a global admin.

    b) Team-managed project

    In a team-managed project, go to the project settings -> issue types -> Search for field -> and add a custom field where needed.

    ⚠️ You can do it as project admin.

    👀 Now, create a cascading custom field by yourself with an interactive demo.

    Multilevel Select custom field works for every kind of project: business, software, service, company- and team-managed.

    How to set the field as required?

    If you would like to set this custom field as required on the create issue screen, check this option when setting up options.

    1. Go to Issues > Custom fields.

    2. Find the custom field you want to set as required or create a new one.

    3. Click "Contexts and the default value".

    4. Click Edit custom field config.

    How to add options in bulk?

    ⏰ To save time, you can add several options to a level at once.

    🐾 Steps

    1. Click Add options in bulk on the level to which you want to add options. Notice that this option adds options to the list; it is not a replacement (it does not remove existing ones).

    2. On the dialog, type in each option in a separate line. Use Enter to jump to the next line. Remember that the option’s name must be unique.

    3. Click Add to add options to the list.

    How to reorder options?

    You can change the position of options within a level. Hover over the drag-and-drop icon on the left side, grab the option, and move it anywhere. You can also click on the icon above the options and sort them alphabetically. Clicking the icon again will reverse the sort order.

    How to disable the option?

    If you don't need an option but don't want to lose data already written in issues, disable it. Don't delete it!

    🐾 Steps

    1. Go to the option that you want to disable.

    2. Click Disable.

    3. Click Save to save changes in the custom field.

    🎉 Result

    The disabled option is not available in the user's selection, and neither are its children. However, you can turn it on at any time by clicking Enable.

    👉 Next steps

    Let's check how to use it on the create issue view and customer portal.

    Security statement

    This security statement applies to the Cloud version of the Multilevel Select

    We are committed to improving our security posture. That’s why we created this page to answer basic questions about security in the Multilevel Select app.

    Since Oct 2023, we've been SOC2 type II compliant to meet the highest and most professional standards.

    The SOC 2 report is available to all our customers at any time at our Trust Center.

    Architecture

    Multilevel Select is built on the Forge platform. The app connects to Jira using OAuth2. It’s written in React and TypeScript.

    What does the data flow look like?

    TBD

    What customer data does the app process?

    We process accountIds.

    What data does the app store?

    The app stores options within the custom fields.

    Where are the data stored?

    All data are stored on the Atlassian infrastructure. Custom field options and app settings are stored via .

    What permission does the app require?

    This app requires four permissions:

    • Take Jira administration actions (e.g. create projects and custom fields, view workflows, manage issue link types).

    • View audit logs.

    • View system and custom avatars.

    • Read custom field contextual configurations.

    Does the app encode all data in transit and at rest?

    Yes.

    Does the app support data residency?

    Yes, thanks to using the Atlassian Forge platform. Here is the official announcement from Atlassian:

    Does the app have a data retention policy?

    Yes. Appsvio and Atlassian will delete all End User Personal Data (including copies) upon written request. More information is available in .

    Does the app have a data backup policy?

    Yes. More information is available in

    Useful links and more information

    If you have any questions about the security, e-mail .

    16'

  • Lenovo

    • 13'

    • 15'

    • 16'

  • Asus

    • 10'

    • 13'

    • 15'

    • 16'

  • Mouse

    • Wireless

    • Ergonomic

    • Standard

  • Headset

  • Docking Station

  • v. 2.3

  • Data Center

    • v. 1.0

    • v 1.1

  • v. 4.1.1

  • Data Center

    • v. 1.0

    • v. 1.1.

  • Read field configurations.

  • View fields.

  • View issue details.

  • View issue meta.

  • View issue security levels.

  • View issue types.

  • View issue changelogs.

  • View issue votes.

  • View issues.

  • View user information in Jira that the user has access to, including usernames, email addresses, and avatars.

  • Read Jira project and issue data, and search for issues and objects associated with issues like attachments and worklogs.

  • View the profile details for the currently logged-in user.

  • View project categories.

  • View projects.

  • View statuses.

  • View user configurations.

  • View users.

  • Read and write to the app storage service

  • Create and update issues.

  • Create and edit issues in Jira, post comments as the user, create worklogs, and delete issues.

  • Forge Storage
    https://www.atlassian.com/blog/developer/data-residency-is-coming-soon-in-beta-to-forge-hosted-storage-take-action-now-to-support-your-customers
    Forge DPA
    https://www.atlassian.com/trust/security/data-management
    Appsvio Trust Center
    Privacy Policy of Appsvio apps
    [email protected]
    gadget-mulitlevel-field
    muitlevel-select-for-jira
    Click Edit custom field config.
  • Create as many options as you need. Each parent option represents a separate selection.

  • To create a dependent select, click Options to open and configure a new level.

  • Click Save to save changes.

  • The option name is not limited to the number of characters.
  • Remember to add this custom field to the screen on which you want to use it.

  • In the left corner, there is the Settings drop-down. Choose the Set fields required.

  • If you mark the checkbox, the user must fill in all selects visible on the dialog.

  • Click Save to save changes in the custom field.
    Use on the create issue view
    set-as-required-custom-field
    cascading-custom-field-bulk

    💬 FAQ

    Here you can find the most frequently asked questions about Custom Fields Suite app.

    What custom fields are in this app?

    With this app, you can use Mutlilevel Select, Regex (Regular Expression), and Dynamic custom fields.

    Is Custom Fields Suite available on Data Center?

    No, this app is only for Cloud instances, and it's built with Forge.

    Which project are supported in Custom Fields Suite for Jira?

    Software, business and service.

    What is a multilevel select custom field in Jira?

    A multilevel select field is a custom field type in Jira that allows users to make selections across multiple hierarchical levels. For example, selecting an application, its hosting type, and version in a single field.

    Is Regex working on customer portal?

    Yes, all 3 custom fields can be used on the service desk portal.

    How to use Dynamic custom field?

    This field is based on Jira Expressions. Read about configuration .

    What kind of field is Regex?

    Regex is a text field.

    What is a difference between native cascading field in Jira?

    With Multilevel Select custom field you can create hierarchy up to 7 levels.

    Can I change the options in a Custom Fields Suite field without affecting existing data?

    Yes, you can disable options that are no longer needed instead of deleting them. This ensures that existing data remains intact and historical records are not affected.

    What should I do if I need different options for different projects?

    You can create multiple contexts for a single multilevel select field, allowing different sets of options to be used based on project or issue type. This avoids the need for multiple custom fields.

    How Dynamic custom field works?

    This custom field can dynamically store values within issue data thanks to Jira Expressions. This means the field is automatically updated when values change, such as story points.

    Can I use cascading multilevel select on the service desk portal?

    Yes, this app also supports service desk projects.

    How can I analyze data collected from multilevel select fields?

    This app works also as a gadget. Create a dashboard and display values.

    Can I revert a disabled option in a multilevel select field?

    Yes, disabled options can be re-enabled if they become relevant again. You can't reverse deleted options.

    Is it possible to bulk manage options in a Multilevel Select field?

    Yes, you can add options to each level in bulk. Read more .

    What kind of files I need to import configuration?

    Prepare a CSV or JSON file.

    Can I use JQL to search values?

    Yes, you can. Check out JQL formulas .

    here
    here
    here
    cascading-custom-filed

    Regex custom field

    Regex custom field is used to validate the values entered into the field - it can be used on the create issue screen and also on the customer portal.

    Regex custom field is only a text field.

    👀 Learn with an interactive demo

    How to configure Regex custom field?

    To create a Regex custom field, you need to have global permissions.

    1. Go to the Issues in global settings and to the Custom Fields section.

    2. Create a new custom field and find it in the Advanced section "Regex".

    3. Associate custom fields with the projects and screens you need.

    This custom field works with every kind of project.

    1. In the already created custom field, choose Context -> Create, edit, or delete contexts -> Edit custom field config.

    2. Now, let's configure Regex values. Use Templates or enter your pattern. Examples of use are .

    3. Define an error message that will be displayed when a user enters an incorrect data format. If the field remains empty, a default message will be: "Enter a value that will be validated for the configured regular expression: [regex_pattern]."

    4. At the bottom, there is a testing area where you can run a data validation test. We always recommend running a test

    How to add a Regex custom field to the project?

    a) Company-managed project

    To add a custom field in a company-managed project, you can do it from the custom field level with Screens and context and then add or remove the associated screen.

    You can get the same result by adding a custom field to the list in Screens options on the left menu in Issue global settings.

    ⚠️ To add a custom field to the company-managed project, you must be a global admin.

    b) Team-managed project

    In a team-managed project, go to the project settings -> issue types -> Search for field -> and add a custom field where needed.

    ⚠️ You can do it as project admin.

    Regex Templates available

    .
  • Save the field.

  • Example: linkedin.com/in/john-doe/

    MAC address

    Example: 00:B0:D0:63:C2:26

    Name and surname

    Example: John Doe

    SWIFT code

    Example: AAAA-BB-CC-123

    US Phone number

    Example: +1-212-456-7890

    US Postal code

    Example: 33138

    USD currency

    Example: $350.75

    Template title

    Description

    Credit card validator (Mastercard)

    Example: 2222 4053 4324 8877

    Date format

    Example: 12/07/2024

    Email address

    Example: [email protected]

    HEX color

    Example: #F5007E

    IBAN

    Example: DE89 3704 0044 0532 0130 00

    IPv6

    Example: 2001:0000:130F:0000:0000:09C0:876A:130B

    here

    LinkedIn profile

    Phone number validation with Regex

    Read how you can use the Regex custom field on the customer portal using the Jira service desk.

    The Jira service desk is used to process orders. A customer support team needs to ensure that customers provide valid US phone numbers when they submit order requests through the Jira Service Management portal. The US phone number format must be +1-212-456-7890

    The customer support team wants to avoid invalid data and wrong phone numbers to make sure it won't disrupt the shipping process and take longer.

    The regex field is a perfect solution. The admin configures Regex's advanced custom field to accept only US phone numbers, which is the correct form: +1-212-456-7890 (^+1-\d{3}-\d{3}-\d{4}$). This field is required, so the customer has to fill the field.

    Customer John wants to order - he filled in all the fields, but the field with the phone number can't be saved because of an invalid format. He notices that he missed one digit. He puts the correct phone number and submits the ticket.

    Agents are sure the phone number is correct and can quickly contact John.

    regex-phone-number

    Import or export options

    This page describes how to import and export options into existing custom field.

    When you configure Multilevel Select with many levels and options, don't lose this data; save it for later. Then, you have a ready-to-import file to speed up your work and eliminate tedious, manual typing.

    Import values to Multilevel Select custom field

    Steps 🐾

    1. Create a custom field from the advanced library: Multilevel Select

    2. Go to the context page and edit the custom field config.

    3. Now, in the left corner, expand settings.

    4. You can import values from CSV or JSON format.

    5. Choose a file, and voilà 🎉

    In the same way, you can also export your configuration to the CSV or JSON file.

    How to prepare a file to import?

    Accepted formats: .CSV and JSON

    1. Prepare your file in columns. Below you can see the correctly prepared file where:

    • Row 1: Add header for this table - headers for Levels are required; the rest is optional, but there you can put level names and descriptions, mark them as default, and enable field and option ID.

    • Row 2-29: Options in hierarchical tree.

    • Column H: Optional level name

    • Column I: Optional description

    This is an example of a correct file with a use case about .

    Download CSV to see how it should look like.

    Level 1
    Level 2
    Level 3
    Level 4
    Level 5
    Level 6
    Level 7
    Level name
    Level description
    Default
    Enabled
    Option ID
    1. Next, export this file to CSV format (.csv), and ensure the separator is comma.

    2. Import file in Multilevel Select configuration.

    3. The levels and options will be automatically loaded if the file is corrected. If not, there will be a list of errors that make it easier to track mistakes.

    4. Export is to the same format.

    The separator in .csv must be a comma.

    JSON format

    For this kind of format, use JSON writer tools and prepare the file as the code below:

    Column J: If the option is default (forms accepted: YES/NO, 0/1, yes/no, y/n, Y/N, Yes/No, True/False, TRUE/FALSE, true/false, T/F, t/f )

  • Column K: If the option is enabled (forms accepted: YES/NO, 0/1, yes/no, y/n, Y/N, Yes/No, True/False, TRUE/FALSE, true/false, T/F, t/f )

  • Column L: Option ID

  • Service Categories

    Choose a service

    YES

    Hardware Issues

    Technical support

    YES

    Laptops

    Hardware Issues

    YES

    YES

    Desktops

    Hardware Issues

    YES

    Software Issues

    Technical support

    YES

    Apps Error

    Software Issues

    YES

    App XYZ

    Apps

    YES

    YES

    Crashes

    App XYZ

    YES

    Features

    App XYZ

    YES

    Slow performance

    App XYZ

    YES

    App ABC

    Apps

    YES

    Crashes

    App ABC

    YES

    Features

    App ABC

    YES

    Slow performance

    App ABC

    YES

    Project Management

    Service Categories

    Choose a service

    YES

    Project planning

    Project Management

    YES

    Requirements Gathering

    Type

    YES

    Resource Allocation

    Type

    YES

    Project Closure

    Project Management

    YES

    Deliverable Handover

    Project Closure

    YES

    Post-Implementation Review

    Project Closure

    YES

    Development Services

    Service Categories

    Choose a service

    YES

    Web Development

    Development Services

    YES

    Frontend Development

    Web Development

    YES

    Backend Development

    Web Development

    YES

    Mobile App Development

    Development Services

    YES

    iOS Development

    Mobile App Development

    YES

    Android Development

    Mobile App Development

    YES

    Technical Support

    Internal Service Catalog
    1KB
    Service Catalog.csv
    Open
    import-export-multilevel-for-jira
    import-multilevel-select

    {
       "version":"1.0.0",
       "firstLevel":{
          "options":[
             {
                "value":"Technical Support",
                "id":"",
                "isDefault":false,
                "isEnabled":true,
                "nestedLevel":{
                   "options":[
                      {
                         "value":"Hardware Issues",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Laptops",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Desktops",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      },
                      {
                         "value":"Software Issues",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Apps Error",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true,
                                  "nestedLevel":{
                                     "options":[
                                        {
                                           "value":"App XYZ",
                                           "id":"",
                                           "isDefault":false,
                                           "isEnabled":true,
                                           "nestedLevel":{
                                              "options":[
                                                 {
                                                    "value":"Crashes",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 },
                                                 {
                                                    "value":"Features",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 },
                                                 {
                                                    "value":"Slow performance",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 }
                                              ]
                                           }
                                        },
                                        {
                                           "value":"App ABC",
                                           "id":"",
                                           "isDefault":false,
                                           "isEnabled":true,
                                           "nestedLevel":{
                                              "options":[
                                                 {
                                                    "value":"Crashes",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 },
                                                 {
                                                    "value":"Features",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 },
                                                 {
                                                    "value":"Slow performance",
                                                    "id":"",
                                                    "isDefault":false,
                                                    "isEnabled":true
                                                 }
                                              ]
                                           }
                                        }
                                     ]
                                  }
                               },
                               {
                                  "value":"Software Installation",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      },
                      {
                         "value":"Network Issues",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Connectivity Problems",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"VPN Setup",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      }
                   ]
                }
             },
             {
                "value":"Project Management",
                "id":"",
                "isDefault":false,
                "isEnabled":true,
                "nestedLevel":{
                   "options":[
                      {
                         "value":"Project planning",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Requirements Gathering",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Resource Allocation",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      },
                      {
                         "value":"Execution and Monitoring",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Task Tracking",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Status Reporting",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      },
                      {
                         "value":"Project Closure",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Deliverable Handover",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Post-Implementation Review",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      }
                   ]
                }
             },
             {
                "value":"Development Services",
                "id":"",
                "isDefault":false,
                "isEnabled":true,
                "nestedLevel":{
                   "options":[
                      {
                         "value":"Web Development",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"Frontend Development",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Backend Development",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      },
                      {
                         "value":"Mobile App Development",
                         "id":"",
                         "isDefault":false,
                         "isEnabled":true,
                         "nestedLevel":{
                            "options":[
                               {
                                  "value":"iOS Development",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               },
                               {
                                  "value":"Android Development",
                                  "id":"",
                                  "isDefault":false,
                                  "isEnabled":true
                               }
                            ]
                         }
                      }
                   ]
                }
             }
          ]
       }
    }