Sharing workflows means granting another Tray user access to your workflow and permission for them to make changes to it. This makes it much easier to collaborate when building and maintaining your workflows.
Any workflow can be shared with any number of Editors! There are a couple of important definitions here:
- Owner - The workflow Owner is the person who created the workflow. The workflow can be thought of as theirs and they control who has access to it. The workflow Owner also owns all of the Auths that are used by that workflow.
- Editor - Anyone who is invited to edit a workflow by its Owner. An Editor can make changes to the workflow but cannot add new auths and cannot share the workflow with others.
When an Owner shares a workflow with an Editor the Editor receives an email inviting them to edit the workflow. Upon accepting this invitation the workflow will appear in the Editor's dashboard.
Importantly, Owners and Editors are accessing the same workflow - it is not a copy of the original. Therefore any changes made to the workflow can be seen by everyone and have immediate effect.
The Share Workflow Dialogue can be opened from the top right of the builder, the dashboard, or from the workflow settings cog in the top left.
To share a workflow with another user enter their email address in the Share Workflow dialogue. This will send them and invitation email. They will show up as "pending" until they have accepted this invitation. If they're in your team their email will be replaced by their name. From this dialogue you can invite more people to edit your workflow and also revoke people's editing rights by clicking the cross next to their name.
If a workflow has been shared with you then you are an Editor of that workflow. Workflows that have been shared with you are labelled in the dashboard. There are are few restrictions to what you can do with a workflow that has been shared with you:
- You cannot rename the workflow
- You cannot delete the workflow
- You cannot share the workflow with others (if you want more people to be able to edit the workflow, you must contact the workflow's Owner)
Importantly, you can still duplicate a workflow that has been shared with you. This will create a copy of the workflow. You will be the Owner of the new workflow and you will no longer have access to the authentications from the previous workflow.
This is really useful if you want to share a workflow with someone but you don't want to keep collaborating on it or you want to use it as a demonstration for how to build something. You can share the workflow, the Editor can then create a copy of it for themselves and you can stop sharing it with them.
When you share a workflow you also share all of the authentications that are being used by that workflow. Otherwise, other people could not use your workflow from their account.
Editors can use the authentications in new steps when they make changes to the workflow. However, an Editor cannot use these authentications outside of the shared workflow. As an Owner, this means that if you share a workflow that includes your slack authentication nobody can authenticate as you from another workflow that you can't see and don't control.
Editors cannot add their own authentications. Only a workflow Owner can add authentications. If an Editor wants to add a step that requires a new authentication then the workflow Owner will need to create it so that it is shared with everyone.
The three scopes of Data Storage (Run, Workflow, and Account) work in the following way:
- Run - Each workflow run is specific to the workflow and sharing the workflow has no effect.
- Workflow - Workflow level data storage is also bound to the workflow and sharing the workflow has no effect. If the workflow is manual the workflow scope data storage will persist across all runs regardless of which Editors or Owners run the workflow.
- Account - Account level data is only available for the Owner account. Any data stored by Editors using the account scope from other workflows is not available. If the Owner stores account scope data in other workflows then it is available for all editors within the shared workflow.
CAN TWO PEOPLE WORK ON THE SAME WORKFLOW IN REAL TIME?
No. You would create collisions with one another so there's a mechanism in place to prevent this from happening. You'll see this warning if changes are being made elsewhere to the same workflow.
WHAT'S THE DIFFERENCE BETWEEN AN EDITOR, AN OWNER, A "SHARED" WORKFLOW, AND A "SHARED WITH ME" WORKFLOW?
An Owner is the person who created a workflow and owns the Auths for a workflow.
An Editor is someone who has been invited to edit a workflow by the workflow Owner.
A workflow that shows up in your dashboard with a "shared" label has been shared with someone else by you. You are the Owner of the workflow.
A workflow that shows up in your dashboard with a "shared with me" label has been shared with you. You are an Editor of the workflow.
WHY CAN'T I SHARE A WORKFLOW THAT'S BEEN SHARED WITH ME?
If a workflow has been shared with you then you're an Editor of that workflow. The workflow will have a "shared with me" label in the dashboard. Only a workflow Owner can share workflows because they need to manage the Auths that are associated with that workflow. If you want to share that workflow then duplicate the workflow to create a copy. You will be the Owner of this new workflow so you can then add your own Auths and share the workflow as you please.
HOW CAN I TELL WHO MADE AN UPDATE TO A WORKFLOW?
We will soon be introducing an audit log which will show which users have made changes to a shared workflow.
CAN I GIVE SOMEONE READ ONLY ACCESS TO MY WORKFLOW?
No. Sharing a workflow allows the Editor to make whatever changes they wish. If you want to use a workflow as an example it is best to share the workflow and then have the Editor duplicate the workflow. They will be the Owner of their new workflow and changes will not be reflected on the workflow you shared.
CAN I CHANGE THE OWNER OF A WORKFLOW?
No. A workflow's Owner is always the person who created it. You can share the workflow and then have the Editor duplicate the workflow. They will become the Owner of this new workflow and can invite everyone to collaborate on that workflow.
HOW DOES ALERTING WORK WHEN SHARING A WORKFLOW?
Only the Owner of a workflow can select alerting workflows. The alerting workflow must be in the Owner's account.
HOW DO CALLABLE WORKFLOWS WORK WHEN SHARING A WORKFLOW?
Only the owner of a workflow can add set up new "Call Workflow" steps. The workflow must be in the Owner's account. When a workflow is shared that calls another workflow, the workflow that is called is not automatically shared too. That must be done separately.