# Linked Issues Condition & Validator

Both **Linked Issues Condition** and **Linked Issues Validator** help ensure that related issues (linked issues, sub-tasks, stories, children or parent) are in the right state before allowing a transition to proceed. If they’re not, the transition is blocked. Simple as that!

{% hint style="info" %}
**Reminder:** A Condition hides the transition if criteria aren’t met, while a Validator allows the transition button to be clicked but blocks it after submission if requirements fail.
{% endhint %}

<figure><img src="/files/wAE38KYzNTydaLWXTTqs" alt=""><figcaption><p>Example: Ensure that child issues - Stories and Tasks are completed and at least one of them is attached to the parent issue.</p></figcaption></figure>

## ⚙️ Configuration Options

{% hint style="info" %}
If you're looking for how to add a condition or validator to a workflow transition, check out our [Setup Conditions and Validators](/workflow-building-blocks-for-jira/administrator-guide/setup-conditions-and-validators.md).
{% endhint %}

### Relation

Pick what kind of issue relationship you want to check:

* **Linked Issues** – Regular issue links like "blocks" or "relates to."
* **Sub-Tasks** – Checks the issue’s sub-tasks.
* **Stories** – Validates an Epic’s child issues (excluding sub-tasks).
* **Children** – Checks both child issues and sub-tasks. Works when you’ve set up multiple hierarchy levels.
* **Parent** – Validates the parent issue.

{% hint style="warning" %}
Remote Links and Web Links cannot be validated. Read more in [Limitations](https://docs.forgappify.com/workflow-building-blocks-for-jira/testing-and-debugging/limitations#linked-issues-and-web-links).
{% endhint %}

### Link Types (optional)

If using **Linked Issues**, you can filter by specific link types. Links have a **name and direction** (e.g., "relates to" might have incoming and outgoing links).

{% hint style="info" %}
If left empty, all linked issues will be validated.
{% endhint %}

### Issue Types (optional)

Only need to check specific issue types? No problem—just set a filter! Great for:

* Only certain issue types need to be completed before transitioning.
* You want to enforce having a child of a specific issue type.

{% hint style="info" %}
Leave empty to validate all related issues
{% endhint %}

### Require At Least One Issue

Checks if at least **one** issue exists that matches the selected relation (and previous filters). If not, the validator fails.

### Status Category and Statuses

**Best Practice:** Use **Status Categories** instead of specific statuses to check if related issues are completed.

* **Why?** Status names can change over time, but categories (To Do, In Progress, Done) stay consistent.
* **Example:** Instead of checking for "Resolved," check if the issue is in the "Done" category.

### Override Validation Message (Validators Only)

This setting allows you to customize the validation message instead of using the default one generated based on your selected settings. You can also use **Jira expression syntax** to make it more dynamic.

Learn more about [writing validation messages](/workflow-building-blocks-for-jira/writing-jira-expressions/writing-validation-messages.md)

{% embed url="<https://www.youtube.com/watch?v=R_PFKatLD28>" %}
How to block a Jira issue transition when blocking linked issues are not completed
{% endembed %}

## Use cases

<details>

<summary>Prevent closing an issue if all linked "is blocked by" issues are not closed</summary>

1. Set Relation to **Linked issues**
2. In Link types: select **is blocked by**
3. In Status category: select **Done**
4. (Optional) In Status: select explicitly which statuses are allowed, e.g. **Closed**
5. (Optional) Check: At least one linked issue, as defined above, must exist if specified links are required.

</details>

<details>

<summary>Allow transition only if at least one sub-task is defined and all the sub-tasks are done</summary>

1. Set Relation to **Sub-tasks**
2. In Status category: select **Done**
3. Check: At least one sub-task, as defined above, must exist

</details>

<details>

<summary>Prevent transition of an epic if there are open issues underneath it</summary>

1. Set Relation to **Children**
2. In Status category: select **Done**

</details>

<details>

<summary>Allow transition of an epic only if all children of type Bug are in the Investigated status</summary>

1. Set Relation to **Children**
2. In Issue types: select **Bug**
3. In Statuses: select **Investigated**

</details>

<details>

<summary>Allow transition only if an epic has at least one child</summary>

1. Set Relation to **Children**
2. Check: At least one child issue, as defined above, must exist

</details>

<details>

<summary>Allow story in an epic transition only if the epic is in progress</summary>

1. Set Relation to **Parent**
2. In Status category: select **In progress**

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.forgappify.com/workflow-building-blocks-for-jira/conditions-validators/linked-issues.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
