# Sharing and collaboration

## Share with other users in your organization

This guide describes how you can share a workflow with the other users within your CARTO organization.

When you create a workflow, it’s always set to private by default. To share a workflow, you just need to make sure it has a name, and then click on the ***Share*****&#x20;button in the top-right corner** to open the sharing options.

A new dialog screen will open allowing you to select who do you want to share your workflows with:

<figure><img src="https://3029946802-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FybPdpmLltPkzGFvz7m8A%2Fuploads%2Fgit-blob-8c87886389f316967975fade607c8b1e629c94a1%2FScreenshot%202025-06-30%20at%2017.06.48.png?alt=media" alt=""><figcaption></figcaption></figure>

Currently, we support the following two main sharing options:

* **Private**: Only you can view and edit the workflow.
* **Organization**: The workflow will be visible to all users in your organization. Editor users will be able to duplicate the workflow so they can create a copy and start working on it.
  * If you have Single Sign-On (SSO) and **Groups** **enabled** at your organization, you will be able to share workflows only with specific groups, instead of the entire organization. Read more about [Managing user groups](https://docs.carto.com/carto-user-manual/settings/users-and-groups/managing-user-groups).
  * You can also share only with specific users in your organzation.

## Editor collaboration

Enable the "*Allow editing this workflow*" option to allow collaboration from other editor users with access to the map.

<figure><img src="https://3029946802-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FybPdpmLltPkzGFvz7m8A%2Fuploads%2Fgit-blob-577931a75d32564c4132b0fdd0e54d9195f0404b%2FScreenshot%202025-06-30%20at%2016.43.49.png?alt=media" alt=""><figcaption></figcaption></figure>

After you enable this setting, all editors with access to this map will also be able to edit it. A few things to take into consideration:

* To enable editor collaboration, **the connection used to create the workflow also needs to be shared**.
* When using the CARTO Data Warehouse, or a connection with [Viewer Credentials](https://docs.carto.com/connections/sharing-a-connection#requiring-viewer-credentials-on-shared-connections), each user will use their own [temporal storage for Workflows](https://docs.carto.com/carto-user-manual/workflows/temporary-data-in-workflows), meaning that the result of each node and their execution status will not be shared.

Collaboration is **asynchronous.** If two users try to open the map at the same time, a pop-up will appear to decide who will take control of the map at that moment. If the current editor is away from the keyboard, the new editor can take control of the map in 30 seconds.

<figure><img src="https://3029946802-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FybPdpmLltPkzGFvz7m8A%2Fuploads%2Fgit-blob-6b01fc73ac6a889346e9ef71f6134bd093818413%2FScreenshot%202025-06-30%20at%2017.04.52.png?alt=media" alt=""><figcaption></figcaption></figure>

The current editor can also choose to deny the take over, remaining in control of the map until the map is closed.

## Viewer Mode

Editors can also share workflows with **viewer access**, allowing other users to run the workflow with configurable parameters without being able to edit the canvas.

To set up a workflow for Viewer Mode, editors need to:

1. Define **viewer parameters** by marking variables with the Viewer scope.
2. Place a [**Viewer Result Output**](https://docs.carto.com/carto-user-manual/components/input-output#viewer-result-output) component to define which results viewers can see.
3. Configure **viewer settings** in the Share dialog to control what viewers can access.

{% hint style="info" %}
For complete details on setting up and using Viewer Mode, see the dedicated [Viewer Mode](https://docs.carto.com/carto-user-manual/workflows/viewer-mode) page.
{% endhint %}

## Export a workflow as a SQL file

Click on the three dots in the upper-left corner and find 'Export'

<figure><img src="https://3029946802-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FybPdpmLltPkzGFvz7m8A%2Fuploads%2Fgit-blob-f1be7f63b64ee0f7aeafa4345dfed3eae1e77bab%2FScreenshot%202023-10-03%20at%2017.28.17.png?alt=media" alt=""><figcaption></figcaption></figure>

This action will download a file that contains the SQL code needed to create a stored procedure based on the contents of your workflow. It will observe existing variables and parameters, the former being exposed as input parameters for the stored procedure.

## Import a workflow from a SQL file

A `.sql` file that was obtained by exporting a workflow can be imported to reproduce the same workflow. There are two different ways to import a workflow:

* Drag a drop a compatible `.sql` file into your Workflows page in Workspace.
* Click the import button next to *+ New workflow* and select a file from your computer.

{% embed url="<https://vimeo.com/877559106?share=copy>" %}
