---
language: "en"
---
# 24Files Documentation

## 24Files Documentation

Welcome to the 24Files documentation portal!

### Release Notes

*

  #### [24Files Summer '26 Release](https://docs.24files.eu/24files-summer-26-release.md)

  May 26, 2026
*

  #### [24Files Spring '26 Release](https://docs.24files.eu/24files-spring-26-release.md)

  March 03, 2026
*

  #### [24Files Winter '26 Release](https://docs.24files.eu/24files-winter-26-release.md)

  November 21, 2025

### Documentation

*

  #### [24Files Demo Videos](https://docs.24files.eu/24files-demo-video.md)

#### [24Files - Introduction](https://docs.24files.eu/24files-introduction.md)

#### [Before starting 24Files configuration](https://docs.24files.eu/before-starting-24files-configuration.md)

#### [Azure APP Configuration - Graph API (As of 24Files R6.0)](https://docs.24files.eu/azure-app-configuration-graph-api-as-of-24files-r6.md)

#### [24Files Manager Configuration](https://docs.24files.eu/24files-manager-configuration.md)

#### [24Files Lightning component](https://docs.24files.eu/24files-lightning-component.md)

#### [User configuration](https://docs.24files.eu/user-configuration.md)

*

  #### [Multi-lingual capabilities](https://docs.24files.eu/multi-lingual-capabilities.md)

#### [Salesforce Flows, Platform Events and APEX](https://docs.24files.eu/automation-and-24files.md)

#### [Upgrades, Troubleshooting \& Application Maintenance](https://docs.24files.eu/application-maintenance.md)

*

  #### [24Files and Security](https://docs.24files.eu/24files-and-security.md)

#### [24Files Knowledge Base](https://docs.24files.eu/24files-knowledge-base.md)

*

  #### [Frequently Asked Questions](https://docs.24files.eu/frequently-asked-questions.md)

#### [24Files Release Notes](https://docs.24files.eu/24files-release-notes.md)

---
language: "en"
---
# 24Files 360 View

Optionally, you can configure the 24Files 360View.

Watch this short demo video to understand the basics of 360 View.  
<https://www.youtube.com/watch?v=oDfrqmWRdEQ>

This allows you to **show the files and folders related to child objects on the parent object record page**.

Assume for example that you have a set of opportunities (=child object) related to same account (=parent object). 360 View then allows you to see all folders \& files related to these Opportunities on that Account record page.

