Skip to content

Syncing files with sharepoint managed metadata tags

Syncing files with Sharepoint Managed Metadata tags

Feature

Available from: Resilio Active Everywhere 5.0.9

Use case: need to arrange the files distributed accross storage, for example, a Sharepoint site, and place them accordingly on a destination location. One of the specific use cases is to do so based on their Managed Metadata tags in Sharepoint. But other criteria are also available.

Configuration

1. Create a new job profile with two paramters

regex_file_filter: filters out the files that need to be transferred. It's different from Ignorelist. Supports regular expressions. Possible notions:

ABSOLUTE_SOURCE_PATH="/Engineering/Reports"
FILENAME="report.docx"
FILE_SIZE="204800"
RELATIVE_PATH="Reports/report.docx"
MODIFICATION_TIME="2026-07-20T10:15:30Z"
CREATION_TIME="2026-01-05T08:00:00Z"
MM"<name>"="<value>" /Managed metadata tags from Sharepoint

virtual_path_translation_template: is the path template on the destination. For example: <MM:"Department">/<MM:"Location">/<SOURCE_PATH:absolute> / arranges them per Managed tags on SP

Both parameters are compulsory.

The part SOURCE_PATH:absolute in the path template recreates the full path to the file, same as on source, inside the destination location.

Possible modifiers are:

  • absolute: the absolute path to the files where the file/files are located Example: \VTT_absolute\tag1\tag2\site\Documents\deep_folder\subfolder1\subfolder2\file_name

  • root: flattens the paths, places the files in the root of the resulting destination path. \VTT_root\Yes\No\tags 2\site\Documents\file_name

  • parent: only the file’s parent folder where the file/files are, tag/tag/folder/file_name Example: \VTT_parent\tag1\tag2\subfolder_10\file_name

  • relative: path to the file inside the site’s library \VTT_relative\tag1\tag2\subfolder1\subfolder2\file_name

2. Create a Distribution job using the created profile.

Select the created Job Profile as the job profile.

Select Sharepoint cloud storage as path for the source Agent.

A destination can be also a cloud storage, or a local sotrage, including UNC paths.

Building the report

Check "Reporting" tab on the Distribution job run. Generate a new report and in the "all files" csv check for "More info" column.

To build the summarizing report based on it:

1) Make sure you have Python 3.2 or later.

2) download the python script.

3) download the "All files" report from om the MC and save it as a csv file.

Basic Usage

python aggregate_managed_metadata.py --input report_all.csv

Instead of report_all.csv use the name of the downloaded file.

Example Commands:

Standard Run

python aggregate_managed_metadata.py --input all.csv --out-dir path_to_folder

Replace path_to_folder with real path for the output

Split Output by Tag

python aggregate_managed_metadata.py --input all.csv --out-dir path_to_folder --split-per-tag

Replace path_to_folder with real path for the output.

The resulting file shows reporting about amount of files per tag value.

Additionally it is possible to check Files events on the source Agent in the job run, column "Managed Metadata".

Limitations and peculiarities

  1. Both regex_file_filter and virtual_path_translation_template parameters must be used in the job. Using only one parameter is not supported, and leads to undefined behavior.

  2. The solution is subjected to Sharepoint requests throttling.