How to
Activity Sync Integration Permission Set

Malcolm Jacobson
Malcolm Jacobson
  • Updated

The Pendula_Activity_Sync_Integration permission set grants the dedicated Salesforce integration user the permissions required to connect a Pendula tenant to Salesforce and run Activity Sync.

Assign this permission set to the Salesforce user whose credentials are used to authenticate Pendula via OAuth 2.0. It should not be assigned to end users.


What the Permission Set Covers

System Permissions

PermissionPurpose
API EnabledRequired to use the Salesforce REST API
Customize ApplicationRequired to create Outbound Message definitions for flows
Manage Custom PermissionsRequired by the Customize Application permission
View Roles and Role HierarchyRequired by View Setup and Configuration
View Setup and ConfigurationRequired to list objects for Record-Triggered Flows
Modify Metadata Through Metadata API FunctionsRequired to read, create and update Flows and Outbound Message definitions
Manage FlowRequired by Enable System Mode Flow Activation
Enable System Mode Flow ActivationRequired as Flows run in system context

Pendula4E Object Permissions

ObjectReadCreateEditDeleteView AllModify All
Message__c
Message_Event__c
Message_Recipient__c

All custom fields on Message__c and Message_Event__c are granted read and edit access. All custom fields on Message_Recipient__c are granted read access.

The three Message__c record types are granted visibility: Inbound_SMS, Outbound_Email, Outbound_SMS.

Recipient Matching — Standard Object Permissions

For Pendula to match inbound and outbound messages to Salesforce records, the integration user requires read access to the following standard objects and fields.

ObjectObject-LevelFields
ContactRead, View All RecordsEmail, MobilePhone
LeadRead, View All RecordsEmail, MobilePhone
UserRead, View All RecordsEmail, MobilePhone

Person Accounts

Person Account field permissions are not included in this permission set.

Person Accounts is an optional Salesforce feature. Because this package is installed across customer orgs that may or may not have Person Accounts enabled, including Account.PersonEmail and Account.PersonMobilePhone field permissions in the packaged permission set would cause installation to fail in orgs where Person Accounts is not enabled.

The package handles this at runtime — Utils.isPersonAccountEnabled() is checked before any Person Account recipient matching is attempted, so no errors occur in orgs without the feature.

If your org uses Person Accounts

You must grant the integration user read access to Account.PersonEmail and Account.PersonMobilePhone separately, outside of the managed package.

The recommended approach is to create a supplemental permission set in your own org:

  1. Go to Setup → Permission Sets → New
  2. Label: Pendula Activity Sync — Person Accounts (or similar)
  3. Under Object Settings → Account, set object access to Read
  4. Enable View All Records
  5. Under field permissions, grant Read Access to:
    • PersonEmail
    • PersonMobilePhone
  6. Save and assign to the Pendula integration user

Verifying whether Person Accounts is enabled

In Setup, search for Person Accounts. If the feature is enabled, you will see a Person Accounts configuration page. Alternatively, check whether the Account object has a PersonEmail field via Object Manager → Account → Fields & Relationships.


Assigning the Permission Set

  1. Go to Setup → Users, find the Pendula integration user
  2. Click Permission Set Assignments → Edit Assignments
  3. Add Pendula Activity Sync Integration
  4. If your org uses Person Accounts, also assign the supplemental permission set described above
  5. Save

Relationship to Other Permission Sets

This permission set is intended solely for the Pendula integration (service) user. It is separate from the permission sets used by human Salesforce users:

Permission SetIntended For
Pendula Activity Sync IntegrationPendula integration/service user (OAuth)
Pendula Console ViewerEnd users who need to view message history
Pendula Console ComposerEnd users who need to send and view messages
Pendula AdministratorAdmins who manage Pendula settings