Nexus-SF Data Exchange Handshake Procedure

Step-by-Step Guide for Configuring the Handshake Between Salesforce (SF) and Engagement Hub for Data Integration.

Step 1: Create Connected App for BriefingEdge Integration


  1. Open Settings - Custom Code - Remote Access

  1. Create a new connected App for the Nexus Package.
    1. Connected Apps - New - Create a Connected App

  1. Go into the “Edit” view for newly created connected app.

  1. Check the box for “Enable OAuth Settings” (1)
  2. Add the following Callback URLs (CRMInstanceID (SFDCInstance) = 1) (2)
  3. Add the following OAuth Scopes into the “Selected OAuth Scopes” box (3)
    • Manage User Data via APIs (api)
    • Manage User Data Via Web Browsers (web)
    • Perform requests on behalf at any time (refresh_token, offline_access)
  4. Uncheck "Require Proof Key for Code Exchange (PKCE)"
  5. Check:
    • Enable Client Credential Flow

  6. Save the changes to the connected app

Note that you cannot skip steps 1 and 2 and just go to "Manage Connected Apps" to get this information, although it has that title in the header;  you still have to go through remote Access, because otherwise the key and secret don't show up. 


Step 2: Manage Connected App OAuth Policies


  1. Open Setup - Connected Apps - Manage Connected Apps
  2. Click “Edit” next to the BriefingEdge connected app that you create
  3. Set the OAuth Policies - Permitted Users to “All users may self-authorize”
  4. Set OAuth Policies - Refresh Token Policy to "Refresh Token is Valid until Revoked"

To set permissions at a more granular level you can follow instructions in This Article  


Step 3: Create Integrated User


Step-by-step guide for configuring a Salesforce user with minimum access to allow integration. This configuration is designed to provide a secure, role-specific user profile that has the necessary permissions to ensure smooth integration without the need for full admin access. Instructions => here


Step 4: Set the Integration User


  1. Open Setup - App Manager - Select the connected app - Manage - Edit Policies
  2. Client Credential Flow
    1. Run As: Integration User (Select user created in Step 3)


Step 5: Enable Allow Authorization Code and Credentials Flows


  1. Open Setup - OAuth and OpenID Connect Settings
  2. Set Allow Authorization Code and Credentials Flows to “On”


Step 6: Get the information needed for the integration


Consumer Key & Consumer Secret

Open Settings - Remote Access - Manage Connected Apps - Click on the Manage Consumer Details - Verify your Identity - Copy the Consumer Key and Secret

Organization ID

Open Settings - Company Settings - Company Information - Copy the SF Organization ID


Step 7: Verify your credentials work

In Postman or similar tool, attempt to send a request using the following parameters.

Client Credentials Flow:

  1. Request type: POST

    URL : <org custom domain here>/services/oauth2/token

    Request body

    • grant_type: client_credentials
    • client_id(consumer key): (check step 6)
    • client_secret: (check step 6)

Step 8: Send info to the Nexus Team

Send the following information to the Nexus Team:

  1. Consumer Key
  2. Consumer Secret
  3. Org ID
  4. Org Custom Domain (e.g. nexus.salesforce.com)

Step 8: Almost Done!

The Salesforce team will be informed once the Nexus team completes the integration.