This article outlines a solution for those using JIRA Server to achieve a more efficient and automated workflow with JIRA data. It covers a commonly used method, but if you’re on Jira Cloud we have a built in Jira Cloud App available.
If you’re not sure what you’re using, typically if you have “atlassian” in your URL to JIRA, it’s cloud. For server, if the URL is “jira.company.com”, there is a high chance it is a JIRA Server instance.
Using Jira with Airtable
Airtable users at both small business levels to enterprise levels want to have some form of data sync with JIRA Server for workflow efficiencies and collaboration between teams. It could be keeping track of tickets from JIRA Server in Airtable so they can allocate high priority items to teams and view overall snapshots of the tickets, or bringing over velocity charts and aggregating them into one easy to read dashboard, integrating Jira and Airtable is very common.
JIRA was designed as a bug and issue tracker. But today, JIRA has evolved into a powerful work management tool for all kinds of use cases, from requirements and test case management to agile software development.” - Atlassian
What you will need?
In order to have a successful integration between JIRA Server and Airtable, there are some things that are required from the user that we assume you have access to or have experience in.
- Access to Airtable and Airtable API Key
- Familiarity with the Airtable API
- Access to JIRA Server
- Familiarity with JIRA Server API
- Node.js (v.8.0.0 or later) (NPM will be installed as well)
Step by step instructions
The solution provided will give you a high level abstraction on how to parse data from JIRA Server or Airtable and complete a two directional sync. Bear in mind, the data that is passed will need to be formatted to fit the schema of Airtable or JIRA Server. This could vary based on the specific data being processed and what workflows are created.
JIRA Server: See API Documentation Here
Airtable: See API Documentation Here
- Have an Airtable base created that will allow you to sync data to the tables and fields.
- The example will have a table called: “Bugs from Jira”
- Fields will be: “id” (This will be the Unique ID), “issue id”, “name”, “description”, “URL”
- You can use this base for Bug Tracking as an outline if tracking team tickets: https://airtable.com/templates/software-development/expOzMycWirMsUOTL/bug-tracker
- Keep in mind, that the structure of the base should be completed before pulling data from JIRA (Have the correct tables, fields etc that you want to use created)
- Another thing to keep in mind is that every item from JIRA will have a Unique ID which you should keep in a field in your base in order to reference back to if you are searching for specific items.
- Generate an API Key in Airtable: How do I get my API key?
- Your username and password of a user with the ability to create projects and issues on JIRA Server site. (Basic Authentication)
- Authentication via OAuth for REST API
- Basic Authentication via API Token
- Terminal on Mac / Linux, or Command Prompt on Windows
You can use a tool like Postman or cURL, to test your API endpoints and Authentication parameters to make sure you are getting data from the two systems.
Setting up JIRA Server on Local Machine
Mac OS: See Atlassian Docs Here
Windows OS: See Atlassian Docs Here
Connecting Jira Server with Airtable
- You can fork the repo for the example HERE
- Once forked, open terminal in the corresponding directory
- Run “npm i” in terminal to install corresponding NPM Modules
- You can then add environment variables to correspond with your Jira Server and Airtable Base:
- Run “node index.js” in terminal to run, will do a fetch for all issues in a specific board from Jira Server.