Table: Folders

Stores the Vault folder hierarchy, including metadata such as category, lifecycle state, creator information, and user-defined properties.

Columns

Column

Data Type

Can Import

Allows Null

Default

Description

🔑FolderPath

nvarchar(257)

Required

Full path of the folder in Vault. Must end with ‘/’.

IsLibrary

bit

0

Indicates whether the folder becomes a standard folder (0) or a library (1).

Category

nvarchar(50)

To be filled with a valid Vault Folder category. If null, DTU applies the default category.

LifecycleState

nvarchar(50)

To be filled with a valid Vault Lifecycle State, if allowed by the Category.

LifecycleDefinition

nvarchar(100)

To be filled with a valid Vault Lifecycle Definition, if allowed by the Category.

CreateUser

nvarchar(100)

Fills Vault system property Created By. Must be a valid Vault User defined in the target Vault.
Caution: For root folder ‘$/’, must be NULL.

CreateDate

datetime2

Fills the Vault system property Create Date. Can use a default date like GETDATE().

UDP_…

nvarchar(max)

Columns starting with UDP_ define user-defined properties in Vault.
They can be added as needed; there are no predefined UDP columns.

_OriginalBCPOverflow

xml

auto (only available when importing from a source Vault BCP package)

Enables identical re-export of the BCP package.
Stores additional XML data from the original BCP file that is not captured by other columns (e.g. nodes like <ACL).

Remarks

FolderPath is unique and represent the primary key of this table, whereby every Files record must be assigned to exactly one folder through this path.
Its index also significantly improves performance for queries using LIKE operators.

Since Vault does not support Windows MAX_PATH, folder paths must be shorter than 257 characters.

When importing from a BCP package, corresponding folder entries are automatically created for all the file records.
If files are imported from other sources, it must be ensured that also corresponding FolderPath entries are created - for all levels, including the root folder ‘$/’.

Examples

Retrieving a folder and its subfolders with their metadata

SELECT *
FROM Folders
WHERE FolderPath LIKE '$/Designs/Padlock/%';
FolderPath                    IsLibrary  Category    LifecycleState LifecycleDefinition                              CreateUser     CreateDate           UDP_Share Path
----------------------------- ---------- ----------- -------------- ------------------------------------------------ -------------- -------------------- ---------------------------------------
$/Designs/Padlock/            0          Project                                                                      Administrator  2024-02-15 08:30:00  
$/Designs/Padlock/Assemblies/ 0          Folder      Pre-Release     Long Lead Time Rlease Process with Change Order  Hannes         2024-02-16 09:10:00  \\VaultShare\Designs\Padlock\Assemblies
$/Designs/Padlock/External/   0          Folder                                                                       Albert         2024-02-16 09:45:00  \\VaultShare\Designs\Padlock\Parts
$/Designs/Padlock/Libraries/  1          Folder                                                                       Jane Doe       2024-02-17 10:20:00  

Moving or Renaming a Folder, including all contained files and subfolders

UPDATE Folders
SET FolderPath = REPLACE(FolderPath, '$/Designs/Padlock/', '$/Designs/Inventor Samples/Padlock/')
WHERE FolderPath LIKE '$/Designs/Padlock/%';

Note: Because of the FolderPath foreign key in the Files table, all related file-records are automatically updated as well.