Cloud → DC Sync Not Triggering Automatically After DC → Cloud Issue Creation

We have an Exalate connection set up between Jira Data Center and Jira Cloud.
The sync from Jira DC → Jira Cloud works as expected: when we create an issue in Jira DC, Exalate creates the corresponding issue in Jira Cloud.

However, we also need data to sync back from Cloud → DC immediately after the Cloud issue is created, specifically:
Remote Issue Key
Remote Issue URL

We have Cloud outgoing rules and DC incoming rules configured, but the Cloud → DC sync is not running automatically when the Cloud issue is created as part of the initial sync (i.e., from a remote event).

It appears that the Cloud-side trigger (“Issue created/updated”) does not fire when an issue is created by Exalate as a result of a DC → Cloud sync.

To confirm, after the issue is created on Cloud by Exalate, if we manually update the Cloud issue, the Cloud → DC sync works and the fields get updated. But it does not run automatically on creation.

Our current Cloud outgoing sync:

replica.key = issue.key
replica.type = issue.type
replica.assignee = issue.assignee
replica.reporter = issue.reporter
replica.summary = issue.summary
replica.description = issue.description
replica.labels = issue.labels
replica.comments = issue.comments
replica.resolution = issue.resolution
replica.parentId = issue.parentId
replica.priority = issue.priority
replica.attachments = issue.attachments
replica.project = issue.project
replica.status = issue.status
replica.project.versions =
replica.project.components =

DC incoming sync:

issue.customFields.“Remote Issue Key”.value = replica.key.toString()
issue.customFields.“Remote Issue URL”.value = remoteIssueUrl

Questions for Support:

  1. Is it expected behavior that Jira Cloud does not trigger outgoing sync rules when an issue is created by Exalate (remote create event)?
  2. If so, what is the recommended approach to automatically sync Cloud → DC immediately after the issue is created on Cloud?
  3. Is there an officially supported pattern for round-trip syncing fields (DC → Cloud → DC) during initial issue creation?

We want to ensure we are following best practices and not relying on unsupported workarounds.

Thank you!

Great questions! Here’s a breakdown based on Exalate’s current behavior and best practices:

  1. Is it expected that Jira Cloud does not trigger outgoing sync rules when an issue is created by Exalate (remote create event)?
    Yes, this is expected. When Exalate creates an issue on Jira Cloud as part of a remote sync (e.g., from Jira DC → Cloud), the standard “Issue created/updated” trigger on Cloud does not fire. This is because Exalate’s own API creates the issue, and Jira Cloud’s webhooks don’t consider this a user-initiated event. As a result, outgoing sync rules on Cloud aren’t triggered automatically at creation.
    Reference: Watchers field sync note

  2. Recommended approach to automatically sync Cloud → DC after Cloud issue creation:
    Since the outgoing sync isn’t triggered on creation, the usual workaround is to ensure that a subsequent update (like editing a field or adding a comment) on the Cloud issue will trigger the sync. However, for fully automated round-trip sync (without manual intervention), there isn’t a built-in trigger for this scenario in Jira Cloud.
    If you need this to happen automatically, you may consider:

    • Using an automation rule in Jira Cloud to update a field (even a dummy field) right after issue creation, which will then trigger the outgoing sync.
    • Contacting Exalate support to discuss advanced webhook or trigger configurations, as some scenarios (like worklog/comment sync) require backend adjustments by the Exalate team.
      Reference: Comments/worklog sync trigger
  3. Officially supported pattern for round-trip syncing fields during initial creation:
    There isn’t an “official” Exalate pattern that guarantees Cloud → DC sync immediately after Cloud issue creation as part of the initial DC → Cloud sync. The most reliable approach is to trigger a Cloud-side update (via automation or script) after creation, which will then fire the outgoing sync and update DC with the required fields (like Remote Issue Key/URL).
    Manual sync is always possible via the Exalate panel, but for automation, a post-creation update is the best practice.

Summary:

  • The behavior you’re seeing is expected due to how Jira Cloud handles events from Exalate.
  • To automate round-trip sync, use a Jira Cloud automation to update the issue after creation, or consult Exalate support for advanced options.
  • There’s no out-of-the-box, fully automatic round-trip sync for this scenario, but the automation workaround is widely used.

Let me know if you need a sample Jira Cloud automation rule for this!

Hi,

If I understand correctly, the problem statement can be simplified to:

  1. DC issue created and send to Cloud side
  2. Issue created on Cloud
  3. (missing) Cloud should send a sync event back to DC, so that key can be populated in DC
  4. If Cloud ticket is updated, everything works normally.

If this is correct, then the solution is to use syncBackAfterProcessing() as the last line within the firstSync block on cloud side.

Please let me know if it works for you!

Thanks
Majid

1 Like

Hi @uday.raparthy ,

I was wondering if you were able to resolve this one?

Thanks