Tickets to Issues: Zendesk and JIRA API Integrations

By Laura Wyse in Developer Posted Mar 24, 2015

JIRA and Zendesk provide services that can be used together to help your organization function more smoothly and efficiently. If you use Zendesk for customer service and JIRA for tracking, do you have an integration between the two? When a customer submits a ticket in Zendesk how does that request or issue make its way to JIRA where it can be scheduled and completed?

Zendesk and Jira API integration

There is a Zendesk for JIRA plugin, but if you are looking for additional functionality read on for some tips to integrate with these two services.

API & AUTHENTICATION:

Both JIRA and Zendesk provide a RESTful API. JIRA uses basic authentication while Zendesk supports both basic and OAuth2.

DOCUMENTATION:


ZENDESK

Zendesk has a lot of very helpful documentation on getting started and using the API. You can find that here.

JIRA

JIRA documentation is a bit harder to find, but once you get there it’s useful. I’ll give you a hint, it’s right here. In order to access the JIRA REST API browser you will need to create an account.

PAYLOADS:

Good news! Zendesk and JIRA both use JSON. Zendesk’s response contains the object name at the top level with the rest of the data nested inside, but the request body does not contain this top-level resource name. JIRA’s payload contains basic information at the top level and a map of “fields” containing the rest of the information. In JIRA you can request further information by passing the “expand” parameter with a value of what you would like to expand. The documentation for both gives some good examples.

WATCH OUT!

JIRA’s API gives you the ability to retrieve most of their resources and create some, like issues. Unfortunately you can’t do much configuration through the API. By that I mean you can only retrieve resources such as project, workflow and status. In order to create or modify these, you are going to have to use the UI. Another common function you may want to use is changing the status of a ticket or issue. In Zendesk this is done by simply updating the ticket with a new status, but in JIRA you will need to use a separate API for this. In order to change the status of an issue in JIRA you will need to perform a transition on the issue using the “/api/2/issue/{id}/transitions” API.

Does this seem like too much work? Cloud Elements provides pre-built integrations to both services. See our JIRA and Zendesk API Integrations. 

Try Cloud Elements