- 15 Jul 2024
- 7 Minutes to read
- Print
- DarkLight
- PDF
Airtable Sync integration: Jira Server / Data Center
- Updated on 15 Jul 2024
- 7 Minutes to read
- Print
- DarkLight
- PDF
Note
As of February 15, 2024, Atlassian no longer offers Server product support and recommends upgrading to Jira Data Center or Jira Cloud.
Plan availability | Enterprise Scale plan access only |
Permissions |
|
Platform(s) | Web/Browser, Mac app, and Windows app |
Related reading |
|
Learn how to use the Airtable Sync integration feature to bring information from an external application into Airtable as a new table in your base. Sync integrations are always a one way sync from the external application into an Airtable base, so changes made in Airtable cannot be synced back to the external application that you are syncing with.
This article covers how to sync Jira Server/Data Server issues to an Airtable base. We’ll use the term Jira Server to refer to both Data Center and Server, as the same steps work for either product. This particular sync is for organizations using Jira on-prem. If your organization uses Jira Cloud, then we cover that in a separate support article.
Setting up a Jira Server sync
Note
If you are setting up your organization’s first Jira Server sync, then please make sure that your organization's IT/Airtable/Jira admin(s) have reviewed our server and firewall requirements and taken the necessary steps before you connect your Jira Server account with Airtable. These steps only need to be done once but are required.
Step 1: Add a new synced table
Start by clicking the + symbol next to your list of tables. Then, under “Sync data from”, select the “Jira Server” option.
Step 2: Select a Jira account
Select an existing Jira Server account, or connect to a new Jira Server account. You will see a list of the Jira Server instances your Airtable admin has set up. To connect to a Jira Server Account, select the Jira Server instance that you want to use to create the synced table. If you do not see the server that you want to use, then you will need to contact one of your organization's Jira admins follow the steps outlined in this article.
After clicking Continue, you will be prompted to authorize Airtable to connect to your Jira Server account. For more on authentication, jump below.
Once you have connected a Jira server, you’ll then be able to choose which issue “Filter” to use for creating Airtable records.
Note
If you encounter the "Could not authorize the account" error, then the connected account may have hit the Jira REST API rate limit.
Step 3: Choose a filtered dataset from Jira
For this sync, only starred filters are available to choose from. See Atlassian's documentation if you need help setting up a new filter or adding a filter to your favorites. It’s important to choose a filter with conditions that won’t change. Whenever a filter’s conditions are changed in Jira, records that no longer match are deleted, along with any additions made in Airtable.
For example, if you’ve synced a filter that only has open bugs, and a bug is closed, the Airtable record will be deleted along with any record comments and activity, and other field data that may have been added. If that same bug is reopened, a new Airtable record will be created.
As a result, we recommend choosing a filter that is unlikely to change.
Note
If you’ve lost Airtable records due to a changed filter, we may be able to help. Please reach out to our support team to request help.
Step 4: Select fields to sync
After clicking next, you’ll be presented with two sync options; you can sync:
All fields from the source view (Jira filter), including any fields added by Jira in the future.
Specific fields from the source view (Jira filter).
If you choose to sync specific fields you’ll be shown a menu where you can toggle each individual field that you want to sync from Jira.
You can find more information about Jira fields below.
Step 5: Create synced table
Before creating your synced table, there are Settings options that will allow you to choose how often you want to sync, and how to handle records that are deleted or hidden from the source (Jira). These options are:
The frequency of syncing. Right now, the options are manual syncing and automatic syncing which happens around every 5 minutes.
Whether or not deleted records (issues in the selected Jira filter) should be removed from the Airtable table. By default, deleted events will be removed.
Once you’ve selected your desired settings, click the “Create table” button. The sync operation will retrieve all issues in the selected Jira filter and generate Airtable records.
Understanding supported Jira fields
Field data that can be synced from Jira natively:
Below is a list of all of the field data that is provided by Jira that can be synced to Airtable within the native sync configuration Airtable offers:
Issue Key | Priority | Parent |
Summary | Labels | Environment |
Description | Time Spent | Affects Versions |
Status | Aggregate | Epic Name |
Project | Time Spent | Sprint |
Issue Type | Time Remaining | Reporter |
Created | Aggregate Time Remaining | Flagged |
Updated | Original Estimate | Story Point Estimate |
Components | Due Date | Start Date |
Story Points | Issue Color | |
Fix Versions | Assignee |
Jira custom fields:
Pre-saved/Locked fields:
Pre-saved/Locked field names are considered custom fields in Jira as well. Jira users are unable to create other custom fields with those names.
Field name | Field function | Notes |
---|---|---|
Epic Colour | Colour of Epic | |
Epic Link | Epic Link Relation | Will only show up if the issue is NOT an Epic |
Epic Name | Name of Epic | Will only show up if the issue is an Epic |
Epic Status | Status of Epic | Will only show up if the issue is an Epic |
Rank | Global Rank | Advanced |
Sprint | Jira Sprint Field | Advanced |
Original story points | Original story points | Advanced |
Target Start | Target start date | Advanced |
Target End | Target end date | Advanced |
Field Types not supported:
Field name | Field type | Notes |
---|---|---|
Select List | Cascading | Advanced |
Parent Link | Unknown | Advanced - unable to set this field |
Team | Unknown | Advanced - unable to set this field |
Version picker | Single/multiple version(s) | Advanced |
Development | Unknown | Advanced - unable to set this field |
Group Picker | Single/multiple group(s) | Advanced] |
Jira Released Version History | Advanced |
Security and OAuth scopes
Authentication
The Jira Server integration on Airtable uses OAuth to authenticate requests from individual users in your Jira Server instance. The OAuth consent screen will look like this:
Airtable will only have access to the issues and filters that the user who connected the Jira Sync has access to. If the user who connected a Jira Sync has their Jira or Airtable account deactivated, the sync will stop working.
Note
There is no separate plugin or app that needs to be installed on the user’s Jira instance. The data that we retrieve from Jira’s API is transmitted securely via HTTPS and will not be used for any purpose other than the synced table.
Jira Server Scopes
Airtable integrates with Jira Server (On-Prem) through OAuth 1.0a. You do not need to provide scopes and the integration’s permissions will match the individual’s permissions granted in Jira Server. For more information, check out Jira’s documentation here.
The tokens are transmitted between Airtable and Jira’s servers securely via HTTPS. On Airtable’s side, the tokens are stored in databases that are encrypted at rest.
FAQs
What type of access will Airtable have to Jira?
Airtable will only have access to the issues and filters that the user who connected the Jira sync has access to.
Can any filter be used when setting up this sync?
In contrast to Airtable's Jira Cloud Sync integration feature, the Jira Server / Data Center sync can only pull information in from starred filters.
What happens to the sync if the Jira account used becomes deactivated?
The sync will stop working if the connected Jira account is deactivated.
Can custom fields in Jira be used in the Sync?
Custom fields that are based on Jira's built-in field types are supported, but other types of custom fields may not be supported. More details on this above.
Are there any limitations to be aware of?
The maximum number of issues synced is 10,000. This is a limit that we impose to ensure reasonable performance.
Is there any rate limit on the API request Airtable will send to your Jira Server?
Yes. To protect your Jira Server, by default, we enforce a rate limit of 5 requests per second on the API request Airtable would make to your Jira Server. If you have questions or concerns about this limit, then reach out to your Airtable account team.
Additionally, Jira’s API is very limited in terms of how much data can be transferred with each request, so sync performance in the range of 1 second per 100 issues is to be expected. We recommend that you choose filters that narrow your request wherever possible.
Are there any version requirements for this sync to work?
Yes, this Airtable sync type currently supports Jira Software version 7.13 or higher.