> ## Documentation Index
> Fetch the complete documentation index at: https://flatfileinc-remove-rss-json.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Spaces

> the anatomy of a Space

<Snippet file="shared/dxpbanner.mdx" />

Flatfile Spaces are micro-applications, each having their own database,
filestore, and auth. Use Spaces to integrate Flatfile into your data exchange
workflow, whether that happens directly in your application or as part of a
currently offline process.

## Anatomy

A Space is comprised of Workbooks, Files, Users, Documents, Themes and Metadata.

<img src="https://mintcdn.com/flatfileinc-remove-rss-json/dfkbR2CxeTY-7YW9/images/concepts/spaces_anatomy.png?fit=max&auto=format&n=dfkbR2CxeTY-7YW9&q=85&s=ccce07426de4e86da916d97f69b9634b" caption="The anatomy of a Space" width="1440" height="821" data-path="images/concepts/spaces_anatomy.png" />

### Reference

[See API Reference](https://reference.flatfile.com/api-reference/spaces/create)

#### `Workbooks` *object*

A Space contains any number of Workbooks. Each

<Tooltip tip="Analogous to a database...">
  [Workbook](/learning-center/architecture/workbooks)
</Tooltip>

is a Blueprint-defined database.

<Tip>
  Add the label 'pinned' to your workbook to ensure it appears as the first
  workbook in the sidebar.
</Tip>

#### `Files` *object*

Files are uploaded directly to a Space.

#### `Users` *object*

By default, all global Admins in Flatfile have access to all Spaces.
Additionally, you can configure a Space to allow for either temporary
(`shared_link`) or named (`magic_link`) Guest Users.

#### `Documents` *object*

Documents are custom pages that are mounted on the Space and display in the
sidebar of a Space in the order of their addition to the Space.

#### `Theme` *object*

Theming of Flatfile is controlled at the Space level. A comprehensive list of
Theme options are available [here](/learning-center/guides/theming).

#### `Metadata` *object*

Spaces can be created and updated with Metadata. This could include a
company-specific identifier such as a UUID for use in API operations in the
Space.

## Versioning and Restore

Spaces maintain version history of their components, allowing you to restore a space to a previous point in time if needed. This feature is particularly useful for:

* Recovering from unintended changes
* Rolling back problematic data transformations
* Returning to a known good state

Learn more about this capability in the [Space Restore guide](/learning-center/guides/space-restore).
