# Publishing Workflows

A workflow has two states: **Draft** (work-in-progress, not visible to users) and **Published** (live). The four row actions on the Workflows page move workflows between those states or duplicate / delete them.

## Status at a glance

| Status        | Who can see the workflow                     |
| ------------- | -------------------------------------------- |
| **Draft**     | Only Client Admins, in the Workflow Builder. |
| **Published** | Live for any user with the assigned role.    |

Only **one Published workflow per role at a time**. Publishing a draft auto-sets the previous Published version (if any) to Draft.

## Available actions by status

| Status        | Actions on the row                                                      |
| ------------- | ----------------------------------------------------------------------- |
| **Draft**     | **Publish** · **Copy** · **Delete** (Delete only on non-default drafts) |
| **Published** | **Set as Draft** · **Copy**                                             |

## Publish a workflow

{% stepper %}
{% step %}

### Open Workflow Builder

Click **Workflow Builder** in the sidebar.
{% endstep %}

{% step %}

### Find the workflow

Look in the entity-type group for the role. The workflow shows **Draft** in the Status column.
{% endstep %}

{% step %}

### Click Publish

The button is in the Actions column. Status flips to **Published** immediately — no confirmation dialog.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
Users may need to refresh their browser to pick up the very latest version. Most navigations refresh the workflow automatically.
{% endhint %}

## Set a published workflow back to Draft

Click **Set as Draft** in the Actions column. The workflow becomes invisible to end users immediately — they lose access until you publish again or publish a different workflow for the role.

Use this when you need to take the live experience offline temporarily, or when you want to make significant changes before re-releasing.

## Copy a workflow

The **Copy** action duplicates a workflow into a new Draft. Use it for:

* Experimenting with changes without affecting the live version.
* Building a variant of an existing workflow.
* Testing a new layout side-by-side with the current one.

A confirmation dialog appears: *Copy Workflow — Are you sure you want to copy this workflow? A new workflow will be created as a copy of the selected one.* Click **Copy** to confirm. The new workflow appears in the same entity-type group as a Draft.

## Delete a workflow

Only available on **Draft** workflows that aren't defaults. To delete a Published workflow, **Set as Draft** first.

Confirmation dialog: *Are you sure? This action cannot be undone. This will permanently delete the workflow for {role}.*

Before deleting:

* Confirm no users are currently relying on the workflow's role.
* Consider keeping it as Draft instead — it's free to leave around and can be re-published.

## Making changes after publishing

Two patterns:

* **Edit live.** Open the published workflow, change modules or settings, save. Changes reach users on next navigation.
* **Branch and swap.** Click **Copy** to create a Draft, edit and test the copy, then **Publish** the copy. The old version auto-becomes Draft. This is safer for big changes.

For changes inside a single page, just open the module and use the Page Builder — the page becomes part of the live workflow on save.

## What success looks like

* Status badge on the row matches what you intended.
* Active Workflows in the sidebar reflects the change (Published workflows appear, Drafts disappear).
* A test user with the assigned role sees the right experience.

## Common issues

* **Published the wrong workflow by mistake** — set the wrong one to Draft, then Publish the right one. Brief downtime while neither is live.
* **Delete button missing** — the workflow is either Published (Set as Draft first) or it's a default workflow (defaults can't be deleted).
* **Copy didn't show up** — the new copy lands in the same entity-type group. Scroll if your list is long, or refresh.

## Related

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Workflow Builder</strong></td><td>The Workflows page where these actions live.</td><td><a href="/pages/mLgK2JGhOVvPaMyi0m1U">/pages/mLgK2JGhOVvPaMyi0m1U</a></td></tr><tr><td><strong>Active Workflows</strong></td><td>The sidebar group of currently Published workflows.</td><td><a href="/pages/qnQ3PwOBvOrT2nKQqt0g">/pages/qnQ3PwOBvOrT2nKQqt0g</a></td></tr><tr><td><strong>Assigning Workflows</strong></td><td>Link a workflow to a role and assign that role to users.</td><td><a href="/pages/I8V6XFZwzQlYGPl43AY0">/pages/I8V6XFZwzQlYGPl43AY0</a></td></tr></tbody></table>


---

# 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.in8sync.com/client-admin-guide/workflow-builder-overview/publishing-workflows.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.
