> For the complete documentation index, see [llms.txt](https://developer.collibra.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.collibra.com/workflows/designing-workflows/processes/process-execution/the-workflow-user.md).

# The workflow user

The workflow user is an out-of-the-box, hidden user that Collibra uses exclusively to perform certain workflow tasks.

The workflow user performs asynchronous operations, such as when you select multiple assets and start a workflow. In this case, the workflows are run by Collibra, and all resulting changes are attributed to the workflow user. A similar scenario occurs when a timer triggers a workflow.

If you start a workflow on a single resource, the operation is synchronous, and the tasks are attributed to you.

{% hint style="warning" %}
Synchronous script tasks are attributed to the user who starts the task. Asynchronous script tasks are attributed to the workflow user.

Notwithstanding the above, the type of actions that the scripts invoke determine whether Collibra checks for permissions or not:

* If the script invokes synchronous calls, such as `domainApi.removeDomain` or `workflowInstanceApi.startWorkflowInstances`, the actions are performed within the workflow context. The users who start the task do not need roles with permissions that allow the task to complete.
* If the script invokes asynchronous calls, such as `importerApi.importExcelInJob` or `domainApi.removeDomainInJob`, the jobs run outside of the workflow context. The users who start the task need roles with permissions that allow the task to complete.
  {% endhint %}
