Welcome to Jira Service Desk Server development! This overview will cover everything you need to know to integrate with Jira Service Desk Server. This includes the P2 framework for building plugins, as well as Jira Service Desk features and services that you can use when integrating with Jira Service Desk.
Jira Service Desk is primarily used as a service solution, from asset management to DevOps. A diverse range of IT teams use Jira Service Desk, including support desk teams, operations teams, and more. With over 15,000 of these teams using Jira Service Desk, there's plenty of potential to extend it. Jump in and get started!
If you haven't used Jira Service Desk before, check out the product overview for more information.
If you want to build a plugin for Jira Service Desk Server, you should use the Atlassian development platform, which includes the Plugins2 framework. Add-ons are used to extend the functionality of Jira Service Desk, which could be an an integration with another existing service, new features for Jira Service Desk, or even a new product that runs within Jira Service Desk.
Create your plugin project as you would any other Jira plugin, for instance, by using the atlas-create-jira-plugin SDK command. This command creates the plugin project files and skeleton code.
When ready to build and test your plugin, run the atlas-package command from the project root directory. This command creates a packaged JAR file that you can install into Jira (in the sub-directory)
Configure AMPS to run Jira with Jira Service Desk installed. If you haven't done this before, see Configure AMPS to run Jira Core with additional applications installed.
Install the plugin you built in step #2 with the command. There are two ways that you can do this:
You should now be able to see your plugin in the Jira "Manage Add-ons" page as an installed plugin. Every time you change your plugin code or resources, reload your plugin repeating step #6 above.
If you haven't built a plugin before, check out the Getting started guide. This guide will help you learn how to set up a development environment and build a Jira Server plugin.
If you are building a plugin with Plugins2, you'll also need to understand a number of key development processes:
The three building blocks of integrating with Jira Service Desk are the APIs, webhooks, and modules.
The Jira Service Desk Server APIs lets your integration communicate with Jira Service Desk Server. For example, using the REST API, you can retrieve a queue's requests to display in your plugin or create requests from phone calls. For most other integrations, you should use the REST API. The Java API should only be used if you are building a Plugins2 plugin.
Add-ons and applications can react to conditions/events in Jira Service Desk via automation rules. You can implement an "automation action" that performs actions in a remote system as part of an automation rule. An automation rule can also be configured to fire a webhooks that notifies your plugin or application. For more information, see Jira Service Desk webhooks.
A module is simply a UI element, like a tab or a menu. Jira Service Desk UI modules allow plugins to interact with the Jira Service Desk UI. For example, your plugin can use a Jira Service Desk UI module to add a panel to the top of customer portals. For more information, see About Jira modules.
Jira Service Desk is an application built on the Jira platform. The Jira platform provides a set of base functionality that is shared across all Jira applications, like issues, workflows, search, email, and more. A Jira application is an extension of the Jira platform that provides specific functionality. For example, Jira Service Desk adds customer request portals, support queues, SLAs, a knowledge base, and automation.
This means that when you develop for Jira Service Desk, you are actually integrating with the Jira Service Desk application as well as the Jira platform. The Jira Service Desk application and Jira platform each have their own REST APIs, webhook events, and web fragments.
Read the Jira Server platform documentation for more information.
If you are looking for ideas on building the next Jira Service Desk Server integration, the following use cases and examples may help.
Here are some common Jira Service Desk use cases:
Here are a few examples of what you can build on top of Jira Service Desk: