> ## Documentation Index
> Fetch the complete documentation index at: https://docs.soundchecklive.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Export a workspace and restore it

> Download the eight UEF catalogs as JSON and CSVs, then restore them on Settings → Organization → Imports or commit the UEF bundle

Download the catalogs Soundcheck can write back. Use this to clone a sandbox org, keep a golden UEF fixture, or leave and return. New-customer migrations from Planning Center, Back On Stage, or Master Tour stay on the [coming-from CSV path](/features/imports/coming-from).

Member MCP can clone a workspace (`export_workspace`, `preview_uef_import`, `import_uef`; confirmation-gated). Public MCP does not include those tools. You can still use **Settings → Organization → Data** (zip) and **Imports**. See [Connect your AI (MCP)](/integrations/mcp-server).

The zip is only what [import](/features/imports/overview) can recreate. Ledger, files, branding, forms, and integration secrets stay out.

<Note>
  Workspace export and UEF commit are gated by the same `data-import` flag as **Settings → Organization → Imports**. Organization owners and admins see **Settings → Organization → Data**.
</Note>

***

## What is in the zip

The file is named `soundcheck-workspace-<org>-<date>.zip`.

| Path            | Role                                                                                              |
| --------------- | ------------------------------------------------------------------------------------------------- |
| `manifest.json` | Org name, counts, and catalog load order                                                          |
| `uef/*.json`    | One [UEF](/features/imports/universal-event-format) document per catalog, `source.type: "EXPORT"` |
| `csv/*.csv`     | The same catalogs with wizard catalog-label headers (`Email`, `Event title`, …)                   |

Catalogs, in load order: **Crew → Clients → Inventory → Venues → Songs → Setlists → Events → Leads**. Clients, inventory, and venues are the same dependency tier.

Identity uses an existing spreadsheet `external_id` when the writer already stored one. Otherwise the Soundcheck UUID is used. Inventory, venues, clients, events, and leads keep that identity in the UEF JSON. Inventory CSV also has an **External ID** column so drop-first restore rematches the same way. Songs rematch on title + artist. Crew rematch on email. Inactive crew rows are omitted so restore cannot reactivate them. Clerk memberships are not recreated from the dump. Import writes unclaimed roster rows and sends Clerk organization invitations for those emails. An unmatched exported Owner is invited as **org:admin** (accepting grants financial/admin/owner-only access), so do not restore into a real org if you do not want that person as an admin. An email already claimed on the destination is left alone. Money stays out of the dump: lead budget, inventory replacement cost, and event or invitation performance fees.&#x20;

Export returns **413** when any catalog would exceed 50,000 rows or the uncompressed zip is larger than about 25 MiB. CSV cells that look like spreadsheet formulas are prefixed so Excel and Sheets treat them as text.

Reimport into a new org creates clean identities. A second pass upserts (0 new rows). Same-org reimport still matches natural keys when no spreadsheet identity exists.

***

## Restore the CSVs (drop-first)

**Settings → Organization → Imports** accepts spreadsheets and paperwork. It does **not** accept the workspace `.zip` or `uef/*.json`.

1. Unzip the archive.
2. Open **Settings → Organization → Imports**.
3. Drop the eight `csv/*.csv` files (`members.csv`, `venues.csv`, `customers.csv`, `inventory.csv`, `songs.csv`, `setlists.csv`, `events.csv`, `leads.csv`).
4. Confirm the drop-first target review.
5. Map, preview, and commit.

Filenames and catalog-label headers are what the drop-first review uses to assign targets.

***

## Restore the UEF bundle

On **Settings → Organization → Data**, use **Import UEF bundle**. Pick one or more `uef/*.json` files, or the workspace zip (Soundcheck reads `uef/*.json` from it). That calls `POST /api/v1/organizations/:orgId/imports/uef` and commits documents in catalog load order, skipping the spreadsheet mapper. Bodies over about 25 MiB return **413**.

***

## What does not come back

These exist on the source org and are **not** in the zip, or the writer cannot recreate them:

* Ledger, payouts, Stripe/Cleo, bank details, and catalog money fields (lead budget, replacement cost, performance fees)
* File blobs, contracts, call sheets
* Forms, onboarding, branding, notification history
* Integration tokens, Clerk secrets, webhook secrets
* Ingestion-only UEF (`schedule_items`, `ledger_items`)
* Event↔setlist links, inventory assignments, tours/groups, run-of-show
* Invitation accepted-versus-pending state. Event-member import still creates invitation rows and a Clerk org invite; linking the invitation to an existing user happens when they join.

***

## Related

<CardGroup cols={2}>
  <Card title="Import your data" icon="file-import" href="/features/imports/overview">
    Drop-first wizard for CSVs and paperwork
  </Card>

  <Card title="Universal Event Format" icon="code" href="/features/imports/universal-event-format">
    JSON shape, including `source.type: "EXPORT"`
  </Card>
</CardGroup>
