Connecting to Salesforce

Salesforce is the most popular cloud CRM with a focus on sales and support. Skyvia supports importing data to and from Salesforce, exporting Salesforce data to CSV files, replicating Salesforce data to relational databases, and synchronizing Salesforce data with other cloud CRMs and relational databases. Skyvia supports Salesforce Professional or Trial edition or higher. Please note that if you use Salesforce Professional or Trial edition, you need to clear the Use Bulk API check box in the connection settings.

Salesforce-Specific Features and Limitations

Skyvia supports External ID mapping for Salesforce foreign key fields. External ID in Salesforce is a field that has the External ID attribute, meaning that it contains unique record identifiers from a system outside of Salesforce. Skyvia allows you to map object references using the referenced object External ID field values. For more details see Mapping.

When the not equals operator is used in filters for Salesforce, records with an empty (null) value in the compared field are also returned. This behavior is different from the behavior of this operator for database, but this is the normal Salesforce behavior.

If you use Lookup mapping by a Salesforce Id field, you need to provide 18-character ID values for lookup, not 15-character ones. In other Skyvia features, for example, Query, or when inserting data, Skyvia supports both 18-character and 15-character ID values.

If you want to know how Skyvia uses Salesforce API calls, check Salesforce API and API Calls Usage.

Salesforce Connections

To connect to Salesforce, use either Salesforce User Name and Password, or use OAuth authentication. For the first method you need to specify your Salesforce user name, password and security token, and they will be stored in the connection data. The second way allows you to avoid storing your Salesforce user name and password on our website. You just authenticate on the Salesforce website. The OAuth Token is generated and will be used for authentication.

Connection Editor window

You need to specify the following parameters for Salesforce connection:

  • Name — connection name that will be used to identify the connection in the objects list and when selecting a connection for a package.

  • Environment — this parameter specifies Salesforce environment type, which can be Production, Custom, or Sandbox. Check this page to know more about Salesforce environments.

  • Authentication — this parameter determines the authentication method used for connecting to Salesforce — User Name & Password or OAuth 2.0.

  • User — Salesforce user name. It is available only if the User Name & Password authentication is selected.

  • Password — Salesforce password. It is available only if the User Name & Password authentication is selected.

  • Security Token — Salesforce security token (an automatically generated key used to log in to Salesforce from an untrusted network). It is available only if the User Name & Password authentication is selected. To generate the security token, log in to the Salesforce website, click Setup, then select My Personal Information | Reset My Security Token.

  • OAuth Token — token for authentication in Salesforce. Click the Log In with Salesforce button below and log in to Salesforce website in the opened browser window. OAuth token will be generated automatically. It is available only if the OAuth 2.0 authentication is selected.

  • Metadata Cache — this parameter determines how often the cached metadata are updated. By default, Skyvia caches metadata of available objects in cloud sources. When creating a connection, you can configure how often cache is refreshed or, when the connection already exists, you can reset it manually on the Connection Editor page by clicking the Clear Cache button. The following values are available for this setting:

    • Disabled — metadata cache is not created; metadata are queried automatically whenever the connection is opened.
    • One Hour — metadata cache expires one hour after the last refresh; it is refreshed when the connection is opened again.
    • One Day — metadata cache expires one day after the last refresh; it is refreshed when the connection is opened again.
    • One Week — metadata cache expires one week after the last refresh; it is refreshed when the connection is opened again.
    • One Month — metadata cache expires one month after the last refresh; it is refreshed when the connection is opened again.
    • Infinite — cache is never reset automatically. Default value.

If necessary, you may click Advanced Settings and set additional connection parameters:

  • Use Bulk API — this parameter specifies whether to use Salesforce Bulk API to load data to Salesforce. If you clear this check box, Skyvia will use SOAP API to load data to Salesforce instead of Bulk API. SOAP API are slower on large volumes of data.

    By default, Bulk API are disabled for Salesforce Professional or Trial accounts, and user cannot enable them manually. You must either clear the Use Bulk API check box if you connect to Salesforce Professional or Trial account, or ask Salesforce support to enable Bulk API for your account.

  • Command Timeout — this parameter specifies the wait time in seconds before terminating the attempt to execute a command and produce an error. Usually you don’t need to change the default value for this parameter, but in some cases, when command execution takes much time, and this causes timeout errors, you may need to increase this value.

  • Include Deleted — this parameter determines whether to return deleted records from recycled bin. Please note that deleted records will be returned for all the requests to Salesforce via a connection with this check box selected. This includes using this connection as a source connection for import, in lookups, in the Query tool, in Backup, etc. Besides, it will increase API calls use.