Egnyte Help Desk

Egnyte for Salesforce Administration Guide

Overview

The Egnyte for Salesforce integration makes it easy to store, access and share your business files from within the Salesforce web interface. You can add the Egnyte for Salesforce App to standard and custom object page layouts to allow users to upload, share and collaborate on files in Egnyte directly within record pages from the Salesforce interface.

Egnyte for Salesforce Tabs

Egnyte for Salesforce includes several tabs which are described below.

Egnyte Domain Configuration

The Egnyte Domain Configuration tab allows you to set domain-wide options relating to Egnyte for Salesforce. The following settings are shown in the Egnyte Domain Configuration tab:

  • Egnyte Domain. The Egnyte domain which you are integrating Salesforce with. If your Egnyte domain is located at ‘acme.egnyte.com’, this value should be set to ‘acme’. After setting or changing this value, you will be redirected to an Egnyte login page where you will need to login with an admin account.

  • Admin Details Captured? This will say ‘Yes’ if you have already set the Egnyte domain and logged in with an admin account, and ‘No’ otherwise. The Admin details are needed to allow Egnyte for Salesforce to create and update folders which correspond to records in Salesforce.

  • Disable All Triggers. If checked, this will disable all updates to Egnyte. This should be left unchecked under normal circumstances.

  • Show Full Path. If enabled, this will show the full path to the record folder in Egnyte in the breadcrumb of the embedded view.

  • Upload Notes & Attachments to Egnyte. If enabled, this will cause any new notes and attachments that are added to record for which the integration is enabled to the corresponding record folder in Egnyte. Notes and Attachments are uploaded to a folder called 'Notes & Attachments' inside the record folder. Note that this is only supported for Notes & Attachments up to 12 MB in size due to limitations with external callout limits set by Salesforce.

  • Delete Notes & Attachments After Upload. This only applies if the Upload Notes & Attachments to Egnyte setting is enabled. If enabled, this will result in any notes and attachments that are successfully uploaded to Egnyte by the integration to be deleted from Salesforce.

  • Default Permission. Set to 'Owner' by default. This allows admins to define the level of permission the integration should add for a user when they visit a record folder. The integration will only add a user permission entry to the record folder if the user does not already have that level of permission or greater.

    - Owner (Full + Permissions Management) [default] - User will be given Owner permissions to a record folder in Egnyte if they do not have any permissions or only have 'Viewer', 'Editor' or 'Full' permission to the folder when visiting the corresponding record.

    - Full (Read/Write/Delete) - User will be given Full permissions to a record folder in Egnyte if they do not have any permissions or only have 'Viewer' or 'Editor' permission to the folder when visiting the corresponding record.

    - Editor (Read/Write) - User will be given Editor permissions to a record folder in Egnyte if they do not have any permissions or only have 'Viewer' permission to the folder when visiting the corresponding record.

    - Viewer (Read Only) - User will be given Viewer permissions to a record folder in Egnyte if they do not have any permissions to the folder when visiting the corresponding record.

  • Queue Process Mode. This can be set to one of three values depending on Salesforce org limits with queueable and batch apex:

    - Auto [default] - This will use a combination of batch apex and queuable apex methods to process large simultaneous record update calls to the Egnyte API. Batch apex is used for larger numbers of updates while queuable apex is used for small numbers of updates. This is the recommended setting.

    - Batch - This will ensure that Egnyte only uses Batch apex for all updates. Batch apex scales very well to handle large numbers of updates but tends to take longer when processing smaller numbers of records.

    - Queueable - Egnyte for Salesforce will only use queueable apex to send API calls to Egnyte. Using only queueable apex methods tends to have less latency between batches but does not scale as well.

  • Sync Batch Size. The number of actions that will be sent to the Egnyte API in a single call. Maximum recommended value for this is 200. Reducing this value will reduce the likelihood of a timeout on the API call, but will also increase the number of API calls that are sent.

  • Schedule Interval. Time to wait between completion of processing one batch of updates and starting the next batch. Increasing the schedule interval reduces the number of API calls and apex jobs used to make updates in Egnyte but increases the latency by which records are updated in Egnyte.

  • Use Future Methods. If checked, single record actions (eg. renaming or converting a record from the Salesforce UI) are taken immediately by using a future method. Using future methods for such actions will result in near real-time updates to Egnyte folders for single user and single record actions. Egnyte recommends leaving this option checked unless customers want to completely avoid using future methods in their Salesforce org.

