Salesforce Notifier

Overview

With the Salesforce Notifier Block, you can configure your flow to send extracted information to Salesforce.

The Salesforce Notifier Block can use extracted information to look up, and then update any number of fields on a Salesforce object.

The Salesforce Notifier Block is available in both SaaS and on-premise versions of the Hyperscience application.

Sample use cases

  • Storing extracted information from other sources on a Salesforce object.

  • After using the Salesforce Listener Block to extract information from a file stored on a Salesforce object, update the field data of this object in Salesforce.

  • Update customer data in Salesforce based on forms from the customer.

Block Settings Table

Name

Required?

Description

Routing Filter

No

To learn more about this setting, see Universal Integration Block Settings.

Associated Username

Yes

The username associated with the Salesforce Connected App

Consumer Key

Yes

The Consumer Key from the Salesforce Connected App

Private Key

Yes

The key generated during the creation of the Salesforce Connected App

Sandbox Environment

Yes

Indicates whether the connected Salesforce instance is a sandbox environment

Object API Name

Yes

API name of the object in Salesforce to look up and update

Create New Record on Lookup Failure

Yes

If enabled, Hyperscience creates a new record if the lookup fails to find a record with the given lookup parameters. If disabled, the lookup fails if it doesn’t find a record with the given lookup parameters.

Lookup Field Mapping

Yes

A set of key-value pairs indicating which Salesforce fields should be queried in the lookup and the extracted data that should be queried in those fields (e.g.,  “DOCUMENT_FIELD_NAME”: “OBJECT_FIELD_API_NAME”)

Document Field Mappings

Yes

A set of key-value pairs indicating the Salesforce fields Hyperscience should update and the extracted data they should be updated with (e.g.,  “DOCUMENT_FIELD_NAME”: “OBJECT_FIELD_API_NAME”)

Overwrite Existing Field Data?

Yes

If enabled and the selected field contains data, Hyperscience overwrites that data. If disabled and the selected field contains data, Hyperscience does not overwrite the existing data, and the operation fails.

Setting up Salesforce Notifier

Setup within Salesforce

Install and set up Hyperscience Package

  1. Install the Hyperscience package in the desired Salesforce org.

    1. Go to the Salesforce AppExchange’s Hyperscience Platform listing.

    2. Click the Get It Now button.

    3. Enter your details and click the Contact Me button.

      1. A Hyperscience representative will contact you and provide you with the Hyperscience package.

    4. Once you have the Hyperscience package, install it in the desired Salesforce org.

  2. Add Hyperscience Permission Set to users that should have access to the Hyperscience application.

    1. Go to the Setup page.

    2. Search for “Permission Sets” and click the Permission Sets link.

    3. Go to Hyperscience Permission Set.

    4. Click Manage Assignments.

    5. Click Add Assignments.

    6. Select the users you want to give permissions to Hyperscience application by checking the checkbox for each user.

    7. Click Assign and then Done.

  3. Make sure that Hyperscience__Supervision_Task__c is added to Change Data Capture Events.

    1. Go to the Setup page.

    2. Search for “Change Data Capture” and click the Change Data Capture link.

    3. Search for “Hyperscience__Supervision_Task__c” on the Available Entities window.

    4. Select Hyperscience__Supervision_Task__c and click the arrow pointing to the right. Ensure that Hyperscience__Supervision_Task__c is added to the Selected Entities window.

  4. Enable the Query All Files permission.

    1. Go to the Setup page.

    2. Search for “Permission Sets” and click the Permission Sets link.

    3. Click the Hyperscience Permission Set link.

    4. Click App Permissions.

    5. Enable Query All Files.

Add the Hyperscience URL

  1. Search your apps for “Hyperscience”. Click on the Hyperscience app.

  2. Click on the Core Setup tab.

  3. To edit the Hyperscience URL, click Edit.

  4. Enter the full URL for your Hyperscience app.

  5. Click Save.

Configure Authentication

Generate private key

  1. Create the private key (salesforce.key) and certificate (salesforce.crt) by running the following command:

    openssl req -x509 -sha256 -nodes -days 36500 -newkey rsa:2048 -keyout salesforce.key -out salesforce.crt
  2. Copy the private key to your clipboard.

    cat [private.key file] | sed 's/$/\\n/' | tr -d '\n' | pbcopy
  3. Paste the private key into a text file and save it. Later, you will need to paste it into your Salesforce Notifier Block within Hyperscience.

Create your JWT Connected App

  1. Log in to Salesforce and go to Setup.

  2. In the side nav, go to Apps > App Manager and click New Connected App.

  3. Enter the information in the Basic Information section.

  4. In API (Enable OAuth Settings), complete the following steps:

    1. Disable the Enable OAuth Settings option.

    2. In Callback URL, enter http://localhost.

    3. Disable the Use digital signatures option and upload the salesforce.crt file that was generated when you created your private key.

    4. In Selected OAuth Scopes, add the following permissions:

      1. Manage user data via APIs (api)

      2. Perform requests at any time (refresh_token, offline_access)

    5. Click Save. The page should look similar to the following screenshot:
      SalesforceNotifier.png

    6. On the resulting page, click Manage.

      1. Click Edit Policies.

      2. In the OAuth policies section, change Permitted Users to Admin approved users are pre-authorized.

      3. Click Save.

    7. On the app page, in the Profiles section, click Manage Profiles.

      1. On the Application Profile Assignment page, assign the user profiles that will access this app. This is the service account user, which will be configured in the Salesforce Listener and Notifier Blocks, and its details will be logged for any object updates.

Retrieve your consumer_key from the Connected App

  1. Within Salesforce, click App Manager in the Apps navigation sidebar.

  2. Find the connected app created in the previous section.

  3. On the app’s row, click on the drop-down menu and select View.

  4. Copy the Consumer Key from the API (Enable OAuth Settings) section. You’ll need the Consumer Key when configuring the Salesforce Listener Block.

Configure the Salesforce Notifier Block

  1. Log in to your Hyperscience instance.

  2. Go to Flows, and click on the name of the flow you want to add the Salesforce Notifier Block to.

  3. Scroll to the end of the flow and click Outputs.

  4. Click Add and select Salesforce Notifier Output Block.

  5. Within the Notifier, configure the following parameters:

    • email_address: The email address of the service account to associate with the Block.

    • private_key: The key created during the process of connected app creation.

    • sandbox_environment: This boolean determines if the Salesforce instance is a sandbox or not.

    • consumer_key: The key generated by the jwt connected app.