Part 1. How to Prepare for Jira Service Management Import
Part 2. Data Import to Jira Service Management: Whats, Whys, and Hows
- Jira Service Management Import: Considering the Key Ways and Details
- Become an Expert in Database Migration
- Database Migration Fundamentals
- Exporting Information from a MySQL Database
- How to Extract Data with Oracle Export Utility?
- What Records Does Jira Service Management Import Support?
- Get Your Knowledge Base to Jira Service Management
- Migrate Your Data with API Easily
- Do You Find This Migration Method Suitable for Your Business?
- Pros and Cons of Using Third-Party Importing Solutions
- Wrap Up
Part 3.What Should You Do Next After Reaching the Destination?
Data Import to Jira Service Management: Whats, Whys, and Hows
Jira Service Management Import: Considering the Key Ways and Details
Nowadays, many organizations intend to gain benefits offered by modern technologies. With efficient service desk software, companies can simplify the client support routine. An appropriate migration plan contains a detailed description of different processes, duties, and timeframes. It serves as an approach to lowering the risk of exceeding the defined budget. Besides, your employees will not be surprised with the responsibilities they should take.
Before appearing on Jira Service Management, your data must go through the following processes: extracting, transforming, and loading. While transforming is optional, the other two processes are essential. Regardless of the source platform (the dump SQL or an old service desk tool), the most critical asset is the information. Its amount and quality have an influence on your decision related to data import to Jira Service Management.
Unfortunately, numerous contacts, tickets, agents, or content from a knowledge base may get stuck because of:
- the existing technical limitations of exporting and importing processes;
- the import solution or a chosen migration service prohibits uploading large CSV documents;
- dump SQL documents need rekeying for responding to the new help desk platform’s requirements;
- API limits regarding the data migration process.
What information does your company need on the new help desk software? For example, organizations are often interested in importing users like support agents or relevant groups. Also, they prefer migrating contacts, tickets, and a knowledge base.
Another critical question is how to transfer the information to Jira Service Management?
Below, we have provided some tips on how to perform that using three various ways:
- importing CSV files;
- migrating the database or the dump SQL;
- transferring API-based information.
You can import customer support information through CSV files. This approach appears quite simple and fast. Jira Service Management allows for bulk data import depending on specific conditions. In other words, you can import support agents, their groups, contacts, and companies, along with a knowledge base, to the particular tool. But if you have to transfer tickets, you should implement the API. Therefore, you may struggle with some roadblocks on your way to a successful import. Finally, you should remember that importing can also have limitations related to the purchased tier.
Making Valid CSV Files
CSV (comma-separated value) files are considered text files that display tabulated data. The majority of systems that handle such data, including spreadsheets and databases, support CSV files. With the CSV importer, you can import necessary information from external systems that allow exporting this information using a tabulated format. The particular tool also enables your organization to create its own CSV files for performing bulk issue creation and relevant updates.
You can develop your CSV file’s structure depending on the default CSV format provided by Microsoft Excel. Thus, you should separate all fields by commas. Moreover, there is a need to enclose in quotes all content that users should treat literally. That includes commas, new lines, or carriage returns. Do not forget that Microsoft Excel and OpenOffice provide automatic quoting of values in cells. It means you should not quote such values manually.
CSV File Requirements
- These files need to be well-formed.
- All CSV files must contain a heading row and a relevant summary column. The header row helps define the ways of mapping information from the CSV file’s second row and beyond to particular fields existing in your project’s issues. This row cannot contain any punctuation (only the commas that separate each column) because the importer will not perform correctly.
- It is prohibited to omit commas when it comes to empty column values.
A valid example:
Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", [email protected], [email protected], Task
Not a valid example:
Summary, Assignee, Reporter, Issue Type, Description, Priority
"Test issue", [email protected], [email protected], 1
In addition, there is another critical rule of CSV format. It requires all lines to have the same number of fields throughout the entire file. You should consider spaces as an inevitable part of the fields and not ignore them.
Finally, it is necessary to mention the UTF-8 format. This format serves as the dominant character encoding used for WWW (World Wide Web). You may need to address the issue like “invalid byte sequence in UTF-8.” In this case, you should open the file using Google Sheets Document and save it once more, choosing the UTF-8 encoding option. Also, you can use Notepad or Microsoft Excel. But if you exported a required CSV document from the software, you must check the options and then re-export the file again.
Jira Service Management Data Import Limitations
Below, there are some small but critical issues that provoke limits in importing data to Jira Service Management:
- The bulk import provides no opportunity to import timezones, images, language preferences, etc.
- Each CSV file must contain <2000 rows of records. At the same time, one row is the header row, while the others represent the company’s information.
- Only one CSV document can be imported per time.
- If the CSV file contains over 1999 rows of information, you must provide two separate documents. After that, you can import them.
How to Set up Your CSV File for Bulk Import?
You should create CSV files depending on specific requirements. Thus, we have provided some helpful tips below:
- Save your document in the appropriate formatting, thanks to UTF-8 character encoding.
- Check whether the first row in your CSV file is the header row.
- The heading row should contain all required fields or other different fields you plan to import. Also, you have to ensure that each field is correctly supported in bulk import.
- Type the involved fields using the order mentioned in the header row.
- Remember that you should provide your header row only with fields for which you will import information.
- You need to format the date for Jira Service Management using YY/MM/DD or YYYY-MM-DD.
- You may want to provide notes or various custom fields with additional line breaks. Here, you should implement the following combinations: ALT + ENTER (on Windows) and CTRL + OPTION + RETURN (on macOS).
A List of Fields for Importing
Simply enlisting fields for importing can make you a bit confused. So, we have described all fields briefly to understand them better.
Field | Brief Import Notes |
Project | CSV information is imported using a per-project basis. It means that you can specify your current project as the relevant target. Or the importer can create a new project automatically during the import process. |
Summary | The particular field is the only one required. |
Component(s) | You can enter all components using separate columns for importing issues with different components. |
Affects Version(s) | You can enter all versions in separate columns for importing issues with different “Affects Versions.” |
Fix Version(s) | You can enter all versions in separate columns for importing issues with different “Fix Versions.” |
Comment Body | You can enter all comments in separate columns for importing issues with different comments. |
Due Date | You should apply the date format you have specified previously. |
Issue Type | If you do not specify imported issues in the CSV file, they will gain the default Issue Type. However, you can create new values directly when importing. |
Labels | You can enter all labels in separate columns for importing issues with different labels. |
Priority | If you do not specify imported issues in the CSV file, they will gain the default Priority. However, you can create new values directly when importing. |
Original Estimate | You need to specify the value of this field using the number of seconds. |
Remaining Estimate | You need to specify the value of this field using the number of seconds. |
Time Spent | You need to specify the value of this field using the number of seconds. |
Users | |
Creating Users | For all system fields that are a user type, Jira Service Management supports:
You can select to make the importer provide automatic creation of Jira users for all values related to the Assignee or Reporter field. |
Updating Users | Portal-only client information in Jira Service Management appears to behave differently compared to other user accounts’ information. If such data is different in terms of import and destination, then the destination data is used. |
Mandatory Fields | When you import data to projects with mandatory fields, it is crucial to involve the field in the specific “Create issue” screen. Such a screen is associated with the issue type used. |
Other Fields | If you want to import some other fields, you should map them to relevant Jira custom fields. If such fields still do not exist, you can make the importer automatically create them. But if your custom fields are date fields, you need to apply the date format previously defined. |
How to Import Your CSV File?
After you have prepared the CSV file correctly, you should enter your Jira Cloud’s admin account to start the data import.
To upload your CSV file:
Select > System.
Choose Import and Export section, and click on External System Import > CSV.
Select the CSV source file you want to import.
You may have no configuration file, or you want to provide a new one. Then, you should ignore Use an existing configuration file option. A configuration file specifies a mapping between column names in the heading row and relevant fields in your Jira site. When the CSV data import process comes to its end, Jira creates an appropriate configuration file. This file can be used for future CSV imports.
Expand Advanced section for changing the CSV delimiter, along with the file character encoding. As we have mentioned, the default option is UTF-8. If CSV files use other separator characters, not commas, you should specify them using CSV Delimiter field.
Click on Next.
Permissions and Roles in Jira Service Management
Permissions provide control over the level of the agent’s access to your Jira Service Management instance. Roles are how you assign permissions to individual users.
Permission Types
Global - such permissions are applied to applications as a whole rather than individual projects.
Project - these ones are organized into relevant permission schemes and applied to projects.
Issues - these permissions are organized in specific security schemes. They allow you to adjust the individual issues’ visibility.
Roles
Jira System Administrator - this role can conduct all Jira admin functions.
Jira Administrator - can do most Jira admin functions.
The service desk Administrator (or Administrator as the Project role) - is assigned to specific Service Desks. Such a role is responsible for managing the configurations of these service desks.
Agent (Team member as the Project role) - is assigned to specific Service Desks. Such a role is responsible for managing and responding to Requests.
Customer - they submit and update their own Requests and can take part in Requests created by other Customers.
Become an Expert in Database Migration
When your organization decided to move necessary records from the old database to Jira Service Management, it might have appeared painful. So, you should start by considering details and then make a decision on whether to add such a migration method to your project. Probably, you may want to look for some other options.
Database Migration Fundamentals
In simple words, the database migration serves as the well-known export of CSV files from your old software platform. At the same time, Jira Service Management can be the importing destination. For instance, the best-case scenario means that your company can extract CSV or XML from your old database. Or you can obtain the SQL dump file. However, later you will need to format this file into CSV to follow Jira Service Management requirements.
Nowadays, many software vendors offer different built-in import/export solutions. Technically, your company can import CSV files from old service desk platforms or other legacy systems with any code. Also, you do not require extra help from software engineers or technicians. Just select the right software that can provide such an option.
Exporting Information from a MySQL Database
Your organization may use a MySQL database as storage within its current system. Therefore, the SQL dump can be exported successfully. The relevant file will include all the information from your old system, which is a great advantage. It means that you can import everything necessary from this file. However, there is a need to select the records you can transfer to Jira Service Management. Forming valid CSV files requires time and effort, which is considered a disadvantage.
How to Make the SQL Dump of the MySQL Database Using the Command Line?
You have two approaches to making the dump depending on whether your MySQL users have passwords.
If your MySQL users have passwords, then:
mysqldump -h localhost -u [MySQL user, e.g. root] -p[database password] -c --add-drop-table --add-locks --all --quick --lock-tables [name of the database] > sqldump.sql
A critical thing to remember: it is prohibited to put space between -p and the password.
If your MySQL users have no passwords, then:
mysqldump -h localhost -u [MySQL user, e.g. root] -c --add-drop-table --add-locks --all --quick --lock-tables [name of the database] > sqldump.sql
Since databases offer a suite of utilities, you can find the required export one. But do not forget that several utilities can extract only particular types of data. So, it is crucial to check what information you can obtain using such utilities. Also, you should understand whether it will be enough for compiling your CSV file for Jira Service Management import.
How to Extract Data with Oracle Export Utility?
Let’s consider the Oracle export utility example. You need to take six following steps to ensure the successful export process:
Step 1. Build an export directory using your source server
mkdir /path/path
Step 2. Grant the Oracle user
chown oracle /path/path
Step 3. Create a relevant directory in your database
CREATE DIRECTORY Your_Dir_Name as '/path/path'
Step 4. Provide your Oracle user with EXP_FULL_DATABASE role
Grant EXP_FULL_DATABASE to your_user
Step 5. Provide the created directory in your database with the role
GRANT READ, WRITE ON DIRECTORY Your_Dir_Name TO EXP_FULL_DATABASE
Step 6. Run expdp command with your Oracle user
expdp your_db_user/password schemas=Your_Schema_Name tables=table_name directory=Your_Dir_Name version=your_version_for_target_db dumpfile=data.dmp logfile=data.log
Besides, you can implement other parameters when running the EXPDP command. To learn about more parameters, you can check the Oracle base.
What Records Does Jira Service Management Import Support?
Jira Service Management provides its clients with outstanding bulk import capabilities. Thus, your organization can import its contacts, companies, and agents. Also, you can implement restrictions for adding agents to specific groups. At the same time, the number of record types is limited because the extended import option is available through the REST API. For instance, you can import tickets using only the REST API too.
Get Your Knowledge Base to Jira Service Management
Jira offers the opportunity for bulk data import from your old third-party knowledge-base into Confluence. You can import such data using plain text, HTML, or Confluence Storage Format. However, you should use third-party converters since Confluence provides no tools to import information from relevant third-party wikis.
Solution:
If you can export your existing wiki as plain text, HTML, or using Confluence Storage Format, you can provide its bulk import by performing Jira’s Import a text file function.
Your company can divide the exported pages into relevant directories mapping to your different Confluence spaces. You can do that using a space-by-space basis.
You will have to manually provide the page with multiple associated attachments. Besides, you should edit the page to correspond to the newly uploaded attachments.
Migrate Your Data with API Easily
Almost all business owners have heard about using an API to import information to Jira Service Management. So, they can ask themselves: “What does an API mean?” When Googling it, you can see numerous results full of acronyms, jargon, or even unhelpful exposition. Thus, all of the mentioned can create a vague or incorrect understanding of the term’s meaning.
What Is an API?
An API is an abbreviation for an Application Programming Interface. This term appears quite overloaded and often refers to various things depending on the context. In software development, an API serves as a suite of subroutine definitions, protocols, and tools used to build application software. In simple words, an application programming interface represents clearly defined ways of communication between different software elements.
From a technical viewpoint, an API explains the rules for software engineers to follow when interacting with programming languages, software libraries, or other software tools. But people often use a particular term to describe a specific type of web interface.
The web API means a set of rules to interact with web servers to retrieve the necessary data. APIs offer you mechanisms for accessing and manipulating information stored by the relevant API provider. In this case, the process is the following:
You request the required web server.
After that, it accesses a database where you store the data.
Then, this web server returns such data to you as a “response.”
Why Is Using APIs Popular among Businesses?
Providing extending functions that are not available in the user interface is the significant added value of APIs. Therefore, you can consider an API as a resource to create apps, perform a bulk import, pull information to external resources, etc.
The Jira Service Management Cloud REST API is a component of plans offered to clients. Companies pay for JIRA services and obtain the added value using an API. That enables them to provide their own integrations or create applications.
Jira clients can implement the API to export their information directly or even automate data transfer. Similarly, they can use this API for getting tickets, users, or other types of information for reporting purposes. The opportunities offered by API allow:
updating and editing bulk records;
creating tickets;
migrating ticket-related information;
searching records.
The Format Review
Today APIs prefer using the JSON format. It means that Jira Service Management Cloud REST API also returns information in this format. If you think about sending data to the API for creating or updating information in Jira, you should convert it into JSON. When you want to obtain some information from Jira Service Management, the tool will send it in JSON format. Thus, you may convert such data to another format you need to use.
You should install a specific JSON viewer extension for Chrome or Firefox. That allows you to use the formatted information in these web browsers. JSON will look like this:
In addition, it is crucial to mention a command-line tool called cURL. Thanks to this tool, you can run API commands with no browser. Each API request receives a relevant response that helps you know if everything worked properly or not. Such responses are also known as status codes, and they show the reasons why your request did not work. Among the typical requests are the following:
Status code | Description |
200 | Successful request |
400 | Unsuccessful request |
409 | An error of merging or constraining (you should try again) |
422 | Unprocessable Entity |
429 | You have exceeded a rate limit |
500 | Warning or temporary state (you should contact support) |
Do You Find This Migration Method Suitable for Your Business?
Generally, this method of data import allows your organization to transfer numerous record types. That includes contacts, companies, support agents, agent groups, tickets, and even a knowledge base. However, everything is not as easy as it may appear at the first glance. To obtain the method’s actual value, you need to have a professional IT team with experience working with APIs. Besides, you can find a freelance engineer to write migration code.
Apart from that, you have to consider the awaited expenses and time frames during your Jira Service Management data import. It is critical because your IT team will focus on the import process instead of their core tasks. Also, the hired software engineer will increase the project budget and extend its duration. After all, you must be ready to miss the deadlines.
When it comes to the API-based migration to Jira Service Management, the plan should be created by the team writing the relevant code. At the same time, such a plan must include the following steps:
Comparing your current service desk tool and Jira APIs to identify the information you can migrate.
Providing field mapping to place data in Jira Service Management correctly.
Developing migration code and testing it.
Pros and Cons of Using Third-Party Importing Solutions
Before making any conclusions, let’s consider APIs provided by service desk tools and other companies using another viewpoint. Each of them offers an easy-to-use API and claims that your organization can use it for fetching, importing, and processing the information collected by your service desk. However, lots of such APIs are not as helpful, and sometimes, even experienced programmers can find it hard to use them. Such a problem occurs when there is a lack of software engineering knowledge or when the corporate bureaucracy is inefficient. Therefore, these APIs are useful only within the IT departments that developed them.
To address such a bottleneck in your Jira Service Management import, you can select a third-party vendor to import information between service desk systems. Below, we have identified both advantages and disadvantages of using this method.
Advantages:
your in-house IT department will focus only on their core functions
no need to hire freelance software engineers
corporate data is secured appropriately
you will save time and establish a clear deadline
Disadvantages:
you should discuss the hosts
your current tool may provide no or restricted APIs (thus, some information may need a CSC import.
To sum up, the API migration to Jira Service Management can import numerous records. However, that requires detailed preparation to conduct correctly.
Wrap Up
Many modern organizations have realized that Jira Service Management import is more than simply moving information from their old systems. The right planning of migration requires more time than the process itself. Fortunately, you should not spend weeks importing tickets, contacts, and other records into a new platform. Now, you can do that within several hours. Ultimately, specific conditions can impact the project budget and time frames.
Part 1. How to Prepare for Jira Service Management Import
Part 3. What Should You Do Next After Reaching the Destination?