Skip to main content

Jira sync

Route: /org/tasks → the Jira button · Permission: Configure Jira sync, mappings and run syncs


1. What Jira sync is​

A per-project link between an Orbit project and a Jira project. Jira issues are imported as Orbit tasks, and their fields are translated through mappings you define once.

Sync is one-way by default — Jira to Orbit. Pushing changes back is an opt-in setting.

OrbitJira
Owns the issueNo, by defaultYes
StatusesProject statusesJira workflow statuses
GroupingCategoriesEpics or components
Custom fieldsNot supported nativelyImported read-only

2. How sync spreads across the application​

Imported tasks are ordinary tasks. They appear on the board, in analytics and in billing like any other — with a Jira badge linking back to the issue.


3. Setting it up — the six-step wizard​

First-time setup is a wizard; afterwards the drawer opens on a summary.

Figure 1 — The Jira Sync drawer at step 1 with the six-step rail. Tall+narrow → Split.

On a project that has never been configured this opens as a six-step wizard. On a configured one it opens straight onto the summary shown below.

StepTitleYou choose
1ConnectionWhich Jira connection to use
2Jira ProjectThe Jira project, searchable
3Field MappingStatus, priority and issue-type mappings
4Custom FieldsWhich Jira custom fields to import
5People & CategoriesAssignee mapping, and where categories come from
6ReviewConfirm and save

Step 3 · Field mapping​

Three independent maps: Status Mapping, Priority Mapping and Issue Type Mapping, each pairing a Jira value with an Orbit one. A default task type covers unmapped issue types.

Step 5 · Where categories come from​

Figure 2 — The People & Categories step showing the three category sources and the epic list.
SourceBehaviour
Epics (recommended)"Story/Task/Bug grouped under an Epic — matches work items under a Category." Selected epics become Orbit categories
Components"Issues carry components; the first mapped component becomes the category."
None"Do not assign categories from Jira."

Choosing epics and confirming them creates Orbit categories and records the pairing.


4. Running a sync — and the trap in it​

Figure 3 — The configured summary panel with last-sync details, Sync and Resync All.

The summary carries the whole configuration — connection, Jira project, every mapping — and the two sync buttons. Which of those two you press is the single most consequential choice on this screen.

Two buttons, and the difference between them matters more than anything else on this page.

ButtonReadsSpeed
SyncOnly issues Jira marked as updated since the last runFast
Resync AllEvery issue in the Jira projectSlow
A normal sync will not apply a mapping you just changed

The incremental sync asks Jira for issues updated since the last run. Changing an epic, assignee or type mapping in Orbit does not touch anything in Jira, so those issues are not returned and the new mapping never reaches them.

The confirmation says so outright:

Re-reads every issue in the Jira project and re-applies the current mapping — use this after changing the epic, assignee or type mapping, since those changes do not mark issues as updated in Jira. Slower than a normal sync; imported tasks are updated in place, not duplicated.

Change a mapping → run Resync All. Otherwise the change silently applies only to issues someone happens to edit in Jira afterwards.

Resync All updates tasks in place. It does not duplicate them.

The category-only shortcut​

Because remapping epics is the most common mapping change, the category rail on /org/tasks offers a category-only resync that rewrites just category_id. It reports three numbers:

NumberMeaning
n task(s) re-categorisedUpdated
n not imported yet — run a full Jira syncThe issue has never been imported
n with no mapped epicThe issue's epic is not in the mapping

5. Field reference — the settings​

SettingHolds
ConnectionWhich Jira site
Jira projectKey, id and name
JQL filterNarrows what is imported
Status / Priority / Type mapJira value → Orbit value
Default task typeFor unmapped issue types
Assignee mapJira account → Orbit user
Epic mapJira epic → Orbit category
Category sourceepic · component · none
Field mapWhich custom fields to import
Sync commentsDefault on
Sync activityDefault on
Sync subtasksDefault on
Two-way syncDefault off
Last syncTimestamp, status, error and count

What imported custom fields look like​

They appear on the task in a Jira Fields (n) tab, headed:

Custom fields from <issue key> — read-only, refreshed on every sync.

Short values sit in that tab as a key/value grid; long text values become tabs beside the description. All of it is read-only and replaced on each sync.

Two-way sync​

Off by default. Enabled, Orbit changes are pushed back to Jira. It is loop-safe — a change arriving from Jira is not pushed back out again.

Decide who owns the issue before enabling two-way sync

With it off, Jira is the source of truth and an Orbit edit is overwritten on the next sync. With it on, both sides can write. Half-answering that question is how fields end up flapping.


6. The admin contract​

PrerequisiteWithout it
Configure Jira sync, mappings and run syncsNo Jira button at all
A configured Jira connectionNothing to pick at step 1
Orbit statuses, priorities and typesNothing to map to
A default task typeUnmapped issue types cannot be imported
Project membersThe assignee map has no Orbit side

7. Downstream​

EffectDetail
Tasks created and updatedIn place, never duplicated
Categories createdWhen epics are confirmed
Activity entriesSync-written changes appear in the activity log
No notificationsSee below
A sync sends no bell alerts and no emails

The sync worker runs without the notification services attached, so an assignment made by Jira notifies nobody. Someone can be given fifty tasks and never be told.

Assignments made in Orbit notify normally. Only sync-driven changes are silent.


8. Don't confuse this with…​

ThingWhereWhy it is different
SyncThe drawerIncremental — misses mapping changes
Resync AllThe drawerEvery issue — the only way to apply a mapping change
Category resyncThe category railCategory only, fast
Two-way syncA settingPushes Orbit changes back
Jira Fields tabThe taskRead-only imported custom fields

9. Troubleshooting​

SymptomCause
A mapping change had no effectRun Resync All — a normal sync will not reach those issues
Tasks have no categoryCategory source is none, or the epic is unmapped
not imported yet — run a full Jira syncThe issue has never been imported
Tasks arrive with the wrong typeThe issue type is unmapped and fell back to the default
Assignees are blankThe Jira account is not in the assignee map
Nobody was notified about an assignmentSync-driven changes send no notifications
Custom fields are not editableThey are read-only and refreshed every sync
An Orbit edit was overwrittenTwo-way sync is off; Jira wins
No Jira buttonMissing Configure Jira sync, mappings and run syncs