As we know most of the work has been shifted to Lightning Experience. The questions arise in the mind of users when Salesforce Classic provides you different ways like Content, Attachments, Files, Content, and Documents. The answer is simple just because Lightning Experience made a single system for easier management by unifying user’s files under one system.
In Lightning Experience, it’s very easy to upload Salesforce Files.
Let’s take an example for easy understanding of Salesforce Files objects. Suppose we want to fetch Contact related Files. Let’s have a look at objects related to Salesforce Files and the relation between them.
Don't forget to check out: Files, Attachments And Notes Salesforce Lightning Components | Force.com
Content Document Link
As the name suggests, Content Document Link is the link between Salesforce File and where it is shared.
From the example, as we are discussing above, we use it to fetch ContentDocumentId and title of the file.
Content Version gives specific versions of the document. The number of versions that can be maximally published are 2,00,000 in a 24 hours period. From my example, it is required for a Content Distribution object as there is one mandatory field ContentVersionId.
Content Document represents the document that has been uploaded to the library in Salesforce Files. The maximum number of documents that can be published is 30,000,000. Contact Manager, Group, Professional, Enterprise, Unlimited, and Performance Edition customers can publish a maximum of 200,000 new versions per 24-hour period. Developer Edition and trial users can publish a maximum of 2,500 new versions per 24-hour period.
As the name implies, it represents the history of a document. A user can query all versions of a document from their personal library and any version that is part of or shared with a library where they are a member, regardless of library permissions.
Content Folder is a folder in a content library for adding files. All users with a content feature license can modify folders in their personal library.
ContentWorkspace represents a content library. This object does not apply to personal libraries. The Access Libraries user permission allows orgs to make libraries available to users without requiring that they have the legacy Salesforce CRM Content license. This permission is available for profiles and permission sets on most standard user licenses and is not available for High Volume Customer Portal, Customer Community, or Chatter Free licenses.
ContentWorkspaceDoc is a link between a Document and a public library in Salesforce CRM content. Customer and Partner Portal users must have the “View Content in Portal” permission in order to query and obtain the content in libraries where they have access.
Check out another amazing blog by Deepak here: Unit Testing on Salesforce Lightning Platform | Quick Guide
ContentWorkspaceMember is a member of the content library. Customer and Partner Portal users must have the “View Content in Portal” permission in order to query and obtain the content in libraries where they have access.
ContentWorkspacePermission represents library permission. Library permission is a group of privileges assigned to each content library member. It determines which tasks a member can perform in a particular library.