# Export Overview

Exports let you retrieve bulk data from your Advocate program in CSV or zipped XLSX format. Use them to back up data, feed a data warehouse, or run analysis outside of impact.com.

### Export types

You can export the following data types:

* `USER`: users in your program
* `USER_REFERRAL`: users with their referral data
* `REFERRAL`: referrals between users
* `USER_REWARD_BALANCE`: users with their reward balances
* `REWARD_BALANCE`: reward balances
* `REWARD`: individual rewards

### Lifecycle

Exports are asynchronous. When you create an export, it enters the `PENDING` state and is queued for processing. Once processing finishes, the export's status changes to `COMPLETED` and the file becomes available for download. If processing fails, the status changes to `ABORTED`. Exports eventually expire (`EXPIRED`) and are no longer downloadable.

Large exports can take time to prepare, so plan for an asynchronous workflow rather than expecting the file to be ready immediately after creation.

### Knowing when an export is ready

There are three ways to detect when an export has completed:

* **Webhooks**: subscribe to the export-completion webhook event before creating the export. Advocate will notify your endpoint as soon as the export is ready. This is the recommended approach.
* **Polling**: store the export's `id` when you create it and call the lookup endpoint periodically to check its status.
* **Listing**: use the list endpoint to retrieve recent exports and inspect their statuses.

### Filtering

When creating an export, you can apply filter parameters to limit which records are included, for example, only records created or updated since a given timestamp. This is particularly useful for incremental exports into a data warehouse. Available filters depend on the export type. See the Create an Export endpoint for the full list.


---

# 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://integrations.impact.com/brand-api-reference/advocate-api-reference-v1/reference/export-overview.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.
