TreeClone for Jira — Deep Clone Issue Trees

Clone Jira Cloud issues, including an epic’s whole tree of child issues and subtasks, into another project. Only fields that exist on the target create screen are sent.

1. Atlassian account

The API token is not saved anywhere. It stays in this page’s memory and only passes through the relay to your site.

2. Source issues
3. Target and content

Copy

4. Run

Your API token is kept only in this page’s memory. Requests go through our relay to your atlassian.net site unchanged; the relay stores nothing.

How to use

  1. Enter your site (your-team.atlassian.net), email and an Atlassian API token, then press Connect.
  2. Find source issues with JQL or paste issue keys or links. Results are all selected.
  3. Pick the target project and issue type, tick what to copy (turn on Whole tree for epics), and preview the tree.
  4. Press Validate to see the dry run, then Run clone and copy the new keys.

Jira’s built-in clone copies one issue at a time and leaves the epic’s children behind. TreeClone walks the tree instead: with Whole tree on it follows both team-managed parent links and the classic Epic Link field, up to six levels deep, and recreates every child under its new parent. Each issue is visited once, so loops cannot run forever.

Before each create, the target project’s create screen (createmeta) is read and only fields that exist there are sent, converted to the right format: options, priorities, users, versions, components and custom fields. Required fields that would stay empty stop that issue before it is created instead of failing halfway. Components are skipped when the target is a different project because their IDs differ.

Optional steps copy comments in their original rich format, re-upload attachments, recreate issue links in the same direction, and move the new issue to the source status when the target workflow has a direct transition to it. Every clone gets a “Cloned from” comment. Browsers cannot call Jira directly because of CORS, so requests pass through a small relay that forwards them as-is; it has a shared daily limit. TreeClone is not affiliated with or endorsed by Atlassian.

Frequently asked questions

Is my API token stored?

No. It stays in this page’s memory and disappears when you close the tab. It is sent only as the Authorization header of each request, which the relay forwards to your atlassian.net site without saving it.

Why does it need a relay?

Jira Cloud does not send CORS headers, so a web page cannot call its REST API directly. The relay only accepts *.atlassian.net hosts and /rest/api/ or /rest/agile/ paths and passes requests through unchanged.

Why did an issue fail with “required field”?

The target create screen requires a field that the source issue has no value for (often parent or due date). Set a parent key or due date in the options, or pick another issue type.

Are children of an epic copied?

Yes, with Whole tree on: children found via parent and Epic Link are cloned under the new epic, recursively up to six levels, including subtasks. Without it, only subtasks are copied when Subtasks is on.

What if the daily limit is reached?

The relay serves a fixed number of requests per day (UTC) for everyone. When it is used up the tool stops and asks you to try again the next day.

Related tools