The Egnyte Domain Configuration Tab also provides several options:

  • Edit - Allows you to edit the values described above. 

  • Remote Site Setting - A shortcut to add a new remote site setting when installing the integration.
  • Start processing sync queue - Selecting this option will trigger the scheduled job to process the sync queue to start if it's not already running.
  • Bulk Actions - Allows admins to run actions on all existing record for selected object. Each action can only be run for objects with active sync configuration and the actions are described below:

    - Create Template Folders - Creates all record folders of the specified object types and any folder hierarchies if they are defined for the sync configuration.

    - Update Folder Locations - Rearranges the folder structure of record folders of specified object type(s) to follow the expected structure. This is especially useful if changing parenting rules from the Egnyte Sync Configurations as it allows admins to modify the existing folder structure in Egnyte to reflect the new hierarchy.

    - Upload Notes & Attachments - This only applies if the Upload Notes & Attachments to Egnyte option is enabled. If the option is enabled, all existing notes & attachments up to 12 MB in size for records of specified object types are automatically uploaded to Egnyte. After upload the notes and attachments are deleted if the Delete Notes & Attachments After Upload option is enabled.

Egnyte Sync Configurations

The Egnyte Sync Configurations tab allows you to define the standard and custom objects in Salesforce for which you want to create folder mappings in Egnyte. When Egnyte for Salesforce is first installed, Sync configurations are created for the Account, Case, Contact, Lead and Opportunity standard objects. Cases, Contacts and Opportunities are defined to be children of the Account object. This means that the corresponding folders in Egnyte will be sub-folders of of the specific account instead of being in the root ‘Shared/Salesforce.com’ folder.

The columns shown in the default Alll view include:

  • Action. allows you to edit or delete the Egnyte Sync Object.

  • Object API Name. Shows the API name of the standard or custom object associated with the Egnyte Sync Object. Clicking on the API name of a Sync Configuration will allow you to define folder templates for that object.

  • Object Name. Shows the label of the standard or custom object.

  • Parent Object Name. Shows the configured parent for this object.

  • Active. Checkbox to denote whether folder mappings will be created/updated in Egnyte whenever a record of the corresponding object type is created/updated in Salesforce.

  • Create Root Folder. Checkbox to configure whether an Egnyte folder needs to be created for every new record. If this option is disabled, folders are only created in Egnyte when a user first visits the corresponding record.

Creating Sync Configurations for standard and/or custom objects

