Hierarchy

Hierarchy is crucial in organizing work, managing projects, and tracking progress. Within Getint, we provide the possibility to integrate your current workflow with other tools or across other Jira instances/projects. Therefore, setting the hierarchy levels is necessary to incorporate all issues efficiently.

How does it work

This feature is available for all type mappings when building an integration. However, it is important to note that not all apps support hierarchy in the same way as Jira, Asana, Monday, or Azure DevOps to name a few.

At its core, it revolves around different types of issues such as:

  • Epics: Represent high-level initiatives or large work items.

  • Stories/Tasks: Individual units of work that contribute to an epic.

  • Subtasks: Manageable tasks required to complete a story.

For example, this would be the standard hierarchy levels in a Jira to Jira integration. For other apps, please ensure you use type mappings that match the items on the other side (i.e. Epic - Epic, Task - Item, Subtask - Subitem).

At present, Getint allows to sync Hierarchy in a standard manner. While it works perfectly for simple scenarios, we’re currently working on improving the feature for more advanced use cases where the hierarchy tree consists of several hierarchy levels and uses links for defining relationships.

How to set up a Hierarchy

The feature is easily accessible within your type mappings, but it is required to select the correct options for an error-free synchronization.

Enabling the feature

  1. Go to your integration and open the corresponding type mapping. For stories/tasks that you would like to sync the Epic link, you’ll need to go to Hierarchy > enable Synchronize Epic relationship > display the dropdown and select the Parent Link (NextGen projects).

  1. For subtasks, open the corresponding type mapping > enable the Synchronize Subtasks relationship > display the dropdown and select the Parent Link.

Do not modify the Hierarchy options for Epics as this will break the integration. Only enable relationships for Stories/Tasks/Bugs and Subtasks.

  1. Save the changes and test your integration.

Considerations to take

Please make sure the following criteria are met when setting up your hierarchy. Otherwise, issues won’t sync properly.

  • Respect the hierarchy levels. The Quickbuild feature enables you to align your type mappings appropriately and automatically establishes links for available hierarchy relationships. However, if you’re building your integration manually, it is necessary to order the issues properly. Otherwise, sync will fail as Getint will try to create/update a task first without an existing parent. This would be the correct order: Epics first, Stories/Tasks/Bugs second, and Subtasks last.

  • Do not modify the Hierarchy options for Epics as this will break the integration. Only enable relationships for Stories/Tasks/Bugs and Subtasks.

  • When working with existing projects that have an established hierarchy, it’s advisable to move or bulk-move all the issues in order. For example, move all the Epics first to the other side, and then handle the Tasks and Subtasks afterward. This approach ensures that when updating any tickets or creating subtasks, they will sync accordingly since there’s already an existing parent on the other side.

Common issues when establishing a hierarchy

When establishing a hierarchy, it is crucial to follow all the recommended steps outlined in this article. Failing to do so may result in errors similar to those listed below.

Error

Invalid response status code received (expected: 201 but got 400). Response: {errorMessages":[]

errors:{"parentId":"Given parent issue does not belong to appropriate hierarchy."}}"

This error occurs when issues are not mapped in the correct sequence required to establish the hierarchy. For example, if the parent issue is not yet synced in the integration or if the items are mapped incorrectly. Additionally, if the hierarchy levels exceed what is currently supported, the workflow will not match the one that was mapped.

Error

Invalid response status code received (expected: 201 but got 400). Response: {errorMessages":[]

errors:{"parent":"Could not find issue by id or key."}}"

This error happens when Getint can't find or create the matching item on the other side. First, transfer all the issues and then set up the ParentLink. If the items are out of order, like Subtasks - Subitems, and then Tasks - Items, Getint will struggle to find the parent because it’s attempting to sync the Subtask ahead of everything else.

Error

Invalid response status code received (expected: 201 but got 400). Response: {errorMessages":[]

errors:{"issuetype":"Issue type is a sub-task but parent issue key or id not specified."}}”

This issue will occur when the hierarchy is not configured for subtask types.

Conclusion

Thanks to the Hierarchy feature, Getint allows users to sync issues with their respective parents and children without losing track of their progress. This opens a wide range of possibilities to group any stories, tasks, and subtasks to efficiently manage your workflows.

Last updated