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

# Document management

> Upload, tag, search, filter, and manage documents in Cloud BMS at the portfolio and building level

**Documents** in Cloud BMS centralizes files such as as-builts, shop drawings, warranties, and O\&M manuals. Tag each file with building, system, vendor, type, and tags so teams can search and filter without folder hierarchies.

The **Documents** module appears at the [portfolio level](/products/kode-os/get-started/introduction#portfolio-level-modules) and [building level](/products/kode-os/get-started/introduction#visualization-and-documents) when Document Management is enabled for the client and for that site. Upload and metadata changes are desktop-only.

<Info>
  The **Vendor** field and **By vendor** grouped view use the [Vendors](/products/assetops/resources/vendors) list from AssetOps. Cloud BMS does not maintain a separate vendor list for documents. If AssetOps is not enabled for a building, vendor options do not appear in upload, filters, or grouped view.
</Info>

### Document table columns

The **All documents** table can show these columns. Use the column control at the right edge of the header row to show or hide fields. Scroll horizontally when many columns are visible.

| Column              | Portfolio | Building | Description                                                                                                           |
| ------------------- | :-------: | :------: | --------------------------------------------------------------------------------------------------------------------- |
| **Name**            |    Yes    |    Yes   | File name as a link. Select the name or external-link icon to open the [document detail page](#document-detail-page). |
| **Building**        |    Yes    |    No    | Building the document applies to. Omitted at the building level because the list is scoped to the open site.          |
| **System**          |    Yes    |    Yes   | System from the platform ontology (for example, Access Control, Audio Visual)                                         |
| **Type**            |    Yes    |    Yes   | [Document type](#document-types) (for example, As-Builts, Budget, Shop Drawings)                                      |
| **Tags**            |    Yes    |    Yes   | Metadata tags assigned on upload                                                                                      |
| **Vendor**          |    Yes    |    Yes   | Vendor from the AssetOps [Vendors](/products/assetops/resources/vendors) list                                         |
| **Uploaded by**     |    Yes    |    Yes   | User who uploaded the file                                                                                            |
| **Uploaded at**     |    Yes    |    Yes   | Date and time the file was first uploaded                                                                             |
| **Last updated at** |    Yes    |    Yes   | Date and time of the most recent file or metadata change                                                              |
| **O\&M document**   |    Yes    |    Yes   | Indicates whether the file is marked as an operations and maintenance document                                        |

**Grouped view** at the building level shows **Name**, **System**, **Type**, and **Tags** by default in the group panel.

***

## Portfolio view

Open **Documents** from the portfolio sidebar to work across all buildings where Document Management is enabled.

### All documents list

The portfolio **All documents** view shows every file in scope in one table. Use **Search by name** and the filter row to narrow results.

<Frame caption="Portfolio All documents list with Building filter and cross-site columns">
  <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-list.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=fb99dfa97e461fd07eb8ac56715be9d5" alt="Portfolio Documents All Documents view with Building System Type Tag and Vendor filters and table columns including Building" width="1024" height="697" data-path="images/kode-os/kode-os-documents-list.png" />
</Frame>

#### Portfolio filters

* **Search by name** — Find documents by file name
* **Building** — Limit results to one or more buildings
* **System** — Filter by system from the platform ontology (namespaces). You cannot add systems manually in this module.
* **Type** — Filter by [document type](#document-types)
* **Tag** — Filter by one or more tags
* **Vendor** — Filter by a vendor from the AssetOps [Vendors](/products/assetops/resources/vendors) list
* **O\&M document** — Quick filter for operations and maintenance manuals

Use the clear-filters control at the end of the filter row to reset dropdowns.

The portfolio table supports all [document table columns](#document-table-columns), including **Building**.

#### Portfolio list actions

* **Upload** — Add new documents. Select a **Building** on upload. See [Upload documents](#upload-documents).
* **Download** — Download a single file from the row action
* **Row menu** — **Edit**, **Replace**, or **Delete**. See [Row actions](#row-actions).
* **Bulk actions** — Select rows to use **Cancel**, **Download**, **Edit**, or **Delete** in the footer bar

<Warning>
  **Delete** removes the document. Use **Replace** on a single document when you need to keep prior versions. See [Replace and version history](#replace-and-version-history).
</Warning>

***

## Building view

Open **Documents** from the building sidebar under **Visualization and documents** after you select a site. The list and filters apply to that building only.

Use the header toggle to switch views:

| View              | Purpose                                          |
| ----------------- | ------------------------------------------------ |
| **All documents** | Single table of all documents for the open site  |
| **Grouped view**  | Browse documents by system, tag, vendor, or type |

### All documents list

**All documents** is the default table at the building level.

<Frame caption="Building All documents list scoped to the open site">
  <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-all-building.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=b15b011152b32058c8cdefdcfc7d3f7b" alt="Building Documents All Documents view with System Type Tag Vendor and O&M Document filters and columns Name System Type Tags Vendor Uploaded At Last Updated" width="1024" height="655" data-path="images/kode-os/kode-os-documents-all-building.png" />
</Frame>

#### Building filters

* **Search by name** — Find documents by file name
* **System**, **Type**, **Tag**, **Vendor**, **O\&M document** — Same meanings as the [portfolio filters](#portfolio-filters). The **Building** filter is not shown because the view is already scoped to the open site.

The building table supports the [document table columns](#document-table-columns) except **Building**.

#### Building list actions

* **Upload**, **Download**, row menu (**Edit**, **Replace**, **Delete**), and bulk actions work the same as at the portfolio level. You do not select **Building** on upload because the site is already set.

### Grouped view

Select **Grouped view** in the header to organize documents by category. The left panel lists groups; the right panel shows documents for the selected group.

Select a grouping tab, then select a group name to load its document list. Each group shows a document count.

<Tabs>
  <Tab title="By system">
    <Frame caption="Grouped view by system with Audio Visual selected and document table">
      <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-grouped-by-system.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=e53129c2377bcd750b9b61d29eb9c2d0" alt="Documents Grouped View By System tab with Audio Visual selected showing document table with Name System Type and Tags columns" width="1024" height="655" data-path="images/kode-os/kode-os-documents-grouped-by-system.png" />
    </Frame>

    Lists systems from the ontology (for example, Audio Visual, Access Control). The main panel title shows the system name followed by **Documents**.
  </Tab>

  <Tab title="By tag">
    <Frame caption="Grouped view by tag with Financial tag selected">
      <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-grouped-by-tag.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=b31255e1f24e3b6aa6afed91bbda6dc2" alt="Documents Grouped View By Tag tab with Financial selected showing two documents with System and Type columns" width="1024" height="658" data-path="images/kode-os/kode-os-documents-grouped-by-tag.png" />
    </Frame>

    Lists tags assigned to documents (for example, Financial). Use this view to find files tagged for a topic across systems and types.
  </Tab>

  <Tab title="By vendor">
    <Frame caption="Grouped view by vendor with vendor group selected">
      <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-grouped-by-vendor.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=f5a0e6b9c8a807227be25ee400696246" alt="Documents Grouped View By Vendor tab with ALI BABA TEST selected showing vendor documents table" width="1024" height="655" data-path="images/kode-os/kode-os-documents-grouped-by-vendor.png" />
    </Frame>

    Lists each vendor from the AssetOps **Vendors** list with a document count. Select a vendor to see only documents linked to that provider.
  </Tab>

  <Tab title="By type">
    <Frame caption="Grouped view by document type with Shop Drawings selected">
      <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-grouped-by-type.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=45c1fd05ef3ed7e77282888b417a0c0c" alt="Documents Grouped View By Type tab with Shop Drawings selected showing one document in the table" width="1024" height="657" data-path="images/kode-os/kode-os-documents-grouped-by-type.png" />
    </Frame>

    Lists [document types](#document-types) (for example, Shop Drawings, As-Builts, Budget). The main panel title shows the type name followed by **Documents**.
  </Tab>
</Tabs>

Within a group, use **Search by name**, dropdown filters, **Upload**, download, row actions, and bulk actions. The grouped table shows **Name**, **System**, **Type**, and **Tags**. Switch back to **All documents** to see every file for the building in one table.

***

## Upload documents

Select **Upload** from the portfolio or building **Documents** page to open the **Upload Document(s)** dialog. Drag files into the upload area or select files to browse.

<Info>
  **File size and formats**

  * **Maximum file size:** 500 MB per file
  * **Supported extensions** include Microsoft Office (`.docx`, `.xls`, `.xlsx`, `.ppt`, `.pptx`) and CAD or 3D formats (`.dwg`, `.rvt`, `.fbx`, `.3ds`, `.max`)
  * **Supported MIME types** include `application/pdf`; image types such as `image/png`, `image/jpeg`, `image/gif`, `image/bmp`, `image/tiff`, and `image/webp`; and broader categories such as `application/`, `audio/`, `font/`, `example/`, `message/`, `model/`, `multipart/`, `text/`, and `video/*`

  Files outside these limits or types may fail to upload.
</Info>

<Frame caption="Upload dialog with vendor, building, tags, and system metadata">
  <img src="https://mintcdn.com/kodelabs/wYHWxi9OuQhq1u6c/images/kode-os/kode-os-documents-upload-metadata.png?fit=max&auto=format&n=wYHWxi9OuQhq1u6c&q=85&s=e8ae22a7d2f814096a4c531370a90dbc" alt="Upload Documents modal with drag and drop area and Vendor Building Tags and System dropdown fields" width="579" height="627" data-path="images/kode-os/kode-os-documents-upload-metadata.png" />
</Frame>

<Frame caption="Upload dialog with document type, O&M flag, and file name">
  <img src="https://mintcdn.com/kodelabs/wYHWxi9OuQhq1u6c/images/kode-os/kode-os-documents-upload-details.png?fit=max&auto=format&n=wYHWxi9OuQhq1u6c&q=85&s=ca9dddf78d42c4b3cf5273ac4afb1107" alt="Upload Documents modal with Type dropdown O&M Document checkbox and Name field for the selected file" width="583" height="621" data-path="images/kode-os/kode-os-documents-upload-details.png" />
</Frame>

<Steps>
  <Step title="Add files">
    Drag files into **Upload documents** or select files to browse. Each selected file appears in a row with its name and size. Remove a file with the **X** on that row if needed.
  </Step>

  <Step title="Set context metadata">
    Assign metadata that drives search and filters.

    <ParamField path="Vendor" type="Dropdown">
      Vendor from the AssetOps [Vendors](/products/assetops/resources/vendors) list. Options match vendors you create at the portfolio level in AssetOps.
    </ParamField>

    <ParamField path="Building" type="Dropdown">
      Building the document applies to. Required when you upload from the portfolio view. At the building view, the open site is applied automatically.
    </ParamField>

    <ParamField path="Tags" type="Dropdown">
      Select one or more existing tags from the dropdown. Use **Search** to find tags in the list. Each tag appears as a checkbox. You can assign multiple tags per document.

      <Frame caption="Tags multi-select with search, existing tags, and Add Tag option">
        <img src="https://mintcdn.com/kodelabs/wYHWxi9OuQhq1u6c/images/kode-os/kode-os-documents-upload-tags.png?fit=max&auto=format&n=wYHWxi9OuQhq1u6c&q=85&s=0f2cdd4aa698c13007ce30d536fbeb20" alt="Upload Documents modal Tags dropdown with Search field, checkbox list of tags such as Railings and Roofing, and Add Tag button" width="585" height="636" data-path="images/kode-os/kode-os-documents-upload-tags.png" />
      </Frame>

      To create a tag during upload, select **+ Add tag**, type the tag name, then press <kbd>Enter</kbd> to add it. The new tag is selected for the document.

      <Frame caption="Press Enter to add a new tag while uploading">
        <img src="https://mintcdn.com/kodelabs/wYHWxi9OuQhq1u6c/images/kode-os/kode-os-documents-upload-add-tag.png?fit=max&auto=format&n=wYHWxi9OuQhq1u6c&q=85&s=437415f6f7c6575a101c17851c8f769c" alt="Upload Documents Tags field with Shop Drawings typed and tooltip Press enter to add the new tag" width="311" height="139" data-path="images/kode-os/kode-os-documents-upload-add-tag.png" />
      </Frame>
    </ParamField>

    <ParamField path="System" type="Dropdown">
      System from the platform ontology.
    </ParamField>
  </Step>

  <Step title="Set type and name">
    Complete required document fields.

    <ParamField path="Type" type="Dropdown" required>
      Document type (for example, As-Builts). Types come from [Document types in Settings](#configure-document-types-in-settings).
    </ParamField>

    <ParamField path="O&M document" type="Toggle">
      When enabled, marks the file as an operations and maintenance document.
    </ParamField>

    <ParamField path="Name" type="Field" required>
      Display name for the uploaded file.
    </ParamField>
  </Step>

  <Step title="Upload">
    Select **Upload** to save the document, or **Cancel** to close without saving.
  </Step>
</Steps>

***

## Row actions

Open the vertical ellipsis menu on a document row in the portfolio or building list.

<Frame caption="Per-document menu with Edit, Replace, and Delete">
  <img src="https://mintcdn.com/kodelabs/wYHWxi9OuQhq1u6c/images/kode-os/kode-os-documents-row-menu.png?fit=max&auto=format&n=wYHWxi9OuQhq1u6c&q=85&s=b9da444802319d81602c280603ab7f36" alt="Documents table row menu open showing Edit Replace and Delete options" width="585" height="410" data-path="images/kode-os/kode-os-documents-row-menu.png" />
</Frame>

| Action      | Description                                                             |
| ----------- | ----------------------------------------------------------------------- |
| **Edit**    | Update metadata without changing the file                               |
| **Replace** | Upload a new file version while keeping the document record and history |
| **Delete**  | Permanently remove the document                                         |

***

## Document detail page

Select a document **Name** link from the portfolio or building list to open its detail page.

<Frame caption="Document detail page with metadata and replacement history">
  <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-detail.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=35e42cc468c9db08ab96ca2f54a75f67" alt="Document detail page showing Name Vendor Building Tags System Type Uploaded At fields and Replacement History section" width="1024" height="438" data-path="images/kode-os/kode-os-documents-detail.png" />
</Frame>

The header includes **Download** and a vertical ellipsis menu for additional actions.

### Metadata

| Field               | Description                                                          |
| ------------------- | -------------------------------------------------------------------- |
| **Name**            | File name as a link to open or preview the file                      |
| **Vendor**          | Vendor from the AssetOps **Vendors** list                            |
| **Building**        | Building context                                                     |
| **Tags**            | Assigned tags                                                        |
| **System**          | System from the ontology                                             |
| **Type**            | Document type                                                        |
| **Uploaded by**     | User who uploaded the file                                           |
| **Uploaded at**     | Date and time the file was first uploaded                            |
| **Last updated at** | Date and time of the most recent file or metadata change             |
| **O\&M document**   | Whether the file is marked as an operations and maintenance document |

### Replace and version history

**Replace** archives the current file as a prior version and attaches a new file to the same document record. Metadata stays with the document entity.

The **Replacement history** section lists prior file versions when replacements exist. Each entry shows the file name, **Replaced at** date and time, and the user who replaced the file. When no replacements have been made, the section shows that no history is available.

<Frame caption="Replacement history with Download and Restore actions for a prior version">
  <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-detail-replacement-history.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=8a3912e63dde3e2186ec2e3a0bb865dc" alt="Document detail page Replacement History showing prior kode-logo.png version with row menu for Download and Restore" width="1024" height="468" data-path="images/kode-os/kode-os-documents-detail-replacement-history.png" />
</Frame>

Open the vertical ellipsis menu on a history row to:

| Action       | Description                                                                             |
| ------------ | --------------------------------------------------------------------------------------- |
| **Download** | Download that prior file version                                                        |
| **Restore**  | Set the document back to that version. The current file moves into replacement history. |

***

## Document types

Document types are categories you assign on upload and in filters (for example, As-Builts, Budget, or Shop Drawings). Configure types in portfolio **Settings** only. They apply in both portfolio and building views.

### Configure document types in Settings

1. Open **Settings** from the portfolio sidebar.
2. Select **Document types** in the Settings sub-navigation.
3. Use **Search document types** to find an existing type, or select **+ Add document type** to create one.

<Frame caption="Document Types in portfolio Settings with search and add actions">
  <img src="https://mintcdn.com/kodelabs/XLzbYkNX6LnaxcLs/images/kode-os/kode-os-documents-document-types-settings.png?fit=max&auto=format&n=XLzbYkNX6LnaxcLs&q=85&s=257222bcd59741b5839d4f235f9751b0" alt="Settings Document Types page with table columns Document Type and Created At, search field, and Add Document Type button" width="1024" height="575" data-path="images/kode-os/kode-os-documents-document-types-settings.png" />
</Frame>

| Column            | Description                                   |
| ----------------- | --------------------------------------------- |
| **Document type** | Type name used in upload and filter dropdowns |
| **Created at**    | Date the type was added                       |

The table lists types such as Agreement/Contract, As-Builts, Budget, Catalogue, Change Order, Change Request, Comment Log, Cutsheet, Design, Drawings, Evaluation, Invoice, Memo, and Network Diagram. Your organization may define additional types.

After you add a type in **Settings**, it appears in the **Type** field when you [upload documents](#upload-documents) or filter a document list.

See [Settings](/products/kode-os/settings#document-types) for other portfolio configuration tasks.

***

## Product enablement

Document Management must be enabled per client and building in [Launchpad](/products/launchpad/channel-partners/product-enablement). Users do not see **Documents** in Cloud BMS when the product is disabled for that scope.

***

## Related modules

<CardGroup cols={2}>
  <Card title="Settings" icon="settings" href="/products/kode-os/settings#document-types" arrow={true}>
    Configure document types and other portfolio settings.
  </Card>

  <Card title="Cloud BMS introduction" icon="rocket" href="/products/kode-os/get-started/introduction" arrow={true}>
    See where Documents appears in portfolio and building navigation.
  </Card>

  <Card title="Vendors" icon="truck" href="/products/assetops/resources/vendors" arrow={true}>
    Add and manage vendors in AssetOps. The Documents module uses this list for upload, filters, and grouped view.
  </Card>

  <Card title="Systems" icon="layers" href="/products/kode-os/systems" arrow={true}>
    Review system groupings that align with document system metadata.
  </Card>
</CardGroup>