To create a Sync Configuration for a standard and/or custom object, follow the steps below (note that in prod orgs where it's not possible to create apex triggers and test classes, you will need to follow this guide to create the sync configurations in your sandbox org before deploying to your prod org)

  1. Select the New Sync Configuration option from the Egnyte Sync Configuration All view.



  2. You will be asked to select standard and/or custom objects for which you want to create configurations. Add one or more objects to the list of selected objects and click Continue to configure options for the selected items.

  3. At this point you can define two options for the each of the added objects:

    Parent Object - Allows you to define a hierarchy for the corresponding object folders in Egnyte. If you leave the option as ‘--None--’, a folder for the object will be created in the root ‘/Shared/Salesforce.com’ folder in Egnyte. If you choose a parent, the folders for the records will appear within the parent record folder in Egnyte. The parent object first shows the object type, following by the name of the field that stores the relationship (eg. ‘Account - AccounId’ means that the object is referenced by the AccountId field in the ‘Account’ object).

    Create Root Folder - Allows you to specify when the object folder should be created in Egnyte. If Create Root Folder is checked, the folder is created immediately after the record is created. If it is left unchecked, the folder is only created when a user first visits the record page and only if the canvas app is inserted into that page.

  4. Click Process to create the Egnyte Sync Configurations. Once the configurations are created, you will see the following message:


Creating folder hierarchy templates for standard or custom objects

To create a folder templates for a standard or custom object, follow the steps below:

  1. Click on the API Name for the object from the Egnyte Sync Configurations tab.



  2. Click New Egnyte Folder Template. If you have multiple record types defined for this object, you can choose which record type you want this folder template to apply to. Click Save to create the Folder template.



  3. Now you can add folder paths to folder template. Click New Egnyte Folder Path to add a path to the folder template. For example if you are creating a folder template for all ‘Lead’ records and want a ‘Collateral’ and ‘mNDA’ folder to be created for every lead, you would add two paths - ‘mNDA’ and ‘Collateral’. You may also use the '/' separator to create deeper folder hierarchies (eg. 'Collateral/Whitepapers'). Use the Add Path option to add more folders. Once you’ve finished adding paths, click Save to complete adding paths to the template.

Every time you create a record for which folder templates are configured in Egnyte, the template folders are automatically created within the record’s folder in Egnyte.

My Egnyte

The My Egnyte tab simply embeds Egnyte’s web interface within the Salesforce user interface.

Egnyte for Salesforce Canvas App

The Egnyte for Salesforce Canvas App allows you to add an embedded view of the Egnyte interface to object page layouts.

Add the Egnyte for Salesforce App to Page Layouts

  1. To add Egnyte to any object’s page layout, go the to the Page Layouts configuration for that object in Salesforce (eg. Setup > Build > Customize > Accounts > Page Layouts).



  2. Choose the Page Layout you want to modify and click Edit. You can now drag and add the Egnyte for Salesforce Canvas App into your Page Layout. It is recommended to place the canvas app into a single column section of the page.



  3. The recommended configuration for the Egnyte for Salesforce canvas app is to have a height of at least 500px. We recommend 600px for the height if you are configuring the integration to give users Owner access (configured from the Default Permission section in the Egnyte Domain Configuration tab) so that users can view the full folder permission dialogue. The recommended width is 100% and the Show scrollbars option should be enabled.



  4. Once you have configured the Egnyte for Salesforce canvas app, click Save to save the page layout and open a record. You will see an embedded version of the Egnyte UI, in a widget in the record page, where you can upload and share files.



Linking Salesforce.com accounts with Egnyte accounts

Users seeing the canvas app for the first time will also need have their Salesforce accounts linked to their Egnyte accounts. The Egnyte for Salesforce Canvas app will attempt to make a user mapping by following the steps below:

  1. If the user’s verified Salesforce.com email address matches a verified email address in Egnyte, the user mapping is automatically created by linking the corresponding Salesforce.com and Egnyte accounts.

  2. If no verified email is found, but the user happens to have an active Egnyte session on the linked domain, the Egnyte for Salesforce canvas app will automatically pick up this session information to create the mapping without requiring the user to sign in.

  3. If there is no email match and no active session for the user, the user will be presented with a sign-in window in the embedded view where they can specify which Egnyte account they want to link to their Salesforce.com account.

Once the mapping is successfully created, users are automatically taken to the correct record folder in Egnyte. Users who can view the canvas app within a record’s page layout will automatically receive ‘Owner’ access to the record folder in Egnyte so they can invite people who do not have Salesforce accounts to collaborate on the record content through Egnyte.

Removing user mappings between Egnyte and Salesforce

Users can ‘clear’ the user mapping between Salesforce.com and Egnyte from their My Profile page in Egnyte:

  1. Navigate to the My Profile in Egnyte.



  2. Choose the option to remove the Salesforce.com username field in the My Preferences tab and click Save to remove the user mapping information.


Admins may also clear mappings on behalf of users through one of two methods:

  1. By navigating to the user details page, clicking the profile tab and choosing the option to 'remove' the mapping next to the Salesforce.com username field (if there is no mapping, the field will not be visible).

  2. Admins may also clear many mappings at once by using the Bulk Import option in the Users and Group Management section in Egnyte's settings. To do this, use the 'SpecialAction' column in the bulk import CSV (an example can be downloaded from the window that opens when choosing the bulk import option).

Using Egnyte for Salesforce with the Lightning Experience

Egnyte for Salesforce is supported within the Lightning experience, however you will need to invoke the Egnyte canvas app from a custom Visualforce page to make it visible on any page layouts. To enable Egnyte for Salesforce in the lightning experience, you will need to run through the steps below for each type of standard or custom object that you want to use with Egnyte (in the example below we demonstrate this with the Account object):

  1. Navigate to Salesforce setup, then Build > Develop > Visualforce Pages:


  2. Choose the option to create a new Visualforce Page:


  3. For the label and name of the component use a description with no spaces so you can identify that it's an Egnyte component and also the type of object you will use for the component (for example, 'EgnyteAccounts'). Finally select the checkbox labeled "Available for Salesforce mobile apps and Lightning Pages".

  4. Populate the markup section with the markup below. Replace the two parts in red with the API name for the object you are creating the VisualForce page for (for standard objects, this is usually just the standard object name and for custom objects this defaults to the custom object name followed by '_c'). Replace the part in blue with the height you will use when adding the VisualForce page to your page layout.
    <apex:page standardController="Account"><apex:canvasApp namespacePrefix="efs" applicationName="Egnyte for Salesforce" parameters="{'id':'{!Account.id}'}" scrolling="auto" width="100%" height="500px"/></apex:page>

  5. Save the VisualForce page.


  6. The final step is to add the newly created Visualforce page to your object page layout. To do this, edit the page layout for the object and drag the Visualforce page into the section where you want Egnyte's embedded interface to be visible.


Egnyte Community

Egnyte Community

Want to connect with other Egnyte users and our Egnyte team? Share ideas and ask questions in our Community.

Help Improve Egnyte

Every day we work hard to make Egnyte better with feedback from users to improve our products. Sign up to participate in Egnyte User Studies.