Skip to main content

Salesforce Connection

The Salesforce connection type enables automations to interact with Salesforce orgs -- querying records, creating objects, triggering flows, and more. It is used by the plugin-salesforce plugin, which delegates to the salesforce-connector.

Connection Type

PropertyValue
Type enumSALESFORCE
Type IDsalesforce
CategoryEnterprise Apps
Entity classSalesForceConnectionDetails

Friendly Example

What you enterExample
Connection nameSalesforce - Customer Support
Used forReading accounts, contacts, cases, and update results
Main details to collectSalesforce URL, username, password or token, client ID, and client secret
Best person to provide itSalesforce administrator

After it is saved, workflow builders select Salesforce - Customer Support in a node instead of entering these details again.

Mandatory Fields

FieldTypeRequiredDescription
loginUrlStringYesSalesforce login endpoint. Use https://login.salesforce.com for production orgs or https://test.salesforce.com for sandboxes.
clientIdStringYesConsumer Key from the Salesforce Connected App.
clientSecretStringYesConsumer Secret from the Salesforce Connected App. Encrypted at rest.
userNameStringYesSalesforce username of the integration user (e.g., api-user@contoso.com).
passwordStringYesPassword for the integration user. If security tokens are enforced, append the security token to the password (e.g., MyPassword + SecurityToken). Encrypted at rest.

Advanced Fields

FieldTypeRequiredDescription
securityTokenStringNoSalesforce security token. Required when connecting from an IP address not whitelisted in Salesforce. Can alternatively be appended to the password.
apiVersionStringNoSalesforce API version to use (e.g., v59.0). Defaults to a recent stable version.

Connected App Setup

To allow the platform to authenticate with Salesforce, you need a Connected App:

  1. Log in to Salesforce as an administrator.

  2. Navigate to Setup > Apps > App Manager > New Connected App.

  3. Fill in the basic information:

    • Connected App Name: Qinfinite Automation
    • API Name: Qinfinite_Automation
    • Contact Email: your admin email
  4. Enable OAuth Settings:

    • Check Enable OAuth Settings.
    • Callback URL: https://login.salesforce.com/services/oauth2/callback (not used for the password flow, but required).
    • Selected OAuth Scopes -- add at minimum:
      • Full access (full)
      • Or more restrictively: Access and manage your data (api), Perform requests on your behalf at any time (refresh_token, offline_access)
  5. Save and wait for the Connected App to be activated (can take up to 10 minutes).

  6. Copy the Consumer Key (this is the clientId) and Consumer Secret (this is the clientSecret).

  7. Create a dedicated integration user with the appropriate Salesforce profile and permissions. Avoid using personal administrator accounts.

  8. IP Relaxation (recommended for automation):

    • Go to the Connected App settings > Manage > Edit Policies.
    • Under IP Relaxation, select Relax IP restrictions to avoid security token requirements from dynamic IPs.

Authentication Flow

The connector uses the OAuth 2.0 Username-Password flow:

  1. POST to \{loginUrl\}/services/oauth2/token with grant_type=password, client_id, client_secret, username, and password.
  2. Salesforce returns an access_token and instance_url.
  3. The connector uses the access_token for subsequent REST API calls to the instance_url.

Troubleshooting

SymptomLikely Cause
invalid_grant: authentication failureWrong username/password, or security token not appended to password when required
invalid_client_idThe clientId (Consumer Key) is incorrect or the Connected App has not been activated yet
invalid_client: Invalid client credentialsThe clientSecret (Consumer Secret) is incorrect
INVALID_SESSION_ID on API callsThe access token has expired. The connector should re-authenticate automatically.
REQUEST_LIMIT_EXCEEDEDThe org has hit its daily API call limit. Check usage in Setup > Company Information.