Then you would configure 24Files 360 View as shown below:  
![image-20231009-144128.png](https://docs.24files.eu/__attachments/a_19099e7fbdc3f8893b10925dd885c899797b759241efdcce56fdf2b528e172d4/image-20231009-144128.png?cb=679b45665725797b34b412a002788e02)

* **Child Object**: API name of the child object

* **Lookup Field Name**: Lookup from the child object to the parnt object

* **Parent Object**: API name of the parent object

* **Virtual Folder Name:**(available as of R4.2.19) the name of the folder that is shown in the 24Files component on the Parent Object. The subfolders of this folder contain the files related to the relevant child object records.

Next, add the 24Files Lightning Component to the Account record page. Don't forget to check the **Enable 360 View** check in the **Custom Metadata Types**, as shown in the screenshot below.  
![360view.png](https://docs.24files.eu/__attachments/a_b3b3e2c9c11b335f91289bd4b59793bb249e522a036fee48e33f4acfc9446e19/360view.png?cb=8a1e2a52804d593ac6cd792079b12cfe)

Save and return to the record page and magic happens: you will see the opportunity folders \& files for that account in 24Files on the Account record page.

The parent-child relationship described above allows you to model a 1:N relationship. In some cases, you need to model a **many-to-many** relationship between two objects. This can be done via a **junction object**.

<https://youtu.be/l7RD1Dx6PpQ>

In the 24Files 360View settings page, you can define:

* **Junction Object**: API name of the junction object.

* **Junction Object Display Field:**Field of the child object that will be used as name of the folder in the UI.

* **Junction Object Parent Reference Field:** API name of the field on the junction object that references the parent object.

Note: If you are upgrading from an earlier version of 24Files, the junction object fields will not be visible, as layouts are not updated by Salesforce. Hence, as an admin, you will need to add these fields manually to the page layout.

We will illustrate the many-to-many with a concrete example of Opportunities and Products. An opportunity can contain multiple products and a product can be linked to multiple opportunities. There is a standard Salesforce junction object Opportunity Product (API name: OpportunityLineItem).

In case we want to show the product folders on the Opportunity record page, the 360View configuration could look as follows:  
![image-20231025-132734.png](https://docs.24files.eu/__attachments/a_268a642e34ac629d9a7d13f002567fce173cb4c061a7ae201b973ae9f5d82736/image-20231025-132734.png?cb=f37104385e9ed93eccad60a5f1a5e31c)

Opportunity acts as the Parent Object, Product2 is the API name of the Child Object. The Lookup Field Name is the the lookup field from the Junction Object to the Child Object.

The API name of the junction object is OpportunityLineItem and its lookup field to the Opportunity is OpportunityId. Finally, you can optionally also use the value of a specific field on the Child Object as the name of a specific product folder (subfolder of the Virtual Folder Name) via the Junction Object Display Field.

---
language: "en"
---
# 24Files and Security

## Basics

24Files is a managed package that is installed in your Salesforce environment and integrates with your SharePoint environment. This implies that:

* The 24Files team does not host a service for you.

* The 24Files team does not store any of your data.

* The 24Files team does not have access to any of your data.

## 24Files Security and Integration Essentials

**Built on Salesforce:** 24Files is developed entirely on the Salesforce platform, ensuring robust security and seamless integration. It connects with SharePoint through APIs, ensuring that no files are stored on any 24Files or third-party servers.

**Authentication and Authorization:** 24Files does not store any SharePoint credentials. Instead, it utilizes an OAuth authorization flow, redirecting users to SharePoint for authentication. This approach maintains security and integrity by relying on established protocols for user verification.

**Salesforce Security Review:** As a listed solution on Salesforce's AppExchange, 24Files has undergone a thorough security review by the Salesforce team. This review confirms its adherence to best practices in software security.

**Role-Based Access Control:** Leveraging Salesforce's security model, 24Files defines multiple roles including admin, user, and community user, each with specific permissions to suit different levels of access and interaction within the system.

**SharePoint API Permissions:** To perform API calls on SharePoint effectively, 24Files requires certain permissions, which are set to the minimum needed for functionality. One key permission is `AllSites.Write`, which allows users to add content to libraries without the capability to create new libraries or alter the structure of existing ones.

## Managing Access and Permissions with SharePoint

**Direct Inheritance of Permissions:**

* **Seamless Integration:** By integrating directly with SharePoint, 24Files inherits all predefined access settings from SharePoint. This ensures a consistent and streamlined management of access rights across both platforms.

**Controlled Access Based on User Rights:**

* **Rights-Specific Visibility:** Users will only be able to see the files and folders in 24Files that they are authorized to view in SharePoint. If a user doesn't have access to certain data in SharePoint, they won't have access to that data in 24Files either.

**Benefits of Permission Inheritance:**

* **Maintenance Efficiency:** The direct inheritance of permissions from SharePoint to 24Files avoids the need for managing multiple permission systems, reducing complexity and maintenance overhead.

* **Enhanced Security:** Utilizing SharePoint's robust security measures, 24Files ensures that sensitive information is protected and accessible only to authorized personnel.

* **User Familiarity:** The use of a familiar permission model reduces the learning curve for users and promotes better adoption and user experience.

This integrated approach not only streamlines how permissions are managed between SharePoint and 24Files but also maintains a high level of security and data integrity, ensuring that only the right users have the right access at the right times.

## 24Files and Soc-2 Compliance

### Why SOC 2 Compliance Isn't Required for 24files

While 24files does not maintain a standalone SOC 2 report, this does not represent a security risk for our customers. In fact, our **Salesforce Native** architecture is designed to ensure that your data remains within the compliant environments you already trust (Salesforce and SharePoint).

### 1. The "No-Data-Silo" Architecture

The primary reason companies seek SOC 2 compliance is to verify how a vendor stores and protects data on *their* servers.

* **24files never stores your data.** We do not have a separate database or cloud backend where your files live.

* **Direct Integration:** 24files acts as a secure "lens." It visualizes your SharePoint data directly within the Salesforce UI.

* **The Result:** Your data stays within the SOC 2-compliant boundaries of **Salesforce** and **Microsoft 365**.

### 2. Salesforce AppExchange Security Review

Because 24files is an AppExchange app, we are subject to what is arguably the most rigorous security vetting in the SaaS industry:

* **Annual Security Reviews:** We must pass the **Salesforce AppExchange Security Review** to be listed. This is a mandatory, invasive audit conducted by Salesforce's own security team.

* **Code \& Dependency Scanning:** We utilize industry-leading tools like **Checkmarx** and **Snyk** to ensure our code is free of vulnerabilities and that all third-party dependencies are secure and up-to-date.

* **Native Execution:** Our logic runs within the Salesforce multi-tenant environment, inheriting the platform's existing security controls, encryption, and permission sets.

### 3. Inherited Compliance

By using 24files, you are not adding a new data processor to your supply chain. You are simply extending the functionality of two platforms that already meet the highest global standards:

* **Salesforce:** Holds SOC 1, SOC 2, SOC 3, ISO 27001, and more.

* **Microsoft SharePoint:** Holds SOC 1, SOC 2, ISO 27001, and HIPAA compliance.

---
language: "en"
---
# 24Files Automation - Set Up a Dedicated Integration User

Starting with 24Files version 5.70, we've updated our package to align with Salesforce's new security standards. All operations now run in **User Mode**, meaning user-level permissions are enforced across all actions. This change enhances security but also requires you to reassess how your automated flows and triggers are configured.

## Automated User Permission Challenges

This change impacts flows and triggers executed by the **"Automated Process" user**. This user frequently lacks the necessary Field Level Security (FLS) permissions, leading to errors.

Specifically, the "Automated Process" user does **not support some newer Salesforce methods** that enforce User Mode, as detailed in <https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_enforce_usermode.htm>. While it's technically possible to adjust permissions for the "Automated Process" user, it can be challenging. You can find more information on the Automated Process user <https://unofficialsf.com/understanding-the-automated-process-user-the-default-workflow-user>.

### Recommended Setup: Dedicated Integration User

To avoid permission issues and ensure smooth operation, we strongly recommend using a dedicated **Integration User** for your automated workflows with 24Files.  

|         **Benefit**          |                                           **Description**                                            |
|------------------------------|------------------------------------------------------------------------------------------------------|
| ✔️ Proper Permissions        | Easily assign field-level and object-level access via permission sets.                               |
| ✔️ Compatible with User Mode | Works seamlessly with modern Salesforce security enforcement.                                        |
| ✔️ Audit Trail               | Activity is clearly tracked and linked to a visible user, just like with "Automated Process."        |
| ✔️ No Login Required         | Integration users don't need login access. Salesforce includes **5 free Integration User licenses**. |

### **Set Up a 24Files Integration User for Workflows and Cases :**

1. **Create an Integration User:** Go to *Setup \> Users* : Create a new user using one of your **Integration User Licenses**.

2. **Assign Required Permissions:** Grant necessary access through permission sets.

3. **Assign 24Files License:** Grant a 24Files license to this Integration User.

4. **Set the default workflow user:** Go to *Setup \> Process Automation Settings* : Set the Integration User as the **Default Workflow User**.

For flows to use your designated "default workflow user" instead of the "Automated Process" user, the flow's API version must be **54.0** or higher.

5. **Set the default case user:** Go to *Setup \> Service → Support Settings* : Set the Integration Users as the **Default Automated Case User**.

---
language: "en"
---
# 24Files Compatibility - SharePoint Site Structure Guidelines

## **Summary**

For optimal performance of 24Files, we recommend using flat, individual SharePoint sites under /sites/. Subsites, hubsites, and custom paths such as /teams/ are not supported and may result in errors or limited functionality.

### **Use of Subsites, Hubsites, and Custom SharePoint Paths like /teams/ Not Supported**

#### **Why this guideline?**

At 24Files, we aim to deliver a stable, manageable, and future-proof integration with SharePoint Online. That's why we only support the **standard flat SharePoint site architecture**. Features based on subsites, hubsites, or custom URL structures like /teams/ introduce risks and are no longer recommended by Microsoft.

#### **What is not supported ?**

The following configurations or structures are **not compatible with 24Files**:  

|                  **Structure Type**                   |                     **Example URL**                     |   **Status**    |
|-------------------------------------------------------|---------------------------------------------------------|-----------------|
| **Subsites**                                          | <https://tenant.sharepoint.com/sites/projectX/subsiteA> | ❌ Not supported |
| **Hubsites with hierarchy**                           | <https://tenant.sharepoint.com/sites/hubA/subsiteB>     | ❌ Not supported |
| **Custom root paths like /teams/ instead of /sites/** | <https://tenant.sharepoint.com/teams/sales>             | ❌ Not supported |

#### **What is supported?**

A flat structure of SharePoint sites where each site has a unique URL in the format:

    https://tenant.sharepoint.com/sites/24Files-Sales  
    https://tenant.sharepoint.com/sites/24Files-Engineering

This approach aligns with Microsoft's best practices and ensures optimal compatibility with 24Files.

#### **What should I do if my organization already uses subsites or /teams/ ?**

* **Step 1**: Map out your current SharePoint site structure.

* **Step 2**: Set up new SharePoint sites under the standard /sites/ root, without hierarchy.

* **Step 3**: Migrate existing documents to this new flat structure (with IT support if needed).

---
language: "en"
---
# 24Files Demo Videos

<https://youtu.be/DWwhIauzzDA?si=SXdewdwqVVsoSkZ8>

24Files Extended Demo Video and Feature Overview.  
<https://youtu.be/jFZyCCmmP6Y>

How to create an AZURE app registration for 24Files.  
<https://youtu.be/XjkLr3DR60I>

How to set up your first 24Files Folder Structure.

*** ** * ** ***

<https://youtu.be/oDfrqmWRdEQ>

24Files 360View Explained.  
<https://youtu.be/JbkIwLjfx4M>

Understand Authenticated and Anonymous Access.  
<https://www.youtube.com/watch?v=6Uoy1CA1PqM>

Configurable metadata in 24Files.

*** ** * ** ***

<https://youtu.be/xTt6uy0z-1E>

Working with Dynamics SharePoint Sites and Microsoft Teams.  
<https://youtu.be/hCi0Ca2NtQk?si=talDA4pYZnEGdPL1>

Use 24Files with Experience Cloud (Community Cloud)  
<https://youtu.be/HxZwumSMfuo?si=CLRG1NzX2brMWutI>

Moving Record Folders with a Custom Flow.

<https://youtu.be/l7RD1Dx6PpQ>

360View - How to avoid copying files multiple times in SharePoint  
<https://youtu.be/XObV7vVjDLw>

Using The Document Library as a Record Folder.  
<https://youtu.be/f6LZqLVq33g>

User selection of SharePoint site and Document Library.

<https://youtu.be/um_0ya-yKL0>

Working with record-specific SharePoint sites via 24Files' Dynamic SharePoint Sites.

---
language: "en"
---
# 24Files Folder Structure Configuration

Below, we provide more detail on the configuration of the Folder Structure Record (FSR).

## **A. Detail Section**

This section contains:

* **24Files Folder Structure Name:** The name of the Folder Structure record

* **Object**: Via a picklist, you can select the Salesforce object for that Folder Structure record.

* **Default**: When selected, that Folder Structure is the default folder structure record for that object. There can only be one default Folder Structure per object!

* **Disable Public Folder**: The Public Folder (and its subfolders) are the only folders accessible to users that have access to 24Files in Anonymous Access mode. Anonymous Access is primarily used on Experience Cloud, where external users without a SharePoint account, can still upload documents to SharePoint via a shared service account. In case your setup does not make use of Anonymous Access, you can hide the Public Folder in your folder structure, by checking this box.

![image-20260526-110841.png](https://docs.24files.eu/__attachments/a_3dc2da97ae2ab940f90e688a16e7b7765de45002f45cbd128a615b9d3958d7bb/image-20260526-110841.png?cb=525b5a56e0c3674c2ee03a34f06f0bd7)

## **B. Filter Rules**

Filter rules can only be used for '*Non-default folder structures*'.

* **Conditions**: 3 options are available:

  1. AND: All of the conditions (= rules) should be fulfilled.

  2. OR: At least one of the conditions should be fulfilled.

  3. Custom: custom logic (*for example 1 AND (2 OR 3)*).

* **Field**: The corresponding field for that object. You can select a field by clicking on the field and a pop-up screen will appear.

* **Operator:**an operator such as 'Equals', 'Starts with', 'Contains' etc. can be used

  * If you use 'Is Null': enter 'true' or 'false' as values

* **Type**: The field type: 'Field reference', 'Picklist' or 'Boolean'.

* **Value**: The corresponding value.

  * Case sensitive

  * For fields with date type, use this format: dd/mm/yyyy, for datetime: dd/mm/yyy hh:mm:ss

++Important:++ once the 24Files component gets loaded on the object record, a folder structure will be created in SharePoint. From then on, the folder structure is fixed and can only be changed manually (such as folder movement, renaming etc.). In other words, filter rules will no longer have an impact on the object record nor will changes that happen on the Object Record change the Folder Structure Record.  
![MicrosoftTeams-image(4).png](https://docs.24files.eu/__attachments/a_bc1706f235a7e1006bdffee47b9080c7185a66d149ebba6d94db13da492f762d/MicrosoftTeams-image(4).png?cb=3791ede8a231a47226fa8de73db690c6)

No

## **C. Folder Structure**

A folder structure always starts with the 'Document Library'. This is the 'Document Library' that you've chosen in the 24Files Settings or in the Object \& Metadata Configuration. The folder structure defines the folders that will be created in that Document Library.  
In case you have an existing folder structure in SharePoint and you do not want to create new folders, you still need a folder structure to instruct 24Files to open the correct folder in the 24Files component on a Salesforce record page. If you apply the same naming of folders in your folder structure as you have in place in SharePoint, 24Files will not create duplicate folders.

To add folders, you have to click on the dropdown sign and click on 'Create a subfolder'. Then, a subfolder will be created on the level below the folder you've selected. You can rename and remove a subfolder.

**24Files currently support up to 70 subfolders in one Folder Structure Record.**  
Note that at the first level of the hierarchy, the folder structure can have one and only one folder, i.e. one folder just below the document library.

A folder structure record always requires a **Record Folder** . A record folder can be added by 'Creating a subfolder' and then selecting the 'Is Record Folder' checkbox. You do not have to name the record folder yet. See below how to choose the name for the Record Folder. ++Important++: Only one record folder can be present in a Folder Structure Record.

In case you do not want a specific folder as a Record Folder, it is also possible to **use the Document Library as a Record Folder**. This is e.g. sometimes the case when you use a dedicated SharePoint site per record. The video below explains how you can configure this.

To support this use case, it is possible to**designate the Document Library as the Record Folder**.  
![image-20250807-080319.png](https://docs.24files.eu/__attachments/a_ec2353419889f6b6d6bdec04ec327ff09bd5c1ab3467faa50ea199b45dba0b47/image-20250807-080319.png?cb=82dade40ba043bb076479fb1d64b288e)  
<https://youtu.be/XObV7vVjDLw>

You also need to create a **Public Folder**. This public folder is required for 'Anonymous Access'. This folder will be the only folder visible for Anonymous Access users of 24Files (= users without SharePoint login).  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.12.21.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.12.21.png)

If you are not using anonymous access it is possible to **hide the Public Folder** in the Folder Structure Configuration (as of 24Files v6.330).  
![image-20260522-142700.png](https://docs.24files.eu/__attachments/a_d6d58741e27603e6e6d3ab1ccda6ec0613a42c8a42c482aeb61851cf443d8083/image-20260522-142700.png?cb=daf9ad0f298bca8cdead31a44cb38fa7)
Disable Public Folder checkbox.  
**If you are upgrading from an older 24Files release** , and do not see this checkbox, please navigate to **Setup \> Object Manager** . Search for **24Files Folder Structure.** Navigate to Page Layout and add the **Disable Public Folder**checkbox to the page layout.

Please note that 24Files does not remove any folders or files from SharePoint, so disabling the Public Folder will not have any effect on existing records.

## **D. Dynamic Folder Structure \& Naming**

You also have the option to dynamically name your folders with record values. After saving your folder structure, you can edit certain folders and add dynamic record values to them by clicking on the brackets " { } " on the right side of the folder name. This way, you will be able to insert certain record values into the folder name automatically.  
Note that you can use dynamic tags only for folders above or at the record folder level. You cannot use dynamic tags for subfolders of the record folder.

For example, if you want to add the name and record ID of the lead in the lead folder structure, you can add these values to the folder structure naming.

In addition, you can also **regroup folders dynamically**, as the example below explains. Assume we want to group all leads within the same company under a company folder:

-- You create a sub folder under document library

-- You edit the name of the subfolder with a dynamic tag, let's say Company.

-- Under this company folder you can now place the record folder.

By doing this, all record folders of leads within the same company, will be stored in the same company folder. As this example shows, you can have multiple dynamic tags in multiple folder names within the same Folder Structure Record.

++Remark:++ if no value is found for a field, null will appear instead for that field. *For example:* if the Folder Record Name is: {!Name} {!Description} and no value if found for the field 'Description', the record will be named like this: "Mosaic-Sx null".  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.11.09.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.11.09.png)  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.11.00.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.11.00.png)

What if two or more non-default Folder Structures Records (FSR) fit for one record?

The first time a user visits the Object Record, a pop-up will appear to give you a choice between the applicable folder structures.

Once a folder structure is chosen, it will not be possible to change it.

If no Folder Structure is selected, the following error will appear: "There is no selected folder structure". This can be resolved by refreshing the page and the pop-up will appear again.

![https://24files.eu/wp-content/uploads/2021/01/Salesforce-FS-mutliple-1024x412.png](https://24files.eu/wp-content/uploads/2021/01/Salesforce-FS-mutliple-1024x412.png)

## **E. Default folder structure**

By default, 24Files will create a '***default folder structure record (FSR)*** *'* , if you don't create a '*default folder structure record* ' yourself.

Main reason: having a back-up plan if no '*Non-default folder structure*' (= folder structure record with filter rules) is applicable.

You can customize a '*default folder structure record'* to your needs or accept the default setup, which is Document Library --\> \[Object Name\] --\> \[Record Folder name\]  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.23.28-1024x394.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.23.28-1024x394.png)

Example:

A 'Default folder structure record' is always needed. 24Files will create one, from the moment the Lightning component of 24Files gets added to the page and no default folder structure exists.  
In case you do not want 24Files to automatically generate a default folder structure, you can uncheck the Enable Auto-create Folder Structure checkbox. This Checkbox is part of the **Custom Metadata Types** linked to the 24Files component. Read more on this in the 24Files Lightning Component Section of this manual.  
![image-20260331-142045.png](https://docs.24files.eu/__attachments/a_68752dfbe901dbc46fb9391ef94ef870aeff4216d60fc8a88035f020ccaf9aa6/image-20260331-142045.png?cb=d4753f3ef597e95e214957910bbb3fa7)

Of course, you can also build your own default FSR'. Navigate to the 24Files Folder Structures tab, click on 'New' (1), enter a name for the FSR, select the checkbox and then select the right object. From there, I can customize the name and the folder structure itself (2).

(1) After clicking on NEW, you get this screen  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.24.55.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.24.55.png)

(2) Then you will get this.  
![https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.23.28-1-1024x394.png](https://24files.eu/wp-content/uploads/2022/11/Screenshot-2022-11-04-at-18.23.28-1-1024x394.png)

In addition to the '*Default FSR* ', you can create one or multiple '*Not-default FSR(s)*' but that is not mandatory.

---
language: "en"
---
# 24Files Folder Structures

## What are 24Files Folder structures?

A folder structure defines how folders are organized in SharePoint. This is specific for every company. Below, we explain how you can customize these folder structures to your needs.

## Folder Structures - Concepts

### **Folder structure versus Folder structure record**

++Folder structure++ = this is the way folders are organized in your SharePoint.

++Folder structure record++ (FSR) = the Salesforce record that defines all the specifics for the folder structure that will be created in SharePoint each time you create an object record in Salesforce.

When a new object record is created in Salesforce, 24Files will create a folder structure based on a folder structure record at the moment when the record page is first loaded using the following principles:

1. If there is a matching 'non-default folder structure record' (as explained below). the non-default folder structure will be created.

2. In case there are multiple folder structure records that match and none of these are configured as default, a pop-up will appear to give you a choice between the applicable folder structures.

3. In case there are multiple folder structure records that match and you have configured one as a default object-specific folder structure record, that will be chosen.

4. In case there is no 'non-default folder structure record' that applies, but you have configured a default object-specific folder structure record, that will be chosen.

5. Finally, when neither 1. or 2. applies, 24Files will create a 'default folder structure'.

### **Default folder structure record for specific objects**

When you create a 'Default folder structure record' it is always linked to a specific object.

### **Default folder structure of 24Files**

24Files will create a '*Default Folder Structure* ', namely: Document Library --\> \[Object name\] --\> Record folder --\> Public folderin case there is no object-specific folder structure record that applies.

### **Not-default folder structure record**

*Non-default folder structure records* are folder structure records that contain filter rules.

Logic of 24Files: Upon loading the 24Files component on an object record page for the first time, 24Files:

* first searches for '*Non-default folder structures* ' and if no '*Non-default folder structure*' is applicable or found,

* it will search for a '*Default folder structure*' for that object.

* If no '*Default folder structure'* exists for that object, it will create a '*Default folder structure*'.

### **Filter rules**

Filter rules determine the folder structure record (FSR) that will be applied to a certain Object Record.

++Important:++ once the 24Files component gets loaded on the object record, a folder structure will be created in SharePoint. From then onwards, the folder structure is fixed and can only be changed manually (e.g. via folder movement, renaming etc.). In other words, filter rules will no longer have an impact on the object record nor will changes that happen on the Object Record change the Folder Structure Record.

---
language: "en"
---
# 24Files Graph Release

## Full Graph API support

As of 24Files v6.0, 24Files works fully with the Microsoft Graph API instead of the Microsoft REST API. The choice is mostly technical and the switch has been made to make 24Files more future-proof.

When you are upgrading from an older version of 24Files, an **upgrade script**will run that executes the following steps:

1. The script will logout all users and you need to login again.

2. Graph API**works differently with metadata** than the REST API, therefore the upgrade script will try to update automatically all object configurations that you have created. In case any of these upgrades fail, you will need to delete the old configuration manually and recreate it.

The **Copy Public Link** file menu feature has been extended and enhanced . For this feature to work properly, you need to make sure that the settings in SharePoint are set appropriately as described below. The Copy Public Link feature in itself now allows to:

1. Define the**Link Type** as View Only or Edit

2. Who can access the link? Anyone or only people within the organization.

3. Expiration data of the link. If left empty, the default expiration time is taken from the 24Files Settings.

4. Password protection.

Navigate to the **SharePoint Admin Center**. Select your SharePoint Site. You end up on the following screen:  
![image-20250912-075258.png](https://docs.24files.eu/__attachments/a_70b9340a8252efd99e521eebf5bde844246495d9818a35ff3339ab8a127d7c8f/image-20250912-075258.png?cb=0ab2648415a8aab25defaa173546b397)

Navigate to the tab Settings. Adapt the File Sharing Settings:  
![image-20250912-075544.png](https://docs.24files.eu/__attachments/a_83d16c9a2eab8a8171e06cb85737a1a6f290b8c4e4cdf8d211257ce94ee1542d/image-20250912-075544.png?cb=b067bab946c5b5eeda83fdb28519097f)

## General Advise

As with any major update, we recommend to install the latest version first in a sandbox and validate the functionality before moving into production.

---
language: "en"
---
# 24Files - Introduction

Welcome to the 24Files documentation!

Below you will find a short introduction video with an overview of the most important 24files features.  
[https://www.youtube.com/watch?v=lVTUWjvrMbY\&list=PLr0jIlMg3fRiqqLxF7YbCiqpsLiF9ZrM2\&index=16](https://www.youtube.com/watch?v=lVTUWjvrMbY&list=PLr0jIlMg3fRiqqLxF7YbCiqpsLiF9ZrM2&index=16)

All of these features are explained in more detail in this manual, and much more.

---
language: "en"
---
# 24Files Knowledge Base

---
language: "en"
---
# 24Files Lightning component

As final step of the 24Files configuration, the Lightning component needs to be added to a Lightning page.

* Go to the Object where you want to use 24Files.

* Then go into a record.

* After that, click on Setup \& Edit Page.

* Select in Lightning Components under Custom -- Managed the "**24Files - LWC"**Lightning component.

**24Files - Aura** is the predecessor of our LWC component which is also still functional but less user friendly and performant

* Drop it onto a page

![image-20250917-090057.png](https://docs.24files.eu/__attachments/a_97baf8b056b1fccbe38a59c1a5786883e306bc7f6f781681ed9cc67a5f988afb/image-20250917-090057.png?cb=d208d68ae4272a03da6ffd91a0c20b9a)

---
language: "en"
---
# 24Files Manager Configuration

If you are a first-time user of 24Files, the capabilities of the 24Files Manager app may seem overwhelming at first. We have created a short demo movie that explains the basic concepts and configuration steps once you set up SharePoint connectivity. We recommend you to watch this video as it will allow you to quickly set up a first use ca se, after which you can explore more advanced concepts described in the documentation:

<https://www.youtube.com/watch?v=XjkLr3DR60I>

---
language: "en"
---
# 24Files objects in Salesforce

24Files creates a number custom objects in your org. Here follows the description of the most important objects:

**24Files Folder Structure**

This object enables you to create folder structures. It stores the folder structures and fields such as 'default', the object, the record folder path etc.

**24Files Folder Structure Rule**

Contains the filter rules for a folder structure (if any).

**24Files Folder Structure Junction**

This object links a folder structure to a particular record.

**24Files Chatter File Link**

The records of this object contain the URL to files stored on SharePoint and can be used in Global Search or as Chatter links in Salesforce.

**24Files** **Object** **and Metadata Configuration**

Here you can configure where to save the folder structures, files etc. in SharePoint, i.e. you configure SharePoint Sites, Document Libraries etc.

**24Files 360 View**

This represents the relationship between objects. First of all, you need to create a new record with populated parent object, child object and a lookup field name which relates one object to another one. And then you will be able to see files from related records on the component.

**24Files Error Logger**

If something went wrong with 24Files, the errors and more information about the errors get logged in this object. More information is available in the Troubleshooting section of the documentation.

---
language: "en"
---
# 24Files Platform Events

## 24FileUploaded

Whenever 24Files uploads a file to your SharePoint, a Platform Event **24FileUploaded**is generated that can be used to trigger Flows.

The Platform Event returns:

* Filename

* Path = the URL of the file on SharePoint

* RecordId.

As an example, you can use this platform event to write the SharePoint URL of the file to a record field whenever a file is uploaded.

In the example below, we write the SharePoint URL returned by the Platform Event to a field named SharePointURI__c on an account record.

![image-20240318-140807.png](https://docs.24files.eu/__attachments/a_54556ffa75f6a0e7319d45beaebf7a41688a0a18a07800140d3a087d034e3c13/image-20240318-140807.png?cb=ecdbf01a980a23afbcaaec1a55000435)

## 24Files Generic Event

The 24Files Generic Event is raised when an async Apex action has finalized. For these Apex actions, 24Files generates both an email and a platform event.

The 24Files Generic Event platform event has the following attributes:

* **Path**: path to to the record folder.

* **RecordID**: the ID of the record for which Apex action was executed.

* **Status**: Success or Failed

* **Type**: the name of the Apex Action that raised the platform event.

---
language: "en"
---
# 24Files Release Notes

---
language: "en"
---
# 24Files Settings

## Default SharePoint Site

* Type and search for the SharePoint Site that you want to store the files in. This default SharePoint Site will be used in case no object specific SharePoint Site is configured. The loading may take a few seconds. It is important to state that you should select a site from the pick list.

* Click **save**

* Now select the appropriate document library.

## Default user for Anonymous Access

This setting is used when 24Files is used in combination with Salesforce Experience Cloud. To give anonymous community users the ability to search for SharePoint files via 24Files, they need a set of SharePoint rights to be able to do so. The 'Anonymous access user' setting allows you to specify a user, anonymous users will inherit the permissions set of this user. You can consider the Anonymous Access user as a service user that is e.g. also used when setting up folder structures in SharePoint.

It is mandatory to configure a user for Anonymous Access, even in case you do not use 24Files in combination with Salesforce Experience Cloud or do not configure the 24Files LWC component for Anonymous Access. Note: in order to configure a specific user for Anonymous Access, that user will first need to login into SharePoint via the 24Files component. Only then the user will appear in the dropdown picklist.

![image-20241017-111524.png](https://docs.24files.eu/__attachments/a_611d0ccbb068c48107f668c0e58f83bec0b7f1782511627e584ce6ac90041183/image-20241017-111524.png?cb=3ef55d6813b7e99c3d1f8c9a20f85ae5)

## 'Public Link Expires in' configuration

24Files allows you to specify the time frame within which a public link expires. In the 24Files file menu, users can share a public link to a file with any user, also users without a SharePoint account. This link allows to download the file. The 'Public Link Expires in' setting allows you to define an expiration time frame for the validity of the link.  
When generating public links, you may notice that the expiration time is shorter than expected. This is a **known limitation of SharePoint's API.**

---
language: "en"
---
# 24Files Spring '23 Release

Here is how you can provide us with remote access:

* Log in to your Salesforce account.

* Click on the View Profile icon in the upper right corner of the screen and select "Settings".

* In the Quick Find search box, type "Grant Account Login Access" and select "Grant Account Login Access".

* Select the duration of access you want to grant (1 day, 3 days, 7 days, or 30 days) for.

* Select the user or group that you want to grant access to : SCALEFACTORY Support

* Click on the "Save" button.

## oAuth Azure Add-in

++Benefit++:

* Simplify installation.

* Clear view on permissions.

![88239759-2dbb-489f-a850-2f93931152ec#media-blob-url=true&id=c779b6d5-cce6-4c33-bdc2-ef752d9854b3&collection=&contextId=12146&height=1020&width=1397&alt=](https://docs.24files.eu/__attachments/a_daa0fd57febbe0c1b627049a38a67c68af60bf920efce086def6c53a83e90284/88239759-2dbb-489f-a850-2f93931152ec%23media-blob-url=true&id=c779b6d5-cce6-4c33-bdc2-ef752d9854b3&collection=&contextId=12146&height=1020&width=1397&alt=?cb=62237f718ae3a68dcbd62be4f0e7d02d)
Clear view on permissions

* One AZURE app can be shared amongst multiple Salesforce orgs (e.g. prod, sandbox, ...)

![ea7703c1-0b65-42e0-877a-9625bc9811fb#media-blob-url=true&id=f18badaa-f776-4094-95ac-8c7d321278c6&collection=&contextId=12146&height=871&width=1416&alt=](https://docs.24files.eu/__attachments/a_087f0cd7cb67fd008e47e0d891db3a21b44b173e366d0bad0f4f1d6f9400c2cd/ea7703c1-0b65-42e0-877a-9625bc9811fb%23media-blob-url=true&id=f18badaa-f776-4094-95ac-8c7d321278c6&collection=&contextId=12146&height=871&width=1416&alt=?cb=51803c695fe2b48756fa35bd46ecd126)
One app for multiple Salesforce orgs.

* Easier management of SharePoint permissions in Azure.

* Makes testing/ development process easier because multiple URLs can be set on the same app. There is no need to create an add-in for every new org.

* Choose how long the client secret is valid (max 2 years). Easily create a new password and keep the same app.

++Description++: Replaced the AddIn onboarding with an Azure app. By doing so, components

* SharepointOAuthRedirectTarget

* SharepointSettingsAppRedirect

are now obsolete.

### Simplified Connection to SharePoint

++Benefit++: Easier user interface to connect to SharePoint by merging Login to SharePoint and Connect functionality.

++Description++:

Removed the section "Login to SharePoint" and replaced the button Connect with "Connect to SharePoint". Both functions are called after pressing the button.

Fields "Company name in SharePoint", "Client ID" and "Client Secret" are now mandatory. An error message is displayed if one of them is empty.

### Renamed and improved UX of object Configuration

++Benefit++: More straightforward name and UX.

++Description++: Object "Configuration" is renamed to "24Files Object \& Metadata Config". Improvements on the UX.

### Example Flow templates for 24Files

++Benefit++: Show users some typical Flow actions in 24Files.

++Description++: The following three Flow templates are added:

* Create 3 folders on contact create.

* Create folder structure on contact create.

* Upload 2 files on contact create.

### Minor Improvements

* When a file gets uploaded using the automated file upload functionality, the metadata is now stored into SharePoint.

* Better error toast messages.

* Permission set improvements:

  * Merged permission sets to have a better overview of relevant permission sets.

  * Added permissions.

* Added user consent screen for oAuth Azure add-in.

### Sub Releases

The 24Files Spring '23 Release consists of the following subreleases:

* v3.509

* v3.510

* V4.001

* v4.100

* v4.101

* v4.102

---
language: "en"
---
# 24Files Spring '24 Release

## Work with configurable metadata

In previous versions, the 24Files component displayed a fixed set of SharePoint metadata such as Name and Type of a file. As of 24Files 4.300, an admin can configure the SharePoint metadata to be shown in the 24Files component based on the metadata associated with a specific SharePoint weblist.

See this feature in action in this [++video++](https://youtu.be/6Uoy1CA1PqM?si=Hv2F_rR_GYOFVrUS).

Learn more about this feature in our [++documentation++](https://docs.24files.eu/2cd2/object-configuration-as-of-version-4-300#ObjectConfigurationasofversion4.300-E.EnableDynamicMetadata).

## Define your metadata at document upload

24Fies now allows you to select the metadata for which you want the user to specify the value during file upload via 24Files. This is a great way to bring more structure to your documents.

See this feature in action in this [++video++](https://youtu.be/6Uoy1CA1PqM?si=Hv2F_rR_GYOFVrUS).

Learn more about this feature in our [++documentation++](https://docs.24files.eu/2cd2/object-configuration-as-of-version-4-300#ObjectConfigurationasofversion4.300-E.EnableDynamicMetadata).

## Work with Microsoft Teams

Each Teams team has a dedicated SharePoint site. As of 24Files 4.300, we now allow you to associate these SharePoint sites with records even if they are of the same object. In other words, a SharePoint site can be bound to either an object or a record.

See this feature in action in [this video](https://youtu.be/xTt6uy0z-1E).

Learn more about this feature in our [++documentation++](https://docs.24files.eu/2cd2/object-configuration-as-of-version-4-300#ObjectConfigurationasofversion4.300-B.EnableDynamicSharePointsite).

## Configure an Experience Cloud portal in Authenticated Mode

Experience Cloud portals can now be configured in both Anonymous and Authenticated access mode, depending on whether third party users have a dedicated account to access your SharePoint.

Learn more about this feature in our [++documentation++](https://docs.24files.eu/step-6-optional-add-an-additional-callback-url-f-1)++.++

## Select which files to upload from Saleforce Storage to SharePoint

The object configuration now comes with an **Extensions to ignore** option. As an example, when enabling automatic file upload with delete and entering the extension '.snote' your Salesforce Notes will not be transferred to SharePoint but other file types will be uploaded to SharePoint and deleted on Salesforce storage.

## Before you start evaluating the Spring '24 Release ...

* This is a major new release, hence we strongly recommend you to first evaluate the new version in a **sandbox** before moving to production!

* As the configurable metadata depends on a prior known weblist, this feature cannot be combined with a dynamic SharePoint site configured per record.

## Sub Releases

* 4.225

* 4.230

* 4.231

* 4.300

---
language: "en"
---
# 24Files Spring '25 Release

## Security

Our 24Files app passed another Salesforce **security review**. So upgrading to the latest version ensures that you are taking advantage of the latest and best secured version of 24Files.

Independent from the security review, we have also redesigned 24Files such that you do not longer need to grant the SharePoint Termstore.ReadWrite.All permission to the Azure Registration App.

## New LWC component

So far 24Files has been built as an Aura component. We have now built an equivalent LWC component.

LWC is **faster** because it uses the native browser APIs and Web Components standard, reducing the need for heavy framework abstractions. Aura relies on more JavaScript processing, leading to somewhat slower load times and rendering.

In addition, we have decided to move the 24Files **component configuration** options to **custom metadata types**. This makes it easier to configure 24Files if you are using the component on multiple objects and want to ensure that the same configuration settings are applied to all of the components.

The LWC component can also be integrated in **screenflows**.

When you upgrade to the latest 24Files version, the Aura component is still available and your existing setup will continue to work as as is. Going forward new developments and feature additions will only be available for the LWC component.

## New Apex actions

* **Upload Metadata**: Use this action if you want to upload SharePoint metadata for a file.

* **Remove Folder**: Use this Apex method to remove a specified folder from SharePoint.

## Support for Salesforce API version 62

Update API version for 24Files classes \& components to version 62.

## General Advise

As with any major update, we recommend to install the latest version first in a sandbox and validate the functionality before moving into production.

---
language: "en"
---
# 24Files Spring '26 Release

The new 24Files spring release is out!

It includes two new Apex methods for use cases requested by many customers.

## List all Files in a Record

The **"List Files in Record or its Folder"** invocable Apex method lets you retrieve a list of SharePoint files for a Salesforce record.

Normally, users browse files through the 24Files LWC component. But sometimes files are created or managed entirely by automation, and users never open the folders themselves. This method gives your Flows or other Apex processes a way to see what's in a folder without needing anyone to click around.

It works for both recursive searches across all subfolders or targeted searches in a single folder, so you can use it to check how many files exist, find specific file types, or generate simple file reports.

The response includes amongst others:

* **File count:** number of files that were found.

* **Files List:** list of files with details including name, type, size, last modified date, and last modifier.

* **Search path:** the actual folder that was searched/visited.

Read more [here](https://docs.24files.eu/2cd2/list-all-files-for-a-record).

## Chatter File Link Create

The **Create Chatter File Links for All Junctions** invocable Apex method allows Flows to automatically create Chatter file links for SharePoint files.

Normally, Chatter links are generated automatically in the following cases:

1. At the initial load of the 24Files component on a record page, Chatter File Links are created for the files in the record folder (authenticated access mode) or in the public folder (anonymous access mode).

2. When a user uploads a file via the 24Files component, a Chatter File Link record is created for that file.

3. When a user opens a folder in the 24Files LWC component. In this case Chatter File Links are created for all files in the folder.

However, in backend-driven scenarios where folders and files are created entirely through automation, users may never manually open each folder.

In such cases, this batch method allows you to generate all Chatter links without requiring folder visits, making files **Global Searchable** and **Chatter-ready** immediately.

Read more [here](https://docs.24files.eu/2cd2/create-chatter-file-links).

## Sub Releases

* 6.20 up to 6.220

---
language: "en"
---
# 24Files Summer '23 Release

## Example Flow to Migrate Existing Salesforce Documents to SharePoint via 24Files

++Benefit++:

An easy to understand example on how to use our global functions to perform a migration using 24Files.

++Description++:

An example flow is added as an example on how you can use our global functions to perform a migration using 24Files. The flow will retrieve records from a type (e.g. contacts) and creates the default folder structure for those records. After this is done, the Salesforce documents are uploaded to SharePoint.

The different steps in the flow are:

1. Select object \& ask email address

2. Retrieve files from object

   1. Add files to List

3. Upload files → starts batch class

The flow is called "Migrating_Existing_Document_to_24Files".  
![image-20230807-152501.png](https://docs.24files.eu/__attachments/a_06fa640bcabd6e412b2abdb413c420d42182bb552601c4ef2fba7fbb4bb81055/image-20230807-152501.png?cb=ec8a98c26f4f6d51d71be369f3a92d09)
The example flow "Migrating Existing Document to 24Files".

## Preview Files

++Benefit++: No re-direct to SharePoint, on page display of the file.

++Description++: By clicking on the "Quick Preview" button in the dropdown, the file will be previewed on page.  
![image-20230807-152214.png](https://docs.24files.eu/__attachments/a_1764beaa436b0088b051dc1f12e83ab7e822621c8db3805a9f8077fb6213bf4d/image-20230807-152214.png?cb=80a09da0b981280a9f5512c3695ba099)
Preview your file on page in 24Files.

## Generate a Public Shareable Link

++Benefit++: Quick on page generation of shareable public link to a file.

++Description++: By clicking on the "Copy Public Link" button in the dropdown, a public shareable link will be generated and copied to your clipboard. The link allows to download the file.  
![image-20230807-152111.png](https://docs.24files.eu/__attachments/a_6f57133ebcaf0befaa0c71c1c1bd321a02363c97313eaea023fd6a5868fee8fb/image-20230807-152111.png?cb=85e207ffeaaee17ed2bae16caefd877f)
Generate a shareable public link in 24Files.

## Drag \& Drop Files instead of using the upload button

++Benefit++: Flexibility to drag and drop a file or select a file from a repository.

++Description++: Easily select a file from your desktop and drag it into the upload file section.  
![image-20230807-153029.png](https://docs.24files.eu/__attachments/a_6b179813dee092c1c30eedd48b6a2ba215ce91448ec5e577ed83f6ae1a844871/image-20230807-153029.png?cb=a53ff3810ed62103660a6a45501070a6)
Select or drop files

## Clickable Files Titles

++Benefit++: Less clicks for the user.

++Description++: Open a file in sharePoint when clicking on the name in 24Files.

## Layout Improvements

++Benefit++: Less clicks for the user.

++Description++: The "Open SharePoint" button is now visible next to the "Upload files" button iso in the dropdown.  
![image-20230807-144959.png](https://docs.24files.eu/__attachments/a_0878c96d6a7c866595a391bf0edb6616389ea73a0300c3d68714aebf4b321e4b/image-20230807-144959.png?cb=a2d809480fbe63481cbb01df8304fce7)
By clicking on the SharePoint icon you will be navigated to the relevant space in SharePoint.

## Permission Set for Community Cloud Users

++Benefit++: Easily configure community users to use 24Files.

++Description++: Permission set for community cloud users has been added. The permission set is called "24Files Community User".  
![image-20230807-152653.png](https://docs.24files.eu/__attachments/a_eae405ff9fc8ceedf0f6f980f52fab865dc96eb6a3574f3119ecc3c2955d9fc6/image-20230807-152653.png?cb=00b4c57749c5d232fdc65420ab843ab8)
Permission set "24Files Community User".

## Sub Releases

* v4.200

* v4.201

* v4.203

* v4.204

* v4.205

* v4.206

* v4.207

* v4.208

* v4.209

* v4.210

* v4.211

* v4.212

---
language: "en"
---
# 24Files Summer '24 Release

## "Reset tracking" option to select and recreate the folder structure

When a user hits the reset tracking button, 24Files will reset the link between the record and the folder structure. When the record page is reloaded, 24Files will re-evaluate what folder structure to apply.

This feature can be useful if you work with multiple folder structure and you want the end-user to choose which folder structure to apply for a particular record.

Note that this is NOT an automated reset tracking functionality, i.e. **the user needs to explicitly trigger the reset tracking functionality on the 24Files component on a record page**.

As an admin, you need to explicitly enable reset tracking in the 24Files component, else, the capability will not be visible to end users.

More information can be found [here](https://docs.24files.eu/2cd2/functionality-of-the-lightning-component#FunctionalityoftheLightningcomponent-Enableresettracking) in the documentation.

## New APEX actions

We have extended the set of APEX action available within 24Files, with 2 new actions:

* **Sync Metadata**: You can configure 24Files such that Salesforce fields are synced to SharePoint when a file gets first uploaded. This APEX action allows you to resync metadata afterwards, e.g. when the record gets updated.

* **Rename Record Folder**: Use this Apex action to rename the record folder in SharePoint, e.g. triggered by a change of the record name in Salesforce.

For each of these APEX methods, there is an example Flow that is shipped with the package and that you can clone to customize it to your needs.

More information on the 24Files Flow, APEX and Platform Event support can be found [here](https://docs.24files.eu/2cd2/automation-and-24files).

## Special characters and folder structures

We have improved the usability of Folder Structures in combination with special characters. In case you create a folder in a folder structure that contains special characters that are not supported by SharePoint, you will now get a more meaningful error message.

Also white spaces at the beginning and the end of a folder name are now automatically trimmed.

The list of not-supported characters for files and folders can be found [here](https://docs.24files.eu/2cd2/24files-folder-structures#id-24FilesFolderStructures-Specialcharacters).

## Sub Releases

* 4.310

* 4.311

* 4.312

* 4.313

---
language: "en"
---
# 24Files Summer '26 Release

## Work without a Public Folder

This is a feature that has been requested by many customers 'Can we remove the Public Folder?'. Actually, this is possible as of the summer release '26, provided of course that you do not use Anonymous Access.

As a brief reminder: the Public Folder (and its subfolders) are the only folders accessible to users that have access to 24Files in Anonymous Access mode. Anonymous Access is primarily used on Experience Cloud, where external users without a SharePoint account, can still upload documents to SharePoint via a shared service account. In case your setup does not make use of Anonymous Access, you no longer need a Public Folder in your folder structure.

In the Folder Structure tab in the 24Files Manager app, there is a new option **Disable Public Folder**for that specific folder structure.  
**If you are upgrading from an older 24Files release** , and do not see this checkbox, please navigate to **Setup \> Object Manager** . Search for **24Files Folder Structure.** Navigate to Page Layout and add the **Disable Public Folder**checkbox to the page layout.

Please note that 24Files does not remove any folders or files from SharePoint, so disabling the Public Folder will not have any effect on existing records.

Existing folder structures will not change when upgrading, i.e. the checkbox is unchecked by default.

## Edit Metadata

24Files already allowed users to define metadata at the time of file upload. Now, users can also **edit metadata for files**.  
![image-20260522-145443.png](https://docs.24files.eu/__attachments/a_8aa12e793ba5285c3228ca6aee2173e2e232d3d71dae962e77945eed163ebdff/image-20260522-145443.png?cb=8782d61808243fcd9600a319fbd65ba3)

In order to enable this capability for your users, make sure you checked the **Enable Edit Metadata checkbox** in the 24Files Component settings (Custom Metadata Types).

## SharePoint Metadata \& Object Configuration

Some customers had accidently added read-only metadata fields in the **Fields to edit**section of the object configuration. In order to prevent this, we have applied filtering such that only editable SharePoint metadata fields can be selected.

## SharePoint Metadata for Dynamic SharePoint Sites

This summer release adds support for **viewing and editing SharePoint metadata** when using **Dynamic SharePoint Sites** . Because the site or library can change at runtime, 24Files needs a **fixed reference** to discover which metadata fields are available.

In order to support this scenario, the Object Configuration has been extended for when you have checked the box Enable Dynamic SharePoint Site.

Configure **Dynamic SharePoint Metadata Config Path** with a SharePoint path (for example, `/sites/YourSite/Shared%20Documents/`) for the reference site. 24Files uses this path only to **discover metadata fields** and determine which fields users can view/edit, **file loading for a specific record still uses the Dynamic SharePoint Site configuration**.

This setting is **optional** unless you want metadata support with Dynamic SharePoint Sites. If you don't set it, the files will still appear using the **default/preconfigured columns**, but 24Files won't be able to reliably discover the full field list for the dynamically selected site/library.  
If you use Dynamic Metadata in combination with Dynamic SharePoint sites, please verify that **the fields that you select under 'Fields to display' and 'Fields to edit' exist across all your Dynamic SharePoint Sites, else you will get errors**.

## Enable the Lightning Design System 2 (SLDS 2) Theme

For the best admin and user experience, we recommend that you enable the SLDS 2 theme on your environment, via Setup \> Themes and Branding.

## Sub Releases

* 6.230 up to 6.330

---
language: "en"
---
# 24Files Winter '23 Release

## Configure an Expiry Period for Public Link

You can now specify an expiry period when sharing public links through 24Files. The expiry period can vary between 1 week and 3 years and is configured in the 24Files Settings page in the 24Files Manager app.

## 360 View - Model Many-to-Many Relations

24Files 360 View allowed you to model parent-child relationships and to show the folder structures of child records on the parent's record page, grouped under a virtual folder.

We have extended this feature in 2 ways:

1. You can now choose the name of the virtual folder.

2. You can extend this feature to many-to-many relationships via junction object.

Read more with a concrete example on the 360 View documentation page.

## Miscellaneous

Various hardening improvements for:

* 24Files APEX methods.

* Email-to-case automatic file transfer.

* Salesforce storage automatic file transfer.

* Support for up to 70 subfolders in folder structure record.

## Sub Releases

* v4.214

* v4.216

* v4.217

* v4.218

* v4.219

* v4.220

* v4.221

* v4.222

* v4.223

* v4.224

---
language: "en"
---
# 24Files Winter '25 Release

## Multi-lingual capabilities

24Files now allows you to customize the language of the end-user interface. The admin interface (i.e. the 24Files Manager app) remains English only. We now expose custom labels for which you can add custom translations.

More information can be found [here](https://docs.24files.eu/2cd2/multi-lingual-capabilities) in the documentation.

## Enable/disable file \& folder actions

In some cases, you may not want to expose all file and folder actions to your customers. As an example, you may not want to expose the 'Share Public Link' action to you end-users. 24Files now has more granular way to configure which actions to expose. These actions are defined on the component level. Please consult [the documentation](https://docs.24files.eu/2cd2/functionality-of-the-lightning-component#FunctionalityoftheLightningcomponent-Enabling&disablingfileandfolderactions) for more info.

In any case, 24Files inherits the authorization rules you have defined in SharePoint; e.g. if a user cannot navigate to a folder in SharePoint, they will not be able to do it via the 24Files interface either.

In addition, it is now also possible to disable the automatic generation of a folder structure in the background if it does not exist.

## User-defined metadata

24Files allows you to let the end-user specify metadata for a file at the time of upload, via the Object Configuration in the 24Files manager app. From this release onwards, 24Files now also supports mandatory metadata and multi-select metadata. I.e. if you have defined the metadata as mandatory or multi-select in SharePoint, 24Files will automatically adopt this in the 24Files component.

## Preview additional filetypes

We have reworked our preview capabilities and 24Files now supports SharePoint preview for additional filetypes such as .msg and .eml files.

## New Apex actions

We have extended the set of Apex action available within 24Files, with a number of actions:

* **Get File Links**: This new Apex action allows to retrieve the SharePoint link to multiple files in one call.

* **Delete Files**: An Apex action that allow you to delete one or multiple files on SharePoint based on your automation flow.

* **Move Folders**: Use this Apex action to move folders (and all of its subfolders and files) from one folder to another, within the same SharePoint site and Document Library. This Apex action can be used below the record folder level or at/above the folder record level. In the latter case, the folder structure will change and you need to reset the folder structure in order to keep access to files in the 24Files component.

* **Get Folder Path**: This Apex action returns the path to the record folder for specific recordIds.

More information on the 24Files Flow, APEX and Platform Event support can be found [here](https://docs.24files.eu/2cd2/apex-documentation).

A quite common use case of the Move Folder Apex action is where you want to move the record folder during the lifetime of the record. This video explains how you can build that use case.  
<https://youtu.be/HxZwumSMfuo>

## New Platform Events

24Files supports a new platform event that is launched when an async Apex action has finalized. In previous releases, an email was generated when the action finished folder structure has been created via an Apex action, now also a platform event is generated.

The platform event has the following attributes:

* **Path**: path to to the record folder.

* **RecordID**: the ID of the record for which Apex action was executed.

* **Status**: Success or Failed

* **Type**: the name of the Apex Action that raised the platform event.

## Sub Releases

* 4.322

* 4.330

* 4.340

* 4.350

* 4.3.60

* 4.3.80

---
language: "en"
---
# 24Files Winter '26 Release

Please continue reading to learn more about:

* Graph API support and upgrade instructions.

* More powerful 'Copy Public Link' support.

* Use the document library as record folder.

## Full Graph API support

As of 24Files v6.00, 24Files works solely with the Microsoft Graph API instead of the Microsoft REST API. The choice is mostly technical and the switch has been made to make 24Files more future-proof.

### Upgrade Instructions

Before you upgrade your 24Files app, you will need to upgrade the Azure Registration app, to support permission specific to the Graph API.

More details are found in the documentation [here](https://docs.24files.eu/2cd2/step-3-set-up-api-permissions-in-azure-graph-api).

As part of the installation, 24Files will automatically add a Remote Site setting to access the SharePoint Graph API.

When you are upgrading from an older version of 24Files, an **upgrade script**will run that executes the following steps:

1. The script will logout all users and you need to login again.

2. Graph API**works differently with metadata** than the REST API, therefore the upgrade script will try to update automatically all object configurations that you have created. In case any of these upgrades fail, you will need to delete the old configuration manually and recreate it.

### Changes to Apex Calls

If you make use of 24Flow Apex Actions, the Graph release will necessitate the following changes:

* **PATH**: The PATH argument does no longer require the Document Library:

  * PATH before the upgrade e.g. /Document Library/Accounts/ACME \[0015I00000n0T3VQAU\]/Opportunities/projectA

  * PATH after the upgrade e.g. /Accounts/ACME \[0015I00000n0T3VQAU\]/Opportunities/projectA

### Support for \& and %

With the Graph API, 24Files now also supports '\&' and '%' as part of file and folder names.

### Support for SharePoint Subsites

With the Graph API, 24Files now also supports SharePoint Subsites when the full path to the subsite is in the URL, i.e. when the URL does not look like that of a regular SharePoint site.

## **Copy Pubic Link**

The **Copy Public Link** file menu feature has been extended and enhanced . For this feature to work properly, you need to make sure that the settings in SharePoint are set appropriately as described below. The Copy Public Link feature in itself now allows to:

1. Define the**Link Type** as View Only or Edit

2. Who can access the link? Anyone or only people within the organization.

3. Expiration data of the link. If left empty, the default expiration time is taken from the 24Files Settings.

4. Password protection.

Navigate to the **SharePoint Admin Center**. Select your SharePoint Site. You end up on the following screen:  
![image-20250912-075258.png](https://docs.24files.eu/__attachments/a_cb0982c6b752474e1a08d47523aa25d54e3a1a9c1b5ad54bbd983410e9b7d89d/image-20250912-075258.png?cb=0ab2648415a8aab25defaa173546b397)

Navigate to the tab Settings. Adapt the File Sharing Settings:  
![image-20250912-075544.png](https://docs.24files.eu/__attachments/a_dc9aebf4f57ff06449d2b90ed73645872c1ba2b985bea6e7c5cad74651374fba/image-20250912-075544.png?cb=b067bab946c5b5eeda83fdb28519097f)

## Use the Document Library as a Record Folder

In some cases you would like to open up the 24Files component at the Document Library level rather than at the level of a designated Record Folder.

In order to support this use case, 24Files now allows you to select the Document Library as the record folder. You can configure this in the Folder Structures tab of the 24Files Manager app.  
<https://www.youtube.com/watch?v=XObV7vVjDLw>

## SharePoint Site and Document Library Selected by End-User

With the 24Files' Dynamic SharePoint sites feature, you can dynamically set the SharePoint site and document library per record. The Winter Release now provides the capability to give users the freedom to select the SharePoint Site and Document Library for a specific record.

If you enable Dynamic SharePoint sites and the SharePoint Reference field is empty for a record, end-users will be prompted to select the applicable SharePoint site and Document Library.  
<https://youtu.be/f6LZqLVq33g>

## Notes \& Attachments

Since a long time, you can automate the transfer from files uploaded to Notes \& Attachments to 24Files and SharePoint.

In case you do not make use of this feature, but still want to occasionally upload documents to 24Files, it is possible to manual drag \& drop the documents from the Notes \& Attachments to the 24Files canvas.

## Deprecation of Aura Component

For a number of releases, we have been supporting the Aura and LWC component in parallel. Going forward, we stop support on the Aura component and advise everyone to migrate to LWC as soon as possible. On the Aura component, users will see the following message:  
![image-20251014-083607.png](https://docs.24files.eu/__attachments/a_97583ebaeb2188a91586ab1b78558664e62a00e2f5844cdf1ecfc42a5fdee73c/image-20251014-083607.png?cb=28d9e1ea9d17ef41af74c8eebdb4deba)

## General Advise

As with any major update, we recommend to install the latest version first in a sandbox and validate the functionality before moving into production.

## Sub Releases

* 5.240

* 5.320

* 6.10

---
language: "en"
---
# Add to mobile view - Salesforce Application

To use 24Files on mobile, you have to activate this on the Object Record Page:

1. Click on the settings page, then 'Edit page'.

2. Click 'Activation'.

3. Set as default for 'Phone'.

Validate via the Phone preview whether the 24Files lightning component has been added.  
![https://24files.eu/wp-content/uploads/2021/02/Screenshot-2021-02-27-at-18.07.16-1024x432.png](https://24files.eu/wp-content/uploads/2021/02/Screenshot-2021-02-27-at-18.07.16-1024x432.png)  
24Files will work smoothly on **iOS devices** such as iPhones and iPads.

For **Android devices,**there are limitations:

* **You cannot login into the 24Files component on an Android device**. Please first login first on a desktop device.

* Any **menu option that redirects to SharePoint will not work on Android device**. More specifically this means that the file Preview and the file Edit will not work on Android devices. For filetypes for which Salesforce supports a preview, the 24Files Quick Preview function will still work. Also the Open SharePoint does not work. Therefore, the functions that are not available are hidden by default on Android devices.

These limitations are due to a bug in the Salesforce Android app.

---
language: "en"
---
# 24Files Apex methods

## Parameters

The following capitalized items need to be replaced by your specific values when calling the 24Files Apex methods:

* RECORD_ID = ID of the record

* USE_ANONYMOUS_AUTH = set to 'true' to use anonymous auth or 'false' to use authenticated auth

* EMAIL_ADDRESS = email address where results should be sent to

* CONTENT_VERSION_ID = Salesforce content version id where the file is stored in

* PATH = long path - e.g. /Accounts/ACME \[0015I00000n0T3VQAU\]/Opportunities/projectA

* FOLDER = This represents the path relative to the base folder.

  * **For Authenticated Access** : The FOLDER variable is relative to the **Record Folder**.

  * Example:

    * To query a "file" in the Record Folder itself, set FOLDER to "file".

    * To query a "file" in a subfolder within the Record Folder, set FOLDER to "subfolder/file".

  * **For Anonymous Access** : The FOLDER variable is relative to the **Public Folder**, which is the default base folder for anonymous access. Files can only be uploaded to the Public Folder or its subfolders.

## Additional info

Summary : Note that in case of Anonymous Authentication the **FOLDER** is the path relative from the Public Folder. For Authenticated Authentication, this is the path relative from the Record Folder.

So for Get File Link the FOLDER variable to query a "file" from the record folder would be "file" and if the file is located in a subfolder called "subfolder" , the variable would be "subfolder/file"

**Anonymous access and Public folders**

Several 24Files Apex Actions support **Use Anonymous Access** . When this option is enabled, all file and folder paths are resolved from the **Public Folder**, not the Record Folder.

Anonymous access requires a **Public Folder** to exist on the applicable folder structure.

If **Disable Public Folder** is enabled for that structure, Apex Actions using anonymous authentication cannot access files and may return an error such as:

Plain Text

    Anonymous access is not available for this folder structure because Public folder creation is disabled. Enable Public folders or switch to authenticated access in your 24Files custom metadata.

## Limitations

* With APEX, file uploads are limited to a maximum size of 35 MB per file.

* The getFileLink APEX method returns a link with an expiration duration that has been set in the 24Files Settings page in the 24Files Manager app.

## Create Single Folder

    sfy_office365.AddFolderGlobalMethod.FolderRequest folderRequest = new sfy_office365.AddFolderGlobalMethod.FolderRequest(RECORD_ID, FOLDER, USE_ANONYMOUS_AUTH);
    sfy_office365.CreateFoldersGlobalMethod.createFolder(folderRequest, EMAIL_ADDRESS);

## Create Multiple Folders

    sfy_office365.CreateFoldersGlobalMethod.createFolders(new List<sfy_office365.AddFolderGlobalMethod.FolderRequest>(), EMAIL_ADDRESS);

## Create Folder Structure

    List<sfy_office365.GenerateFolderStructureGlobalMethod.FolderStructureRequest> generateFolderStructures = new List<sfy_office365.GenerateFolderStructureGlobalMethod.FolderStructureRequest>{new sfy_office365.GenerateFolderStructureGlobalMethod.FolderStructureRequest(RECORD_ID, USE_ANONYMOUS_AUTH, EMAIL_ADDRESS)};
    sfy_office365.GenerateFolderStructureGlobalMethod.generateFolderStructure(generateFolderStructures);

## Upload File

    sfy_office365.AddFileGlobalMethod.FileRequest uploadFile = new sfy_office365.AddFileGlobalMethod.FileRequest();
    uploadFile.recordId = RECORD_ID;
    uploadFile.folderName = FOLDER;
    uploadFile.contentId = CONTENT_ID;         // accepts ContentVersion.Id, ContentDocument.Id, or Attachment.Id
    uploadFile.isAnonymousAuth = USE_ANONYMOUS_AUTH;
    uploadFile.deleteAfterUpload = DELETE_AFTER_UPLOAD; // set to true to remove from Salesforce after successful upload
    sfy_office365.UploadFilesGlobalMethod.uploadFile(uploadFile, EMAIL_ADDRESS);

## Upload Files

    sfy_office365.UploadFilesGlobalMethod.uploadFiles(new List<sfy_office365.AddFileGlobalMethod.FileRequest>(), EMAIL_ADDRESS);

## Get File Link

Use this method to retrieve a public link for a single file.

    List<sfy_office365.GetFileLinksGlobalMethod.FileLinkRequest> fileLinkRequests = new List<sfy_office365.GetFileLinksGlobalMethod.FileLinkRequest>{new sfy_office365.GetFileLinksGlobalMethod.FileLinkRequest(RECORD_ID,FOLDER, USE_ANONYMOUS_AUTH)};
    sfy_office365.GetFileLinksGlobalMethod.getFileLink(fileLinkRequests);

## Get File Links

Use this method to retrieve public links for a multiple files for multiple records.

    List<sfy_office365.GetFileLinksGlobalMethodBatch.FileLinkRequestBatch> fileLinkRequestsBatch = new List<sfy_office365.GetFileLinksGlobalMethodBatch.FileLinkRequestBatch>
    {
        new sfy_office365.GetFileLinksGlobalMethodBatch.FileLinkRequestBatch(
            RECORD_ID_1,
            FOLDER_1,
            USE_ANONYMOUS_AUTH
        ),
        new sfy_office365.GetFileLinksGlobalMethodBatch.FileLinkRequestBatch(
            RECORD_ID_2,
            FOLDER_2,
            USE_ANONYMOUS_AUTH
        ),
        new sfy_office365.GetFileLinksGlobalMethodBatch.FileLinkRequestBatch(
            RECORD_ID_3,
            FOLDER_3,
            USE_ANONYMOUS_AUTH
        )
    };

    sfy_office365.GetFileLinksGlobalMethodBatch.getFileLinkBatch(fileLinkRequestsBatch);

## Metadata Sync

24Files allows you to sync Salesforce fields to SharePoint metadata at the time when a new record is created. Use this Apex method to enable a sync at other times, e.g. when records fields are updated.

    sfy_office365.X24FilesMetadataSync.metadataSync(List<String> recordIds);

## Rename Record Folder

Use this Apex method to rename the record folder in SharePoint, e.g. triggered by a change of the record folder name in Salesforce.

    sfy_office365.X24FilesRenameRecordFolder.renameRecordFolders(List<String> recordIds);

## Get Folder Path

Use this Apex method to retrieve the folder paths for specified records in SharePoint, typically as part of integrations or automations involving SharePoint folder structures.

    List<List<Id>> recordIds = new List<List<Id>>{ new List<Id>{ RECORD_ID  } };
    List<List<sfy_office365.GetFolderPathResponse>> responses = sfy_office365.X24FilesSharepointGetFolderPath.getFolderPath(recordIds); 

## Move Folder

Use this Apex method to move folders within SharePoint by specifying the old and new paths. This method can be utilized as part of an automation process where folder paths need to be updated.

    sfy_office365.FilesMoveRequest req = new sfy_office365.FilesMoveRequest(PATH_from, PATH_to);
    List<sfy_office365.FilesMoveRequest> requests = new List<sfy_office365.FilesMoveRequest>();
    requests.add(req);
    List<sfy_office365.X24FIlesSharepointMove.Response> responses = sfy_office365.X24FIlesSharepointMove.moveFolder(new List<List<sfy_office365.FilesMoveRequest>> {requests})[0];

## Remove Files

Use this Apex method to remove specified files from SharePoint, typically for scenarios where files need to be deleted based on Salesforce record information.

    sfy_office365.FileRemoveRequest req = new sfy_office365.FileRemoveRequest(RECORD_ID, FOLDER, USE_ANONYMOUS_AUTH);
    List<sfy_office365.FileRemoveRequest> requests = new List<sfy_office365.FileRemoveRequest>();
    requests.add(req);
    List<sfy_office365.X24FIlesSharepointRemove.Response> responses = sfy_office365.X24FIlesSharepointRemove.removeFiles(new List<List<sfy_office365.FileRemoveRequest>> {requests})[0];

## Remove Folders

Use this Apex method to remove a specified folder from SharePoint.

    sfy_office365.FolderRemoveRequest req = new sfy_office365.FolderRemoveRequest(RECORD_ID,FOLDER, USE_ANONYMOUS_AUTH);
    List<sfy_office365.FolderRemoveRequest> requests = new List<sfy_office365.FolderRemoveRequest>();
    requests.add(req);
    List<sfy_office365.X24FIlesSharepointRemoveFolder.Response> responses = sfy_office365.X24FIlesSharepointRemove.removeFolders(new List<List<sfy_office365.FolderRemoveRequest>> {requests})[0];

## Upload Metadata

Use this Apex method to upload metadata to SharePoint.

    List<sfy_office365.SharepointMetadata> metadata = new List<sfy_office365.SharepointMetadata>{new sfy_office365.SharepointMetadata(SHAREPOINT_FIELD, VALUE)};
    sfy_office365.UploadMetadataRequest request = new sfy_office365.UploadMetadataRequest(RECORD_ID, filename,FOLDER,metadata);
    List<sfy_office365.UploadMetadataRequest> innerList = new List<sfy_office365.UploadMetadataRequest>{ request };
    List<List<sfy_office365.UploadMetadataRequest>> outerList = new List<List<sfy_office365.UploadMetadataRequest>>{ innerList };
    sfy_office365.X24UploadMetadata.uploadMetadata(outerList);

Note that SharePoint does not allow to write all metadata via the Graph API. More specifically, the following metadata types are not supported:

* **Managed Metadata** (Taxonomy): Single or multi-value managed metadata fields cannot be updated through standard Graph API calls.

* **Person/Group**: Fields mapping to user profiles frequently fail to update.

* **URL/Hyperlink**: Hyperlink structures are not supported for updates.

* **Lookup Fields**: Complex lookup relationships cannot be updated.

This Apex action can also be used to **Rename** files. In order to do so, use the SHAREPOINT_FIELD `FileLeafRef`, make sure that the VALUE contains the file extension as well, else the file will become unusable. FileLeafRef is an internal SharePoint field name representing the file name (including extension) in document libraries.

## Migrate Files Batch Upload

Use this Apex method to upload files in batch from Salesforce to SharePoint.

    Boolean useAnonymousAuth = false;
    Boolean deleteAfterUpload = true;
    String emailAddress = 'you@company.com';
    String folderPath = '';
     
    X24FilesMigrateBatch.FlowInput input = new X24FilesMigrateBatch.FlowInput(
      recordIds,
      useAnonymousAuth,
      deleteAfterUpload,
      emailAddress,
      folderPath
    );
     
    X24FilesMigrateBatch.uploadFiles(
      new List<X24FilesMigrateBatch.FlowInput>{ input }
    ); 

## Create Chatter File Links

Use this Apex method to Create Chatter File Links. Please read the page **Create Chatter File Links** in the section **Use 24Files with Flows** for more background information.

    sfy_office365.CreateJunctionChatterLinksRequest request = new sfy_office365.CreateJunctionChatterLinksRequest();
    request.batchSize = 5;
    request.reprocessAll = false;
    List<sfy_office365.CreateJunctionChatterLinksRequest> requests = new List<sfy_office365.CreateJunctionChatterLinksRequest>(); 
    requests.add(request);
    List<sfy_office365.CreateJunctionChatterLinksResponse> responses = sfy_office365.CreateJunctionChatterLinksGlobalMethod.createChatterLinksForJunctions(requests);

## Create Chatter File Links for a Record

This invocable Apex action automatically generates Chatter File Links for a Salesforce record by discovering files stored in corresponding SharePoint folders. It ensures that users see relevant SharePoint documents directly on the record's Chatter feed without manual linking.

**Inputs for this Apex action:**

* **Record Id**: the Salesforce record ID for which to generate Chatter file links.

* **Reprocess Chatter File Links** : When`true,`clears checkpoints and runs folder discovery again so new files in already-processed folders can get Chatter file links; existing path/External Id pairs are not duplicated.

**How it works.**

* **Resolves record type** : uses the provided record id to determine the applicable 24Files Folder Structure(s); if multiple apply, uses the **default** structure.

* **Manages junctions**: if no Folder Structure Junction exists, it creates the SharePoint/metadata path and junction record. Existing junctions are reused.

* **Reprocess behavior** : when `Reprocess Chatter File Links = true`, it resets the previously processed Chatter File Linkson the Folder Structure Junctions records and queues a full folder discovery (critical for new files added to previously processed folders).

* **Discovers \& upserts**: finds files in SharePoint and upserts Chatter file link records (no duplicate links for existing paths/external IDs).

### When to use it

* Automatic generation of Chatter File Links without the need to manually visit the record page where the 24Files LWC is visible.

* For synchronising new SharePoint file additions to Salesforce Chatter file links. Especially to fill in missing Chatter links for existing records or folder structures.

    sfy_office365.CreateRecordChatterLinksRequest req = new sfy_office365.CreateRecordChatterLinksRequest();
    req.recordId = RECORD_ID;
    req.reprocessChatterLinks = REPROCESS_BOOLEAN;
    List<sfy_office365.CreateRecordChatterLinksRequest> requests = new List<sfy_office365.CreateRecordChatterLinksRequest>();
    requests.add(req);
    List<sfy_office365.CreateRecordChatterLinksResponse> responses = sfy_office365.CreateRecordChatterLinks.createRecordChatterLinks(requests);

## List All Files for a Record

This method gives your Flows or other Apex processes a way to see what's in a folder without needing anyone to click around. It returns amongst others the number of files in a folder as well the name and size of the files. Please read the page **List All Files for a Record** in the section **Use 24Files with Flows** for more background information.

    sfy_office365.X24FilesListFilesRequest request = new sfy_office365.X24FilesListFilesRequest();
    request.recordId = '001...';
    request.folderPath = '/subfolder';
    request.useAnonymousAccess = false;
    List<sfy_office365.X24FilesListFilesResponse> responses = sfy_office365.X24FilesListFiles.listFiles(
        new List<sfy_office365.X24FilesListFilesRequest>{ request }
    );

---
language: "en"
---
# Upgrades, Troubleshooting \& Application Maintenance

This section contains some basics regarding 24Files troubleshooting.

In case you do not find the answer to your question here, please also have a look at the FAQ section of our documentation.

---
language: "en"
---
# Aura versus LWC

For a long time, 24Files has been offered as an Aura component. As of the Spring '25 release we now also offer an LWC component. The Aura component remains available for the time being but all new developments and or fixed will be done on the LWC component only.

**LWC** is **faster** because it uses the native browser APIs and Web Components standard, reducing the need for heavy framework abstractions. Aura relies on more JavaScript processing, leading to somewhat slower load times and rendering. Hence, the overall user experience will be improved by using LWC.

In addition, the LWC component is now configured via **custom metadata types**. This makes it easier to configure 24Files if you are using the component on multiple objects and want to ensure that the same configuration settings are applied to all of the components.  
On our YouTube channel you will find some videos which were recorded with the Aura component and with the associated component configuration.

With the LWC component, you navigate to Setup \> Custom Metadata Types to configure the exact same settings.

---
language: "en"
---
# Salesforce Flows, Platform Events and APEX

Automation with 24Files can be achieved either using Salesforce Flows or via APEX Code. Both are described below.

---
language: "en"
---
# Azure APP Configuration - Graph API (As of 24Files R6.0)

Note that you will only need to create one Azure App, even when you deploy both a sandbox and a production Salesforce environment. Both environments can make use of the same Azure app, i.e. you can first create the Azure app to work with your Salesforce production environment, and then enter the redirect URL of your Salesforce sandbox environment. You can reuse the same Client ID and create a new client secret in the Azure app.

In order to complete the Azure APP configuration,**you need to have the role SharePoint admin, furthermore you need the admin permission "Global Administrators"**.

<https://youtu.be/jFZyCCmmP6Y>

---
language: "en"
---
# Before starting 24Files configuration

This section lists the 24Files prerequisites:

First of all, 24Files is built on LWC technology, so make sure you deploy Salesforce Lightning and not Salesforce Classic.

Secondly, 24Files makes use of Platform Events. Platform Events require you to have an API enabled Salesforce Edition:

* Editions with API Access

  * Enterprise Edition

  * Unlimited Edition

  * Developer Edition

  * Performance Edition

* Editions without API Access

  * Group Edition

  * Essentials Edition

  * Professional Edition (can be purchased from Salesforce as an add-on)

---
language: "en"
---
# Chatter Functionality

In Chatter, enter a '/' and you can 'tag' a SharePoint file.

In the Chatter message, you will get a link to download the tagged file from SharePoint.

Please read the next section 'Work With Global Search' for more information on what files can be tagged.

![image-20230609-085031.png](https://docs.24files.eu/__attachments/a_87866eb8c0d38ee8e63d7895f2327bc57fd46334e33635869d7d0e92b8cdae46/image-20230609-085031.png?cb=23403b21935783601e7a99b13ffd8f1f)

---
language: "en"
---
# Controlling Chatter File Link Generation

24Files automatically generates Chatter file links for SharePoint files. In large orgs, that can mean a lot of records. With this feature, we've added a way to control exactly where those links are allowed to be generated, either at the record-folder level or at a specific subfolder beneath it.  
![image-20260618-080658.png](https://docs.24files.eu/__attachments/a_71896d908d03ddea65d822f83362cae14e8b0273714f907a38f68bb22d8534c9/image-20260618-080658.png?cb=0e92cd1e05c040053b2bceb1301e3056)  
As a brief reminder: Chatter Files links are Salesforce records that contain links to files stored in SharePoint. Chatter File links are generated when:

1. At the initial load of the 24Files component on a record page, Chatter File Links are created for the files in the record folder (authenticated access mode) or in the public folder (anonymous access mode).

2. When a user uploads a file via the 24Files component, a Chatter File Link record is created for that file.

3. When a user opens a folder in the 24Files LWC component. In this case Chatter File Links are created for all files in the folder.

It is also possible to programmatically (via Apex actions) create Chatter File links without requiring that a user visits a specific folder.

## **Record-folder level**

Each 24Files Folder Structure maps to an object (e.g. Account, Opportunity). You can toggle off the Chatter link generation right there on the Folder Structure or directly on the record-folder in the folder-structure editor.

**Notes**

* If you change this setting, it resets all subfolders below it to that same value.

* Folders above the record folder don't have this option.

## **Per-folder overrides**

Subfolders below the record folder don't have to follow the main rule. You can override it by editing the subfolder in the folder-structure editor and toggling Disable Chatter Link Generation just for that folder.

This works both ways: if the main setting turns links off, you can toggle them back on for a specific subfolder. The most specific folder path wins.

**The folders also now have an icon that shows you whether the toggle for that specific folder is on or off.**  
![image-20260618-080830.png](https://docs.24files.eu/__attachments/a_0c2b230979ac55153dbb5dd3a00fd9043b0a84ba97c86bdf71159e086e01dfff/image-20260618-080830.png?cb=5e94786693f7df377fcc20a6f3a3387a)

---
language: "en"
---
# Create Chatter File links

The **Create Chatter File Links for All Junctions** invocable Apex method allows Flows to automatically create Chatter file links for SharePoint files.

Normally, Chatter links are generated automatically in the following cases:

1. At the initial load of the 24Files component on a record page, Chatter File Links are created for the files in the record folder (authenticated access mode) or in the public folder (anonymous access mode).

2. When a user uploads a file via the 24Files component, a Chatter File Link record is created for that file.

3. When a user opens a folder in the 24Files LWC component. In this case Chatter File Links are created for all files in the folder.

However, in backend-driven scenarios where folders and files are created entirely through automation, users may never manually open each folder.

In such cases, this batch method allows you to generate all Chatter links without requiring folder visits, making files **Global Searchable** and **Chatter-ready** immediately.

**Note:**we are also evaluating ways to better manage and clean up outdated or orphaned Chatter links.

## Using the Apex Action

The batch can be invoked via Apex Action in a Flow. It accepts the following input parameters:

**Batch Size:** Number of junctions processed per batch execution (1--200). Default: 5

**Reprocess All:** If true, resets previously processed Folder Structure Junctions and regenerates all links. Default: false

**Limitation:** The batch only processes files in the active SharePoint Site Document Library. To respect Salesforce callout limits (100 per batch) and SharePoint throttling (429 errors), the batch automatically handles retries and resumes from checkpoints. Because of these safeguards, processing a large number of junctions, especially with **Reprocess All = true**, can take significant time. Plan accordingly when running large batches.  
![image-20260213-084359.png](https://docs.24files.eu/__attachments/a_6796a3c0a9c5d6513bb12804feb3eef4586e8946a447823ba8d8ab55df6384cb/image-20260213-084359.png?cb=efcb2227503ff404cba107f7491626a2)
Apex Action screen  
The batch method only processes records that already have entries in Sharepoint_Folder_Structure_Junction__c (records with 24Files that were manually visited). It is intended for reprocessing or updating existing junctions, not for creating new junction records.

See, also the section 24Files Apex methods for more details.

Please note that there is also a separate Apex action to create Chatter File Links for one specific record.

---
language: "en"
---
# Create folders conditional upon record field values

In normal operation, 24Files will create the folder hierarchy defined in the Folder Structure Record at the moment the record is being created and the 24Files Lightning component is loaded on the record page.

In some cases, you may not want the folders to be created automatically when the record gets created but only when some additional conditions are met. As an example, assume that you create a new opportunity in the Qualification stage, but you want the folder structure to be created at the time when the deal moves from the Qualification stage to another stage.

You can do this by defining filter criteria in the Page Layout view (navigate to cog wheel \> Edit Page). Click on the 24Files component and scroll down in the right hand side menu to the bottom of the page. Under Set Component Visibility, you can specify rules. If you do so, the 24Files component will not be visible on the record page and the folders will not be created in SharePoint as long as the visibility rules are not met.  
![image-20230919-101310.png](https://docs.24files.eu/__attachments/a_1542c66fb79719292ba4d35072e4f19311f84e9ae35b456ac0d6422507a7e537/image-20230919-101310.png?cb=315d35528331a7fff76f46571ee3f22d)

---
language: "en"
---
# Email Attachments

You can upload email attachments directly to SharePoint using 24Files. This works seamlessly after configuring the **Object Config** for the EmailMessage object and setting up a **Default Applicable Folder Structure**.

Once configured, attachments from logged emails can be stored in the correct SharePoint folder automatically.  
![image-20250305-080308 (3).png](https://docs.24files.eu/__attachments/a_1cd2b881a7eb0e13c5a8d2b543e9dd839bb05ea10fa3ef89ef07171761d627cc/image-20250305-080308%20(3).png?cb=44d64bfe65c1e9c33be015f73d167596)

![image-20250305-080335 (2).png](https://docs.24files.eu/__attachments/a_617f9d91dd2d99147d70c8d972fd78d9fcc026148635a7aaefbedc2b0685e49b/image-20250305-080335%20(2).png?cb=64b947be56f185aeada8492136d5e301)

---
language: "en"
---
# Email-to-Case

This feature is available as of 24Files release 4.209.0.

Salesforce Service Cloud has a feature 'Email-to-Case' whereby emails sent to a specific email address automatically result in the creation of a ticket. By default, the attachments in such emails are stored on Salesforce Storage.

Even in case you configured 24Files for automatic upload of files stored on Salesforce Storage, this will not be the case for Email-to-Case, as technically the files belong to the email and not to the case.

It is however possible to configure 24Files such that also Email-to-Case file attachments with be uploaded to SharePoint. You need to contact 24Files ([support@24files.eu](mailto:support@24files.eu)) to enable this feature. As a prerequisite, check that you have enabled automatic file upload on the Case object in the 24Files Manager app.

Once the Email-to-Case feature has been enabled, 24Files will upload all email attachments to SharePoint, i.e. there is no means to set specific filters.

---
language: "en"
---
# Embed the 24Files Component in a Screenflow

It is possible to embed the 24Files LWC component in a screenflow.  
![image-20250327-080630.png](https://docs.24files.eu/__attachments/a_9b57d304c866ac6b6d983106402497e0ca30e5bd480a1d5759bcd865869c4bf3/image-20250327-080630.png?cb=226e808a3e2abbf62a0f0ba1fd9c8482)

You need to pass two parameters to the component:

* The Component Settings that you want to use, as defined in the Custom Metadata Types.

* The Record Id to which the 24Files component is linked.

---
language: "en"
---
# Enable Lightning Web Security

In order for 24Files to function correctly, you need to enable Lightning Web Security.

Navigate to Setup \> Session Settings and enable Lightning Web Security as shown in the screenshot below.

More information on Lightning Web Security is available on this [Salesforce documentation page](https://developer.salesforce.com/docs/platform/lightning-components-security/guide/lws-intro.html).  
![image-20260420-074519.png](https://docs.24files.eu/__attachments/a_39e47312a3e46188af1e09f666e92482465ec3fa3606a31b9ade843ff9ec6008/image-20260420-074519.png?cb=ace8f55a563b819d43c3d9fd20967011)  
**If App Behaviour Is Erratic After Enabling Lightning Web Security**

If users experience inconsistent behaviour (e.g. Upload button not responding) after enabling Lightning Web Security, it may be due to stale cached Lightning resources.

**Quick Fix (per affected user)**

* Open browser Developer Tools (F12)

* Go to **Network** tab

* Enable **Disable cache**

* Refresh the page once

* Disable **Disable cache**

This forces the browser to load the latest Lightning components and resolves the issue in most cases.

---
language: "en"
---
# Enable the Lightning Design System 2 (SLDS 2) Theme

This setting is**not mandatory**, but provides the best visual experience for 24Files users and admins.

Navigate to **Setup \> Themes and Branding** and activate the SLDS 2 theme.

---
language: "en"
---
# Errors

* *'500 \| {"error":{"code":"-1, Microsoft.Office.Server.Search.REST.SearchServiceException","message":{"lang":"en-US","value":"The SafeQueryPropertiesTemplateUrl \\"The SafeQueryPropertiesTemplateUrl \&quot;{0}\&quot; is not a valid URL.\\" is not a valid URL."}}}' :*This error indicates that there is an issue on the 24Files Settings page in 24Files Manager App. More in particular, either the user that logged in into SharePoint or the Anonymous Access user does not have access to the SharePoint root site. Please visit the Azure App Configuration documentation for more information.

---
language: "en"
---
# Frequently Asked Questions

* **How does 24Files work with SharePoint permissions?** 24Files inherits the permissions that are set in SharePoint but 24Files itself does not define any SharePoint permissions. Read more [here](https://docs.24files.eu/2cd2/24files-and-security#id-24FilesandSecurity-ManagingAccessandPermissionswithSharePoint).

* **Do I need assign 24Files permission sets and licenses for all users** ? Only the users that will make use of 24Files need a permission set and license, which can be a subset of the users in your ORG. Also users that make use of anonymous mode access (common for Experience Cloud users) require a 24Files permission set and license. Read more [here](https://docs.24files.eu/2cd2/user-configuration).

* **How often does 24Files provide updates and how do I stay aware?**24Files regularly publishes new versions on the AppExchange. The new features are grouped into approximately 3 marketing release per year. If you are a 24Files customer, we have added you to our mailing distribution list where we announce the availability of those releases.

* **Can I use 24Files for my own custom objects?**Absolutely! 24Files works with any Salesforce standard or custom object.

* **When I use batch migration, not all files are transferred. What could be the reason?** Some of the common root causes are 1/ the difference in the supported character set between Salesforce and SharePoint (read more [here](https://docs.24files.eu/2cd2/not-supported-characters)) and 2/ With APEX, file uploads are limited to a maximum size of 35 MB per file.

* **Do you support Email-to-Case** ? Yes, we do. Contact our support team to enable it on your environment. Once the feature is enabled, email attachments can be automatically transferred to SharePoint, read more [here](https://docs.24files.eu/2cd2/email-to-case).

* **What security setup do you recommend in terms of access to SharePoint folders**? Much depends on what you have already set up on the SharePoint side. What we see as quite common setup:

  * Only grant access to Salesforce records to those people that need access. If people cannot access the record, they will not be able to access the 24Files component either.

  * Most customers set up permission access in SharePoint at the site level. So they work with multiple SharePoint sites with different access rules. 24Files has a very nice solution to work with multiple SharePoint sites, read more [here](https://docs.24files.eu/2cd2/object-configuration-as-of-version-4-300).

* **All my 24Files users have been logged out and cannot connect to SharePoint, what's wrong?** In the large majority of cases this is caused by either the expiration of or a problem with the client secret in your Azure Registration app. Please create a new client secret and reconnect to SharePoint from the 24Files Manager app. Please read more on the Azure Registration app configuration [here](https://docs.24files.eu/2cd2/azure-app-configuration-graph-api-as-of-24files-r6).

* **Some users can upload files or create folders in SharePoint, while others don't?** This is likely a SharePoint permission issue, please check with your SharePoint admin.

---
language: "en"
---
# Functionality of the Lightning component

The Lightning component can be customised via the **custom metadata types** for the LWC component

To do this  
![image-20260327-084413.png](https://docs.24files.eu/__attachments/a_01917d92c1041a00ebb389ad1dcdd301fcf01dbd4452b973eb7438cafcea5097/image-20260327-084413.png?cb=5584ea508dcc6dc0688fbfcb9ef41735)

* Navigate to Setup

* Search for Custom Metadata Types

* On the left of the label 24Files Component Setting click on manage records

* Either edit the Default one to your needs or you can create a New one

On the Page Layout, you then select the particular metadata you want to use, in this case 'default'.  
![image-20250311-151850.png](https://docs.24files.eu/__attachments/a_355379002479c2580339841ae45d1befa843e5d273bc182171963b0f4419a221/image-20250311-151850.png?cb=e9b4329182537e3c2cf51cb4c95e2294)

For the older Aura component (which is currently being phased out), you configure 24Files via Edit Page and then click on the 24Files component to access the 24Files configuration options.

The same parameters can be configured in both cases, as described below.

## **Title**

24Files allows you to customize the name of the component as shown to the user.

### **Parent Record**

It is possible to show files from the parent object. In this field you will have to fill in the 'Field Name' of that parent object.

++Example++: On the contact page, you want to see all files related to the company of that contact (= Account). All files \& folders of the Account will be shown and you will be able to perform all folder \& file actions. The bi-directional sync will work here.

In this particular case, the Field Name of the parent record (Account Name) of is 'AccountId'.  
![https://24files.eu/wp-content/uploads/2021/01/Salesforce-lightning-component-parent-1024x147.png](https://24files.eu/wp-content/uploads/2021/01/Salesforce-lightning-component-parent-1024x147.png)

Setup \> Edit Page \> Click on the 24Files component. The right hand side menu contextualizes, and here the 'Parent Record' field needs to be filled in.  
![image-20241014-134741.png](https://docs.24files.eu/__attachments/a_e8ae5238374eae6e039f33da473475d2f3e078a72ed76bd99661f5f86b1dfb09/image-20241014-134741.png?cb=b245fe883dda55c0d69c557d27793e75)

### **Access: Authenticated \& Anonymous**

<https://youtu.be/JbkIwLjfx4M>

#### ++Authenticated:++

Any files/folder action by a Salesforce user, will be tracked and assigned to that user. For Authenticated Access, a user needs to login to SharePoint via the 24Files component.

Authenticated Access implies that a user is able to:

* Upload, download, delete, rename, move, create public link, quick preview, and preview and edit files.

* Create, rename, delete and move folders.

The **file size** supported by 24Files is limited only by the APIs of SharePoint. The limit depends on your specific SharePoint setup and version but should be **at least 2 GB**.  
**Quick Preview** opens the file in a widget in Salesforce for those file types supported by Salesforce. **Preview** is a SharePoint feature, it opens the documentation in a separate tab in SharePoint.

This user will be able to view the SharePoint folders and documents (according to their permissions) within the 24Files component.

* **Copy Public Link** means that you get a URL where anyone (you do not need a SharePoint nor a Salesforce account) can download/view a file. You can set the expiration date for the links on the 24Files Settings page within the 24Files Manager app. The Copy Public Link feature in itself now allows to:

  1. Define the**Link Type** as View Only or Edit

  2. Who can access the link? Anyone or only people within the organization.

  3. Expiration data of the link. If left empty, the default expiration time is taken from the 24Files Settings.

  4. Password protection.

In order to setup Copy Public Link, you need to verify that your settings in SharePoint are set properly. Navigate to the **SharePoint Admin Center**. Select your SharePoint Site. You end up on the following screen:  
![image-20250912-075258.png](https://docs.24files.eu/__attachments/a_5b414489f0e7943e4719047f4dd09873edbe0f0c5e03af225034485756b70244/image-20250912-075258.png?cb=0ab2648415a8aab25defaa173546b397)

Navigate to the tab Settings. Adapt the File Sharing Settings to Anyone.  
![image-20250912-075544.png](https://docs.24files.eu/__attachments/a_26e2763ed5fe1c67fed6744e9cdadc5efe0c4bbeff321958323669735e9f44ee/image-20250912-075544.png?cb=b067bab946c5b5eeda83fdb28519097f)

* **Preview** opens the file in a separate tab in SharePoint preview mode.

* **Edit** opens the file in a separate tab in SharePoint edit mode.

Note that the user that is configured as Anonymous Access User on the 24Files Settings page cannot log out of a 24Files component configured in Authenticated Access, as this would break the Anonymous Access feature. So in case you need to log out, you first need to configure another user as Anonymous Access User, before logging out in the 24Files component.

#### ++Anonymous:++

It is possible to upload files without having SharePoint credentials, when the 24Files component is configured for Anonymous Access. With Anonymous Access, 24Files users share the Anonymous Access user login that is configured on the 24Files settings page, hence it is a kind of impersonated access.

Users with Anonymous Access will be able to:

* Upload, download and preview the files within a Public folder for the Salesforce records they have access to and for which the 24Files component is visible.

* In addition, you can configure the Page Layout such that users with Anonymous Access are also able to delete, rename and move files.

* Add and edit metadata if these capabilities are enabled in the custom metadata types and in the object configuration.

* Create, delete, move \& rename folders, unless these options have been switched off in the configuration of the component.

Users with Anonymous Access will **NOT**be able to:

* Navigate outside of this Public folder.

* 'Open SharePoint'.

* Open files in SharePoint in preview or edit mode.

* Login into SharePoint via the 24Files component.

Anonymous access is mostly used when you want to allow third parties to upload docs to your SharePoint when those third parties do not have a SharePoint account. In such cases, 24Files can be integrated in **Experience Cloud** (former **Community Cloud**) portal record pages and configured in Anonymous Access mode.  
<https://youtu.be/hCi0Ca2NtQk?si=gBXgwPA2NYL2ufCZ>

In case every user with Salesforce access also has a SharePoint account, it is recommended to always configure 24Files with Authenticated Access, as described above.

### **Enabling \& disabling file and folder actions**

In the 24Files component it is possible to enable/disable a lot of the options described above:  
![image-20260327-084253.png](https://docs.24files.eu/__attachments/a_8656b7e0c1621d98d2756ba7fbdb2beeede9f3f810122fceee4eca8289b5464b/image-20260327-084253.png?cb=b4ca65bb799a84521ec1280b5a707ba6)

### **Enable Auto-create Folder Structure**

When this option is checked and a 24Files component is added to a page layout for a record for which no folder structure exists, 24Files will auto-create a default folder structure for the object of that record. If the box is uncheck no default folder structure is generated.

### **Enable reset tracking**

Enable reset tracking is a menu option in the 24Files component that can be enabled and disabled by checking the checkbox (see last option in previous screenshot).

When used, 24Files will reset the link between the record and the folder structure and when the record page is reloaded, 24Files will re-evaluate what folder structure to apply. This can be handy in case you work with multiple folder structure and you want the end-user to choose which folder structure to apply for a particular record. Note that this is NOT an automated reset tracking functionality, i.e. **the user needs to explicitly trigger the reset tracking functionality on the 24Files component on a record page**.  
![image-20240531-101834.png](https://docs.24files.eu/__attachments/a_1d66fdf10175c5fadbc64aebf656e3ed982d0c57ec23e0d5578d401d01044473/image-20240531-101834.png?cb=0f355a3ddcf9ce7054d469ee3789131d)

### **No license Error Text**

If you have purchased a user-based license for 24Files, you can customize the error text that has to appear when a user has no license assigned.  
The error message will be shown when you have purchased a user-based license and when the user is an internal user. When the user is a community user, (s)he will still see the 24Files component but uploading docs will fail.

---
language: "en"
---
# Grant access to 24Flow Support

## Why would 24Flow Support need access to my Organization?

24Flow Support may ask you to **Grant Login Access** in order to assist you with a question, issue, or request.

This is so that Support can log in to the application using your login to troubleshoot and fix issues stemming from your enquiry.

**No one within 24Flow Support may log in to your Org to resolve issues without this explicit permission and only during the duration for the access.**  
![image.png](https://docs.24files.eu/__attachments/a_b48582715c40ef65de9f7ae73b9fca0d025aee3e5eca7b9bffa30f1f95e86ff0/image.png?cb=d9b617749f20e7e3b2d95c0427654238)

## How to Grant Login Access for Salesforce Lightning

* Log in to Salesforce.

* In the upper right, click your image (avatar) and then click settings.

* In "Quick Find" search field, enter "Grant" and click **Grant Account Login Access**.

* Set the **Access Duration** option for **24Flow Support** .

  Note: Access for technical escalations must be set for a minimum of one month.

* Click Save.

* Once done, provide the ORG ID to the support engineer

## How to retrieve your ORG ID

Click on Gear Icon \| Setup \| Company Settings \| Company information

Search for Salesforce.com Organization Id after performing the above steps.

The Organization Id is on the right hand column on the Company Information page.

---
language: "en"
---
# How does 24Files work

For a first high-level overview, please review this page on the 24Files website: [++How does 24Files work++](https://24files.eu/how-it-works/).

From a technical perspective:

* 24Files is only available for Salesforce Lightning, as it is built as a Lightning component.

* 24Files will create a folder structure in SharePoint at the moment the Lightning component gets loaded on the object record.

* From the moment the folder structure is created in SharePoint, it is possible to manage files \& folders both in SharePoint and in Salesforce (bi-directional sync).

* Upon loading the 24Files component on an object record page for the first time, 24Files first searches for '*Not-default folder structures* ' and if no '*Not-default folder structures* ' are applicable or found, it will search for a '*Default folder structure* ' for that object. If no '*Default folder structure'* exists for that object, it will create a '*Default folder structure*'. More information can be found in the section '24Files Folder Structures'.

---
language: "en"
---
# License assignment

When a user wants to manage SharePoint files \& folders through the 24Files component, a license of 24Files is required unless you have an ORG license.

You can assign licenses to users as follows:

1. From Setup\> Installed Packages, you select 'Manage Licenses' for the 24Files app.

2. On this screen, you will be able to add and remove users. Additionally, other information related to your 24Files license is shown.

![https://24files.eu/wp-content/uploads/2021/01/Salesforce-license-assignm-1024x231.png](https://24files.eu/wp-content/uploads/2021/01/Salesforce-license-assignm-1024x231.png)

---
language: "en"
---
# Limitations

Though 24Files is pretty flexible and scalable there are some limitations:

* You can have**up to 500 files in one folder** in SharePoint. Beyond that, 24Files may generate errors when retrieving the folder content via the SharePoint API and may not function properly. More specfically, 24Files may hit the 6MB Salesforce platform Apex heap size limit for synchronous transactions.

The **500 files per folder** limit applies **per individual folder.** It is **not** a total limit on "all files under the same top-level folder" added up across subfolders.

[Next Page](https://docs.24files.eu/llms-full.txt/1)
