> For the complete documentation index, see [llms.txt](https://allqueue.gitbook.io/allq/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://allqueue.gitbook.io/allq/features/workflow.md).

# Workflow

Jobs with Parent/Child relationship

Workflows can be accomplished using the concept of jobs that are children of other jobs.

For example, if you have **JOB A**, which needs to wait for **JOB B**, and **JOB C** to be completed first, you can set **JOB B**, and **JOB C** to be children of **JOB A**. This means that regardless of which tube **JOB B**, or **JOB C** are on, **JOB A** will not be able to be reserved until they both have fully completed.&#x20;

{% hint style="info" %}
You can also set timeouts on parent jobs, so that even if all of their children jobs have not completed after X amount of time, they will become available.

Also, there is no limit to how many levels of parent/children jobs can be used, so you can make arbitrarily complex workflows within the queue.
{% endhint %}
