# Collaboration

## Demo Video

{% embed url="<https://www.loom.com/share/75f65800017647399a2f3d1ecece00b8>" %}

## Intro to Collaboration

Feathery allows form designers to invite multiple users to collaborate on a single form submission. They can specify the number of collaborators, assign fields, ordering, and more.

In order to use collaboration with your form, you must first enable form collaboration in form settings and save your settings.

<figure><img src="/files/SiKTgkUQ11pUU9iBwNmR" alt=""><figcaption></figcaption></figure>

Once enabled, you may define collaborator settings in the same place (form settings) or on the user collaboration dialog available from the form publish dropdown (see below).

Collaboration workflows are accessible via your form publish dropdown, towards the bottom.

<figure><img src="/files/fRbPMGTMAb9FwQBABhxk" alt="" width="246"><figcaption></figcaption></figure>

## Define your collaborator settings

You have the ability to specify how many people will be collaborating on a single submission, along with which fields each collaborator will be able to fill out. You can also specify if you want them to fill out the form sequentially or not via the **Set Collaborator Order** toggle.

Feathery stores your configuration into a template, so it's easily accessible the next time you're looking to invite users.

<figure><img src="/files/NxQRtai0ahOaFNUA8MYA" alt="" width="375"><figcaption></figcaption></figure>

## Choose how to start the submission(s)

1. [Invite (and bulk invite) all collaborators via email](/platform/collaborative-workflows/collaboration/email-invite.md)
2. [Start a submission immediately](/platform/collaborative-workflows/collaboration/start-directly.md)

<figure><img src="/files/nZrhtepyiPJR2JU8ahkJ" alt="" width="375"><figcaption></figcaption></figure>

## User Groups

Feathery supports assigning tasks to a collection of users such as a User Groups (defined [here](/platform/account-settings/permissions-and-user-groups.md)) and lists of email addresses. This is useful for assiging tasks to an internal department, for example. Any user in that User Group can claim the collaboration task and complete it. If another user tries to complete the task after it has been claimed, they will be notified that another member has already claimed the task.

![](https://lh7-us.googleusercontent.com/9HnTvyMX3ccAaJOEe6EfdmXiGV8h7yZJoUKjAS_Hlf26_tRiKU-SIF_DvMzPDO_m47W1Cy7_qlU-t_9VPnyi91KpzaG2JvdOyaVEUGm10aHhDeas1hMRwmE1tOPi4u1JlEPyyyYOnAzsbsrxTqNd821-Ng=s2048)

## Completion Criteria

Now that there are multiple collaborators on a submission, the submission isn't considered "complete" until each one of the collaborators has completed their section. You should set up your event triggers accordingly.

## Track Pending Collaborator

For ordered collaborative submissions, you can track the current collaborator whose turn it is to work on the submission. For unordered submissions, you can view all collaborators who still need to complete the submission.

To do this, go to your form results and click **Edit Table View**. Then, update your table view with a column for the **Pending Collaborator** attribute. Collaborative submissions will automatically show the pending collaborator in that column.

If you're an admin or the pending collaborator, you can click on the submission and see a button called **Open Collaborative Submission**, which you can click on to continue working on that collaborator's part of the submission.

<figure><img src="/files/cwwDRWQECU5xM7MGFOQi" alt=""><figcaption></figcaption></figure>

## Send Custom Emails to Collaborators <a href="#collaborator-emails" id="collaborator-emails"></a>

When your collaborator template is defined, you'll now see a toggle on your [email integration](https://feathery.io/integrations/email) that allows you to define the email recipients as the collaborators on the form submission. This is useful if you want to send a custom email to all of the users who collaborated on a submission.

<figure><img src="/files/dBSjYwRqgfB4zSxasXt6" alt="" width="375"><figcaption></figcaption></figure>

## End User Collaboration Control <a href="#collaborator-emails" id="collaborator-emails"></a>

You have [collaboration-related click actions](/platform/build-forms/actions.md) available to set on your form to allow your end users to control the collaboration routing sequence.

## Prefill Feathery [Account Info](/platform/account-settings/account-attributes.md)

Standard and custom account attributes can be prefilled into a collaborative submission when the owner of a Feathery account is the one who's filling out their portion of a collaborative submission. There are two ways you can do so:

1. Select a field in the designer, go to the **Properties** tab, **Semantic Meaning** section, and set the **Attribute** to the relevant information you'd like to prefill. Then, the account attribute will automatically be prefilled into this field when they load the collaborative submission.

<figure><img src="/files/2Ik2xe4oZWq0IAmxcJHP" alt="" width="341"><figcaption></figcaption></figure>

1. You can access the relevant attribute via the special hidden field **feathery.account.\<attribute name>**. E.g. if you have an account attribute called **First Name**, you can access its value via the **feathery.account.first\_name** hidden field.

## Custom Logic with Active Collaborator

You can add custom logic to your form that is based on the currently active collaborator on the submission.  To do this, use the special hidden field: `feathery.collaborator`.  This is supported in:

* Custom Validations
* Show or Hide rules
* Conditional navigation
* Logic Rules.

For example, you may wish to hide certain form fields based on the specific collaborator combined with other conditions.  The `feathery.collaborator` hidden field contains the label of the collaborator as configured in settings (see above).

### Collaborator Info in Logic Rules

Feathery forms make additional information about the active collaborator available within [advanced logic rules](/platform/build-forms/advanced-logic.md) via the `feathery.collaborator` global object.  The `collaborator` object is a sub-property of the `feathery` object that is  available as a global in all logic rules.  The `feathery` global is documented in the [Context API](/develop/context-api.md).  All properties are READ ONLY.

<table><thead><tr><th width="220" align="center">Collaborator Property</th><th align="center">Type</th><th>Description</th></tr></thead><tbody><tr><td align="center"><code>label</code></td><td align="center"><code>string</code></td><td>The collaborator label as defined in the collaborator template configuration.  Read-only.</td></tr><tr><td align="center"><code>orderNumber</code></td><td align="center"><code>number</code></td><td>The order/position of the current collaborator in the collaborator template configuration.  Starts at 0.  Read-only.</td></tr><tr><td align="center"><code>permission</code></td><td align="center"><code>string</code></td><td>The collaborator's form fields access: 'custom' or 'all'.  Read-only.</td></tr><tr><td align="center"><code>permissionFields</code></td><td align="center"><code>string[]</code></td><td>If permission is 'custom', then this is an array of field keys.</td></tr></tbody></table>

## Task Queue

Feathery also provides a task queue for logged-in users to see all currently assigned tasks (which are form submissions that they've been invited to collaborate on). From this view, they can filter for current or past tasks and complete them. Admins can also see every pending task across their organization.&#x20;

<figure><img src="/files/NR1jUL7KKcJ6JjerIrla" alt=""><figcaption></figcaption></figure>

## Audit Logs

When the collaboration template is defined, you'll be able to attach an audit log to emails sent out via your [email integration](https://feathery.io/integrations/email). The audit log will contain IP address and timestamps for when each collaborator was:

* Invited
* Viewed the form
* Edited the form
* Completed their part of the form


---

# 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.feathery.io/platform/collaborative-workflows/collaboration.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.
