SharePoint does not permit folders with the name ‘Forms’ and folder names ending with ‘_files’

One of our customers recently encountered a couple of issues when creating new folders in the following syntax using one of our SharePoint migration products:

  1. Folder names ending with ‘_files’.
  2. Folder with the name ‘Forms’.

When creating a folder with name ending with _files

If you are trying to create a folder with name ending with _files, SharePoint does not allow the folder to get created (e.g., Vendor_files, Customer_files etc.).

This behavior is by design in SharePoint due to thicket. SharePoint creates a hidden linked folder (thicket) to store the additional content, which cannot exist in the HTM file when you save a file as an HTM that contains content such as graphics. Such folders are named as filename_files and it is always hidden.

To avoid the confusion of thicket getting mixed with the user created folders, SharePoint does not allow these folders to be created.

Due to this restriction in SharePoint, you can take any of the following approaches to overcome this limitation:

  • Add a valid SharePoint allowed character (say, underscore) after the folder name. This will make the folders to end with “_files_” (E.g., “DocFolder_files” will be created as “DocFolder_files_”) in SharePoint.
  • Remove / rename ‘_files’ part from the folder name if it’s acceptable.

When creating a folder with name ‘Forms’

If you are trying to create a folder with name ‘Forms’, SharePoint does not allow the folder to be created.

‘Forms’ is also a hidden folder maintained by SharePoint in all libraries to store the forms (such as EditForm, DisplayForm etc.) and templates associated with the corresponding library. Hence, it does not allow the users to create the folder with name FORMS at the root level of the library.

Due to restriction in SharePoint, you can add a valid SharePoint allowed character (such as ‘_’ underscore) at the end of the folder name. This will make the folder to be valid user-created folder in SharePoint.