Table: FolderLinks
Stores links from a Vault Folder to a file, another folder, Item or Custom Object.
For example, the use case for a File link is linking a file to another folder than the one where it resides.
Columns
Column |
Data Type |
Can Import |
Allows Null |
Description |
|---|---|---|---|---|
nvarchar(257) |
✅ Required |
❌ |
Vault path of the parent folder. References Folders→FolderPath. |
|
nvarchar(256) |
✅ Required if no other Target column used |
✅ |
Vault path of the linked file. References Files→FilePath. |
|
nvarchar(257) |
✅ Required if no other Target column used |
✅ |
Vault path of the linked folder. References Folders→FolderPath. |
|
nvarchar(128) |
✅ Required if no other Target column used |
✅ |
Number of the linked Vault Item. References Items→ItemNumber. |
|
nvarchar(256) |
✅ Required if no other Target column used |
✅ |
Name of the linked Custom Object. References CustomObjects→CustomObjectName. |
|
nvarchar(256) |
✅ Required if TargetCustomObjectName is set |
✅ |
Singular type name of the linked Custom Object. References CustomObjects→CustomObjectDefinitionName. |
|
datetime2 |
✅ Required if TargetCustomObjectName is set |
✅ |
Used to uniquely identify a linked custom object in its definition. References CustomObjects→CreateDate. |
|
_OriginalBCPOverflow |
xml |
⚪ auto (only available when importing from a source Vault BCP package) |
✅ |
Enables identical re-export of the BCP package. |
Remarks
Each row represents a single link from a parent Vault Folder to one target entity.
Therefore only one target column should be filled per row: TargetFolderPath, TargetFilePath, TargetItemNumber, or TargetCustomObjectName (together with TargetCustomObjectDefinition and TargetCreateDate).
Notes:
Links to the Files and Items tables do not require a particular Version, since Vault always displays the latest version by default.
Links to Custom Objects can also be created in the reverse direction if needed; see CustomObjectLinks.
Limitations after imports from BCP packages
For imports from BCP packages, updating the TargetFilePath column—or inserting new file-link records—is not recommended and requires extra steps.
This is because Export-BCPDatabase exports these records including the original TargetId= attribute.
To make changes, the TargetId must be manually corrected in the _OriginalBCPOverflow column, or removed for the respective file record.
File-Links imported from other sources can have TargetFilePath updated normally, as the IDs in the resulting BCP package are generated automatically.
Examples
Retrieving a list of links for a given folder
SELECT
ParentFolderPath AS Folder,
COALESCE(TargetFolderPath, TargetFilePath, TargetItemNumber, TargetCustomObjectName) AS Target,
CASE
WHEN TargetFolderPath IS NOT NULL THEN 'Folder'
WHEN TargetFilePath IS NOT NULL THEN 'File'
WHEN TargetItemNumber IS NOT NULL THEN 'Item'
WHEN TargetCustomObjectDefinition IS NOT NULL THEN TargetCustomObjectDefinition
END AS TargetType
FROM FolderLinks
WHERE ParentFolderPath = '$/Designs/Pad Lock/'
ORDER BY TargetType, Target;
Folder Target TargetType
------------------------ ------------------------------------------- ----------
$/Designs/Pad Lock/ $/Designs/Some Other Project/ Folder
$/Designs/Pad Lock/ $/Designs/Pad Lock/Assemblies/PadLock.iam File
$/Designs/Pad Lock/ 100005 Item
$/Designs/Pad Lock/ 2025-001 Task