Keelcroft / Azure DevOps Sync for Jira
Azure DevOps Sync for Jira
Keep a Jira issue and an Azure DevOps work item in step, with read-back checks.Published
Available on Atlassian Marketplace. Paid via Atlassian; check the Marketplace pricing calculator for your licensed Jira site size.
Start the standard 30-day Marketplace trial · Request guided setup
The publisher has not independently completed a real Azure DevOps round trip. Marketplace availability is not proof of your organisation's permissions, process rules or configuration. Start with a test project and independently verify a first pair.
What it does
A Jira project administrator connects one Jira project to one Azure DevOps project, chooses which fields travel in which direction, and links issues to work items. A change on either side is then carried to the other, verified, and recorded.
- Summary, state, and labels or tags, in either or both directions.
- A reconciliation view listing every linked pair with its agreement state, how long ago the pair was last proven identical, and a replay button for anything out of agreement.
- A setup check that creates a disposable work item, reads it back, verifies the title, and deletes it again before you turn sync on.
- Per-project scoping, with selected field directions and explicit state mappings.
How verification works
Writing a field and assuming it landed is the usual reason a sync quietly drifts. This app does not assume.
- It reads both sides and works out which fields actually changed.
- It writes only those fields.
- It then issues a separate read against the platform it just wrote to, and compares the stored values with what it asked for.
- The outcome, including any field the platform refused to store, is recorded against the pair and shown in the reconciliation view.
Labels are compared as sets, because Jira reorders them on write. Azure DevOps updates carry the revision the app read, so a concurrent edit by somebody else makes the update fail rather than overwrite their work.
What it deliberately will not do
- Ordinary sync does not mirror deletion. If one side of a pair disappears, the surviving record is left alone. The separate setup check attempts to remove only its disposable test work item.
- It never overwrites an edit silently. Edits on both sides are applied in both directions when they touch different fields. A real collision is resolved by the policy you chose and the losing edit is always reported. If both sides changed at the same instant, the pair is held as a conflict rather than guessed.
- It never writes a status it was not told about. An unmapped state is reported to you instead of being written through as a literal, which is the usual way a sync corrupts a workflow.
- It never rewrites a tag to make it fit. Jira labels cannot contain spaces, so a tag that cannot be stored is reported by name rather than silently altered.
- It does not relay your data through our servers. Jira talks to Azure DevOps directly from Atlassian Forge. There is no vendor-hosted middleman.
Current limits
- Description sync is plain text and off by default. Jira stores rich text as Atlassian Document Format and Azure DevOps stores HTML. Only a plain-text projection round-trips in a way that can be verified, so switching it on will flatten formatting on the receiving side.
- Assignee sync is not supported. Azure DevOps supplies an email address and Jira needs an Atlassian account ID.
- One Jira project to one Azure DevOps project.
- Runs on Atlassian does not apply. Any app that talks to a third-party API needs egress, which makes that badge unavailable by definition.
What you need to connect
- An Azure DevOps personal access token with Work Items (read, write) and Service Hooks (read, write, manage), or a Microsoft Entra service principal from your own tenant.
- Jira project administrator rights on the project you connect.
- For Azure DevOps Server, your Atlassian organisation admin adds your host through Atlassian's customer-managed egress controls.
Support
Email support@keelcroft.com. Security reports: same address, subject line “Security”.
Azure DevOps and Microsoft Entra are trademarks of Microsoft Corporation. Keelcroft is an independent publisher and is not affiliated with, endorsed by, or sponsored by Microsoft or Atlassian.