This article outlines a solution for those using Jira Server to achieve a more efficient and automated workflow with Jira data. For teams working in Jira Cloud, Airtable offers multiple ways of working with your data in Jira via automations, apps, and even syncing information directly into a table in your base.
NOTEWe currently have a beta external source sync feature for Jira on-prem available to Enterprise customers that allows you to load data from JIRA into Airtable without any custom code. If you are interested, please reach out to your primary Airtable business contact to receive more details.
How can I use Jira Server with Airtable?
NOTENot sure if you're using Jira Server or Jira Cloud? A good way to check, is by looking at the URL you use to access Jira. Typically, if you have “atlassian” in your URL, you're using Jira Cloud. If the URL is “jira.company.com”, there is a high chance it is a Jira Server instance.
Companies of all sizes work with both Jira and Airtable, and are looking to create workflow efficiencies between the two systems, and improve collaboration between teams. We've seen product teams use Jira to keep track of tickets and then send that information to Airtable to allocate high priority items. Some teams import information from Jira into Airtable to create velocity charts and quickly spin up dashboards. Integrating Airtable with Jira is very common, and helpful for teams that use both tools.
What will I need?
In order to create a successful integration between JIRA Server and Airtable, you will need access and some familiarity with the following tools:
- Access to Airtable and an Airtable API Key
- Access to JIRA Server
- Node.js (v.8.0.0 or later) (NPM will be installed as well)
- This example GitHub Repository
Step by step instructions
This process will walk you through setting up a node.js demo application that:
- Authenticates into Airtable and Jira Server
- Sends a GET request to get all issues from a Jira Server Board
- Creates new records in your Airtable base
This example will give you a high level abstraction on how to parse data from Jira Server or Airtable, and complete a two directional sync. The data that is passed will need to be formatted to fit the schema of Airtable or Jira Server, which could vary based on the specific data being processed and the workflows you're creating.
Identify an Airtable base, table, and the fields from where you'd like to sync data. Your table should have a unique identifier to help differentiate each record in your table, and your base schema should be completed before pulling before setting up an integration.
We're using our template Bug Tracking Base, our table is called "Bugs and issues", and the fields we'll use are named: “id” (unique id), “issue id”, “name”, “description”, and “URL.”
Every item from Jira will have a unique identifier, which should be stored in your base in order to reference the original Jira item.
- Step 1.
Fork the example repository on GitHub
- Step 2.
Open your Terminal or Command Prompt and navigate to the directory where you saved the example repository
- Step 3.
Install the corresponding NPM Modules by running npm -i
- Step 4.
Set the following environment variables to correspond with your Jira and Airtable details
- Step 5.
If you're modifying the example for your base, update the table and field names in index.js
- Step 6.
Run “node index.js” in the terminal, this will fetch for all issues in a specific board in Jira Server and create new records in your Airtable base.