Salesforce OAuth2 Account

In this article

Overview

You can use this account type to connect Salesforce Snaps with data sources that use the Salesforce OAuth2 account.

This account supports the Authorization Grant type. Learn more about OAuth Authorization flows.

Prerequisites

  • A Salesforce account.

  • An OAuth-connected App in Salesforce with Redirect URL (also known as call-back domain).

The redirect URL must be set differently:

https://elastic.snaplogic.com/api/1/rest/admin/oauth2callback/salesforce

Limitations

None.

Account Settings

salesforce-oauth2-account-overview.png

Field

Field Type

Description

Field

Field Type

Description

Label*


Default Value: N/A
Example: SalesforceOauth2Account

String

Specify a unique name for the account. Preferably update the name if your project has multiple accounts of the same type.

 

Instance URL*

 

Default Value: N/A
Example: 

  • https://ap15.salesforce.com

  • https://MyDomainName.my.salesforce.com

String/Expression

Specify the instance URL to access the Salesforce portal.

Client ID*


Default Value: N/A
Example: abcd12345xyz567

String

Specify the identification for the client that you obtain from the API Console.

 

Client secret


Default Value: N/A
Example: <Encrypted>

String

Specify the value for user authentication that is obtained from the API Console.

 

Access token*


Default Value: N/A
Example: <Encrypted>

String

Auto-generated after authorization. 

The token that SnapLogic uses to make API requests on behalf of the user associated with the client ID.

 

Access token expiration


Default Value: N/A
Example: -1

Integer

Auto-generated after authorization.

 

Header authenticated


Default Value: Deselected

Checkbox

Select this checkbox if the endpoint uses the bearer header authentication.

 

OAuth2 Endpoint*


Default Value: N/A
Example:

String

Specify the endpoint to authorize the application.

 

OAuth2 Token*

Default Value: N/A
Example:

String

Specify the endpoint to get the access token. 

 

Token endpoint config

Use this field set to define custom properties for the OAuth2 token endpoint.

Token endpoint parameter


Default Value: N/A
Example: redirect_uri

String

Specify the parameter for the token endpoint.

 

Token endpoint parameter value

 

Default Value: N/A
Example: https://elastic.snaplogic.com/api/1/rest/admin/oauth2callback/salesforce

String

Specify the value for the token endpoint parameter.

 

Authorization endpoint config

Use this field set to define custom properties for the OAuth2 authentication endpoint.

Authentication parameter


Default Value: N/A
Example: redirect_uri

String

Specify the parameter for OAuth2 authentication.

 

Authentication parameter value


Default Value: N/A
Example: https://elastic.snaplogic.com/api/1/rest/admin/oauth2callback/salesforce

String

Specify the value for the OAuth2 authentication parameter.

 

Auto-refresh token

Default Value: Deselected 

Checkbox

Select this checkbox to enable auto-refresh of the access token before it expires.

 

Troubleshooting

Error

Reason

Resolution

Error

Reason

Resolution

403::Handshake denied; 401::Request requires authentication

The client is not authorized to access the server because of a domain mismatch or authentication failure.

Configure the Enhanced Domain in the Instance URL property to ensure authentication for successful access to the server.

Access token timeout settings for Salesforce

The expiration timeout (or session timeout) in Salesforce is 14 minutes by default. To change this value:

  1. Navigate to SnapLogic Manager > Asset Search > Snaplexes and click the Snaplex on which you want to execute the pipeline containing the Salesforce Snap. The Update Snaplex popup window appears.

  2. Click Node Properties and add the following entry into the Global properties field set:

    jcc.jvm_options = -DSFDC_SESSION_TIMEOUT_MINUTES=<NUMBER_OF_MINUTES>

Â