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

# Export a workbook

> Send cleaned data out of Vern — as CSV, via webhook, or straight into your API.

Once a workbook looks right, hit **Export** on a sheet's header. One dialog covers every way to get data out.

## CSV

The simplest option. Choose **CSV** in the export dialog, pick the rows you want (everything, or a filtered subset), click **Export**.

A file like `acme-employees-2026-05-12.csv` downloads with template column names as headers, one row per record. Validation errors aren't included — what you export is what's in the sheet.

Use this when:

* You need a human-readable handoff to someone outside Vern.
* You're manually loading the data into your app once.
* You want a backup before making a risky change.

## Webhook

Choose **Webhook** in the export dialog, pick the endpoint you've configured, click **Export**. Vern delivers the rows to your endpoint in batches.

Use this when:

* You want the cleaned data to land in your app automatically.
* You're integrating Vern into your existing onboarding pipeline.
* You're sending data more than once (it's slow to manually export CSVs every time).

You'll need to [set up a webhook endpoint](/help-center/send/webhooks) first.

## Writer

Choose **Writer** in the export dialog to push the workbook straight into your app's API — no endpoint to build on your side. Pick a writer you've already set up, confirm the base URL and credentials for this run, and click **Export**. Vern auto-maps each sheet to the writer's templates and writes the rows to your API, streaming progress as it goes.

Use this when:

* You already have an API (or an OpenAPI spec) and don't want to stand up a webhook receiver.
* You want Vern to call your existing endpoints directly.

You'll need to [build a writer](/help-center/send/write-to-an-api) first.

## Preview vs production endpoints

The export dialog shows two channels: **preview** (for staging/testing) and **production**. Configure separate endpoints for each in your webhook settings — preview goes to your test environment, production to your live one.

## Nested or flat

For webhook exports, you can choose how related sheets are delivered:

* **Flat** — each sheet is its own array of rows. Good for independent sheets.
* **Nested** — child sheets are nested under their parents via link rules. Good when sheets have foreign-key relationships and you want them grouped.

Vern handles circular links between sheets cleanly. The payload schemas for both formats are in the [Webhooks](/help-center/send/webhooks#payload-format) reference.

## Next

* [Webhooks](/help-center/send/webhooks) — set up the endpoint that catches exports.
