Export issues from Jira is one of the features that make this tool more powerful, mainly because it offers the freedom to work with external tools for a variety of use cases: like the need to know how to extract data from Jira using API or create an XML export, or the need to make Jira Service Management exports to Excel. The use will depend on your needs, and we will cover different scenarios and solutions in this post.
Although each case is unique at the time to export issues from Jira, it's handy to create Jira reports outside Jira, Jira audits, analyzing SLAs, performing Jira migrations, and more.
After a couple of years of this post being published and following a recommendation from our Twitter community, we got hands-on to update this guide to export Jira issues. This was the conversation that motivated us (You can always follow us there, too 😉):
When Jira issues are filled with information, they give detailed information. Given the granularity each issue contains, it fits perfectly into an Excel spreadsheet, where each issue occupies a row and each field a column. Hence, exporting issues from Jira is a must when working with this information outside the tool.
Users have said they export Jira issues mainly because they need to treat information differently from what Jira offers. Therefore, we'll show everyday situations that motivate people to export this data from Jira. Later on, we'll discuss different ways to export issues and their contents.
Share information with external people: It's usual for clients to request detailed reports in different formats, generally Excel, CSV, or PDF.
Analyze data in Excel: Given the management staff, it's usually very skilled in Excel, exporting detailed information from each Jira issue is helpful to understand the data and create reports there.
Audit Jira information: It's possible to audit your instance directly in Jira. However, this implies investing hours of training on Jira. If that's the case, your auditor should:
This highlights the simple benefit of exporting the raw data and letting them explore at their own pace with the tools they master; it's usually the best way to go.
Analyze SLA compliance: When managing service delivery in Jira, it's usual that Service Managers or customers need to get statistics about their SLAs, and sometimes, the Jira reporting engine may fall short of such a task. Therefore, it's normal to look for reporting alternatives in the Atlassian Marketplace such as eazyBI, and/or export the issues to CSV, PDF, or Excel to analyze the compliance of their SLAs.
Migrate issues between Jira instances: It's possible to natively import issues to a different Jira instance with a CSV archive, which is specifically useful when partially migrating issues between instances; To do this, previously will be necessary to export these issues CSV to import them into the target instance later. The relationship between the origin and destination environments would be the following:
In essence, exporting issues from Jira, it's straightforward; it requires three basic steps:
Despite how easy it seems to export these issues from Jira, it's also true there are several limitations, especially when exporting the full content each issue contains:
These limitations may vary; it depends on whether you're in Jira Cloud or Jira Data Center, as we have shown. In the following, we'll explain more about these limitations; there are three:
Export project information from Jira Cloud to Power BI >>
Let's go through the eight most common ways to export issues from Jira, motivated by some, all, or none of the reasons we discussed earlier.
The two first alternatives are meant to be performed by regular users (it doesn't require much tech knowledge), and the six remainings are mostly targeted at Jira Administrators.
We want to know your perspective! As you have seen already, we're all ears. Contact us, write it in the comments, or reach us on social media if you have something else to add.
This is one of the easiest options to perform, as we explained before. Likewise, it has the limitations also stated:
There are no native exports to Microsoft Excel in Jira Data Center, and only up to 1000 issues can be exported. In Jira Cloud and Jira Data Center, it's impossible to export issues with attachments, comments, or transitions. If you are happy with the result, you should probably embrace it; there's no reason to reinvent the wheel.
Take a look at the Atlassian documentation on the different default export formats: you can export to Word and/or CSV; Export Jira issues to XML is handy for developers who want to process data.
Finding the app that best suits you requires exhaustive research work on each possible option available in the Atlassian Marketplace.
Given the ignorance of the options available within the marketplace, which in most cases represents the easiest way to add functionality to the Atlassian tools (Jira, in this case), counting on the assistance of Atlassian Certified Professionals for this task -although it may involve additional investment- will save you several headaches, since Atlassian apps don't require maintenance or compatibility with the most recent versions of Jira.
Among the most popular options, there's Exporter for Jira will enable you to overcome the limitations of Jira in terms of the number of issues to export or the complete information of the issue in useful formats. On the other hand, Xporter for Jira, allows you to customize how the information is exported visually. There are also general apps that allow it, such as the Jira CLI, which is more complex and useful for advanced data processing.
From now on, to understand the following options, you'll need more in-depth tech knowledge, so don't take it as a strict recommendation of what you should do.
If you're not sure to understand any of the following solutions, don't do it! It could work, or it could create more significant problems. In any case, all the elements to be mentioned are real solutions because people are doing it:
There are three ways to export issues from Jira following this route:
This option allows the Excel export option available from the Exports drop-down menu.
Note, the "Excel document" that Jira will export is an HTML document that can be outdated at any moment. Any process depending on this configuration may have to change when Atlassian stops supporting this export mechanism.
Remember to perform this action at off-peak hours since the following steps require to stop the system:
jira.export.excel.enabled=true
Although it's a simple configuration that works like the previous one, it doesn't solve the issues' limitations in formats and content. This configuration will also require stopping and restarting Jira.
Atlassian suggests doing large exports in batches to avoid out-of-memory exceptions. If you're correctly monitoring the performance of your Jira instance, and you're comfortable testing the limits without blocking the tool, or if you have too many issues with adopting the batch approach, you can change the export limit of 1000 issues from the properties file:
jira.search.views.default.max=[new max]
This option privilege a small group of Jira users to overcome the property that limits exports to 1000 issues each time. This configuration requires stopping and restarting the tool.
The issues to be exported will be the ones filtered in the issue browser at that time. Ensure the group of users with access to these exports understand the responsibility it implies, and they are aware of how it will affect the instance's performance.
Depending on who is exporting and for what purpose, you may want to remove Jira Administrators' restriction, i.e., the IT directors of your company.
jira.search.views.max.unlimited.group=jira-administrators
As long as we refer to CSV exports, Atlassian shares this alternative as a solution for Jira Cloud instances regarding the exports for more than 1000 items.
Suppose you are exporting from Jira Cloud to Microsoft Excel. In that case, Atlassian allows that fantastic option to open Jira issues directly in Google Spreadsheets or Excel, and from there, to open more than 1000 issues.
Suppose you are carrying out a backup or a migration process. In that case, this is the best option since creating a backup with the information of your instance will get a massive batch of information... everything you have in your Jira, including the attachments of each issue. Here are the full instructions Atlassian offers for these scenarios.
Obtaining the backup file is simple. The tricky part is to extract only the issues from the entity.xml file, where the projects, users, groups, components, etc., coexist. If you're interested in getting all the information about just the issues, you'll have to dig into the XML file to get them. That's hard work!
This option will allow you to set up the outputs as you wish before exporting the issues; If someone on your team is familiar enough with Java development, it's an excellent option to pass the JQL query through the Java API. You will speak to Jira in its original language:
The query for versions previous to Jira 8:
String jql="assignee=currentUser()"; SearchService.ParseResult parseResult = searchService.parseQuery(applicationUser, jql); if (parseResult.isValid()) { try { /** * Execute the search and get the issues */ List issues = searchService.search(applicationUser, parseResult.getQuery(), PagerFilter.getUnlimitedFilter()).getIssues(); }catch (SearchException ex){ LOGGER.error("Error searching: ",ex); } } else { LOGGER.error("Error parsing: " + parseResult.getErrors()); }
The query for Jira 8 versions onwards:
String jql="assignee=currentUser()"; SearchService.ParseResult parseResult = searchService.parseQuery(applicationUser, jql); if (parseResult.isValid()) { try { /** * Execute the search and get the issues */ List issues = searchService.search(applicationUser, parseResult.getQuery(), PagerFilter.getUnlimitedFilter()).getResults(); }catch (SearchException ex){ LOGGER.error("Error searching: ",ex); } } else { LOGGER.error("Error parsing: " + parseResult.getErrors()); }
Download the full .java snippet for previous Jira 8 versions, and here for Jira 8 versions onwards, given it has changed getIssues( ) to getResults( ) from the Jira 8 version onwards. This code includes authentication and imports. Just add a class and a method to make the call.
This Jira export API option is simple and answers the central question: How to extract data from Jira using API? The answer is straightforward; with it, you'll get a JSON output file, although the results cannot be shared immediately (Same as the previous Java API example).
Following the GET method of the REST API, once you've logged into Jira, you'll be able to retrieve all the issues using a specific JQL from a URL:
Method: GET
Url: JIRA_BASE_URL/JIRA_CONTEXT/rest/api/2/search?jql="assignee=currentUser()"
Paste this URL directly into your web browser for on-screen results; Instead, you'll probably rather use an API development environment like Postman or a command-line tool like Curl.
Something to avoid is looping through the resulting JSON as a user.
If you are looking for the Excel Jira REST API, to give you an idea, here's a screenshot with the beginning of the data of an issue and how it's displayed:
… and it goes like this for yet other 86 lines.
There are ways to export Jira issues, as you might see. Besides, several options available in the Atlassian Marketplace take the export of Jira data to another level; the solution you'll choose will depend on your needs.
Suppose your need relies on auditing tasks, making Jira reports outside the tool, etc. In that case, you'll need to export comments and transitions from either Jira Cloud or Jira Data Center (or Server) with Exporter for Jira.
On the other hand, if you're considering migrating from Jira Server to Jira Cloud, this is a valuable option to extract data from Jira and move your information from one instance to another. This can be done with Exporter for Jira Data Center (or Server) by exporting Jira issue attachments.
Finally, if you need to create instant internal reports for team meetings, exporting issues to PDF, both in Jira Cloud and Data Center (or Server), is the way to go, and Exporter for Jira does it for you.
Working with Jira Service Management means you're giving a service to other users. This service may be offered to people from inside a company, to external users, or both.
Defining a Service Level Agreement (SLA) is common in those use cases. By default, Jira allows to export this data, make reports, and make decisions. It's advantageous.
Jira Service Management enables defining an approval process in a workflow. This way, tickets can be reviewed before keep going to the next step.
By default, Jira doesn't offer the possibility to export transitions. Furthermore, as approvals are related to them, exporting them is impossible.
If you want to export the approval processes from tickets, Exporter for Jira allows it. It allows auditing the ticket flow, overseeing who and when it has been approved, and also checks if you're working with Jira Service Management.
If you need to run issues exports periodically and you don't want to keep wasting time by setting up the information you need to export every time, by choosing which columns, selecting the format, choosing if you also need to export the comments and transitions, etc, the recent BETA feature of Exporter for Jira Cloud might help you on this.
The Scheduled Exports is the latest feature for the app exclusively in Cloud, allowing users to plan the frequency to download a specific export of Jira issues and also allows you to save the download settings.
On the chosen day, you will receive an email in your mailbox with a link to download the file back to Jira. It will also be possible, right from the top menu of Jira, in the Apps drop-down menu, to see the details, manually run the export, edit parameters, or delete any or delete them if you no longer need them.
Have in mind, your Jira Administrator will need to perform a previous configuration filling in the details of your email server in the Exporter sub-menu, located in the Jira administration panel.
This is a solution available in the Atlassian Marketplace. Avoid the human error factor, and start configuring and automating the delivery of your Jira Cloud issues to your email inbox, and exporting right from Jira; this solution guarantees you will always have the same configuration of your issues export available to download it at any time you need.
Ultimately, whatever the chosen method is, once the data is extracted from Jira, the dilemma relies on which treatment will remove that information.
Before going through, it's important to reflect on: Is it indispensable to have this information outside Jira for reporting purposes? Nowadays, Jira Software and apps offer different ways to create and export reports, even at the project level, right from the tool, without processing the data outside Jira. Whichever option you choose, we hope it will be beneficial for you.