Skip to main content

Working with Issues and Issue Types

Focused Guides Available

This overview has been split into focused guides for better usability:

For specific tasks, use the focused guides above.

Zenhub uses a hierarchical issue system where issues can have different types (such as Epic, Project, or Initiative) and can be organized into parent-child relationships through sub-issues. This overview explains the concepts and directs you to the appropriate detailed guides.

Core Concepts​

Issue Types​

Issue types define the nature and hierarchy of your work items:

  • Levels 1-2: Strategic items (Initiatives, Epics) - typically in Planning Panel
  • Levels 3-5: Execution items (Stories, Tasks, Sub-tasks) - typically on Boards
  • Two variants: ZenhubIssueType (Zenhub-only) and GithubIssueType (synced with GitHub)

➜ Learn more about Issue Types

Issues​

Standard work items that can be assigned types and organized hierarchically:

  • Basic CRUD operations (Create, Read, Update, Delete)
  • Type assignment and updates
  • State management and lifecycle

➜ Learn more about Working with Issues

Sub-Issues​

Parent-child relationships between issues for hierarchical organization:

  • Break down large work into smaller pieces
  • Multi-level hierarchies (Initiative → Epic → Story → Task)
  • Progress tracking across levels

➜ Learn more about Sub-Issues

Quick Examples​

Creating a Strategic Issue​

mutation createIssue($CreateIssueInput: CreateIssueInput!) {
createIssue(input: $CreateIssueInput) {
issue {
id
title
issueType {
... on ZenhubIssueType {
name
level
}
}
}
}
}

Variables:

{
"CreateIssueInput": {
"title": "User Authentication Epic",
"body": "Improve user authentication system",
"repositoryId": "ZENHUB_REPOSITORY_ID",
"issueTypeId": "EPIC_ISSUE_TYPE_ID"
}
}

Creating a Sub-Issue​

mutation createSubIssue($CreateIssueInput: CreateIssueInput!) {
createIssue(input: $CreateIssueInput) {
issue {
id
title
parentIssue {
id
title
}
}
}
}

Variables:

{
"CreateIssueInput": {
"title": "Implement 2FA",
"body": "Add two-factor authentication",
"repositoryId": "GITHUB_REPOSITORY_ID",
"parentIssueId": "EPIC_ID",
"issueTypeId": "STORY_ISSUE_TYPE_ID"
}
}

Creating an Issue Type​

mutation createIssueType($input: CreateInput!) {
createIssueTypeOption(input: $input) {
issueTypeOption {
id
name
level
disposition
}
}
}

Variables:

{
"input": {
"name": "Epic",
"level": 2,
"disposition": "PLANNING_PANEL",
"color": "#6366f1",
"zenhubOrganizationId": "ZORG_ID",
"isEnabled": true
}
}

Common Workflow Patterns​

Strategic Planning Flow​

  1. Create Initiative (Level 1) for quarterly goals
  2. Break into Epics (Level 2) for major features
  3. Define Stories (Level 3) for user requirements
  4. Create Tasks (Level 4) for implementation work

Implementation Workflow​

  1. Plan work with strategic items in Goals & Planning panel
  2. Create implementation issues on workspace boards
  3. Link implementation work to strategic items via sub-issues
  4. Track progress through the hierarchy

Migration from Legacy Systems​

If you're migrating from legacy Epics or Projects:

  1. Audit existing items: Review your current epic/project structure
  2. Design issue type hierarchy: Plan your level 1-5 structure
  3. Create issue types: Set up the types you need
  4. Convert existing items: Use issue type change mutations
  5. Establish new workflows: Train your team on the new structure

The new issue type system provides more flexibility while maintaining organizational benefits.