The latest release of IBM® App Connect provides enhanced support for Jira. With the enhanced support, App Connect users can now integrate with both the Jira software-as-a-service (SaaS) and on-premises versions, and can integrate with all of the project templates that are available in Jira; for example, templates such as IT Service Desk, Project Management, Recruitment, Document Approval, Lead Tracking, and Procurement, as well as custom templates. The App Connect Jira application supports all objects (including custom objects) that are defined in a Jira project, and all CRUD operations.
Connecting to Jira
Connect App Connect to Jira by providing the following connection information. This enables App Connect to use Jira functionality. Connectivity to Jira SaaS or on premises is distinguished by the use of a private network. If there is a need to use a Jira instance on premises, a Secure Gateway has to be configured and network name provided.
- Jira host and port: The domain-specific Jira server URL that you use to log in to the portal. For example, if your domain is xxx, the server URL would be: https://xxx.atlassian.net.
- Username: The user name that you use to log in to Jira.
- Password: The password or API token of your account. Preferred authentication is with an API token.
- Network name (optional): Only needed if connecting to an on-premises instance of Jira.
You can connect either from the Applications tab on the App Connect Catalog page, or when you add the application to a flow.
In this example, we describe a data sync scenario where a newly created incident in ServiceNow with a high urgency rating causes a new issue to be created in Jira and a Slack message to be sent to service engineers about the incident details. If the ServiceNow incident was opened with any other urgency, then a task is created in Jira.
This example assumes that we have already connected App Connect to ServiceNow and Jira, and have started to create a new event-driven flow (by clicking New > Event-driven flow on the App Connect dashboard).
We start by adding a ServiceNow New incident event to the flow, followed by an If node. The If node is used to analyze the urgency of the ServiceNow incident, and then branches to take appropriate actions based on whether the urgency rating is 1 or some other value.
In the top branch of the If node, we configure what should happen when the urgency is 1. We add a Jira Create issue action and then select an existing “Service desk” project from our Jira instance. Based on the type of project selected, corresponding issue types are dynamically queried and presented for selection. In this case, because we’ve selected a “Service desk” project, we can see corresponding issue types such as IT Help, Task, and Service Request.
We select Service Request as the issue type and then map the summary of the issue to the
Short description of the ServiceNow incident.
We also set the name of the reporter as admin, and assign a priority of High to the issue.
When a Jira service request is successfully created, we want to retrieve these service request details and then alert service engineers about the issue by sending the details to a Slack channel for urgent attention. So, we add a node to retrieve the newly created Jira issue and then map to the issue’s details in a subsequent Slack node.
The ‘else’ branch of the If node is configured for non-urgent issues, and results in tasks being created in Jira.
The flow development is now complete and the flow can to be started.
To test the flow, create an incident in ServiceNow with an urgency of 1, and then monitor the flow execution.
The flow is triggered to create a Service Request issue in Jira and to send a Slack message to the service engineers with the details of the issue opened.