Skip to navigation

Supports:

  • ✅ Models
  • ✅ Model sync destination
  • ✅ Bulk sync source
  • ✅ Connection Proxy

Connection

Configuration

NameTypeDescriptionRequired
connect_modestringAuthentication method

Accepted values: browser, clientcredentials ↓, code, api
required
domainstringDomain

The Salesforce instance’s login domain, e.g. acmecorp.my.salesforce.com
required
enable_multicurrency_lookupbooleanEnable multicurrency source field support

If incremental mode for bulk-syncing from Salesforce formula fields is enabled, setting this to true extends support to accurate currency conversions.
optional
enable_toolingbooleanEnable support for Tooling API

If true, expose objects from the Salesforce Tooling API in the Polytomic bulk sync source object list.
optional
enforce_api_limitsbooleanEnforce API limits

If true, Polytomic will restrict itself to a fixed daily cap of Salesforce API calls enforced by the number in daily_api_calls. ↓
optional
oauth_refresh_tokenstringoptional
Read-only propertyTypeDescription
instance_url_overridestringInstance URL override

This URL will be used for API requests instead of the one provided by Salesforce during OAuth.
usernamestringSalesforce user

connect_mode

When connect_mode is clientcredentials:

NameTypeDescriptionRequired
client_idstringClient IDrequired
client_secretstringClient secretrequired
{
"name": "Salesforce connection",
"type": "salesforce",
"configuration": {
"client_id": "a45gadsfdsaf47byor2ugfbhsgllpf12gf56gfds",
"client_secret": "ay8d5hdepz62px8lqeoakuea2ccl4rxm13i6tbyorxhu1i20kc8ruvksmzxq",
"connect_mode": "clientcredentials",
"domain": "acmecorp.my.salesforce.com",
"enable_multicurrency_lookup": false,
"enable_tooling": false,
"enforce_api_limits": false,
"oauth_refresh_token": "dasfdasz62px8lqeoakuea2ccl4rxm13i6tbyorxhu1i20kc8ruvksmzxq"
}
}

enforce_api_limits

When enforce_api_limits is true:

NameTypeDescriptionRequired
daily_api_callsintegerDaily call limit

The daily Salesforce API call cap that Polytomic should adhere to.
required
{
"name": "Salesforce connection",
"type": "salesforce",
"configuration": {
"connect_mode": "browser",
"daily_api_calls": 0,
"domain": "acmecorp.my.salesforce.com",
"enable_multicurrency_lookup": false,
"enable_tooling": false,
"enforce_api_limits": true,
"oauth_refresh_token": "dasfdasz62px8lqeoakuea2ccl4rxm13i6tbyorxhu1i20kc8ruvksmzxq"
}
}

Example

{
"name": "Salesforce connection",
"type": "salesforce",
"configuration": {
"connect_mode": "browser",
"domain": "acmecorp.my.salesforce.com",
"enable_multicurrency_lookup": false,
"enable_tooling": false,
"enforce_api_limits": false,
"oauth_refresh_token": "dasfdasz62px8lqeoakuea2ccl4rxm13i6tbyorxhu1i20kc8ruvksmzxq"
}
}

Model Sync

Source

Configuration

NameTypeDescriptionRequired
include_deletedbooleanInclude deleted recordsoptional
querystringoptional
tablestringObjectoptional

Example

{
...
"configuration": {
"include_deleted": false,
"query": "select Id from Contact",
"table": "Contact"
}
}

Target

Salesforce connections may be used as the destination in a model sync. Some destinations support additional configuration.

Lead or Contact

Applies to:

  • multi:leadOrContact
Configuration
NameTypeDescriptionRequired
bulk_batch_sizeintegerBulk batch sizeoptional
concurrency_modestringConcurrency mode

Accepted values: Parallel, Serial
optional
create_records_asstringCreate new records as

Accepted values: Contact, Lead, ContactIfAccountId
required
ingestion_apistringIngestion API

Accepted values: automatic, bulk, rest
required
rest_batch_sizeintegerREST batch sizeoptional
Example
{
...
"target": {
"configuration": {
"bulk_batch_size": 100,
"concurrency_mode": "Parallel",
"create_records_as": "Contact",
"ingestion_api": "bulk",
"rest_batch_size": 200
}
}
}

Leads

Applies to:

  • Lead
Configuration
NameTypeDescriptionRequired
bulk_batch_sizeintegerBulk batch sizeoptional
concurrency_modestringConcurrency mode

Accepted values: Parallel, Serial
optional
ingestion_apistringIngestion API

Accepted values: automatic, bulk, rest
required
insert_null_valuesbooleanCopy null valuesoptional
invalid_relationshipsstringRecords with invalid relationship IDs

Accepted values: error, omit_values, omit_records
required
only_sync_differentbooleanOnly update if different from Salesforceoptional
rest_batch_sizeintegerREST batch sizeoptional
skip_convertedbooleanIgnore converted and duplicate leadsoptional
Example
{
...
"target": {
"configuration": {
"bulk_batch_size": 100,
"concurrency_mode": "Parallel",
"ingestion_api": "bulk",
"insert_null_values": false,
"invalid_relationships": "error",
"only_sync_different": false,
"rest_batch_size": 200,
"skip_converted": false
}
}
}

Other targets

Configuration
NameTypeDescriptionRequired
bulk_batch_sizeintegerBulk batch sizeoptional
concurrency_modestringConcurrency mode

Accepted values: Parallel, Serial
optional
ingestion_apistringIngestion API

Accepted values: automatic, bulk, rest
required
insert_null_valuesbooleanCopy null valuesoptional
invalid_relationshipsstringRecords with invalid relationship IDs

Accepted values: error, omit_values, omit_records
required
only_sync_differentbooleanOnly update if different from Salesforceoptional
rest_batch_sizeintegerREST batch sizeoptional
sort_batches_bystringSort batches byrequired
Example
{
...
"target": {
"configuration": {
"bulk_batch_size": 100,
"concurrency_mode": "Parallel",
"ingestion_api": "bulk",
"insert_null_values": false,
"invalid_relationships": "error",
"only_sync_different": false,
"rest_batch_size": 200,
"sort_batches_by": "AccountId"
}
}
}

Bulk Sync

Source

Salesforce connections may be used as a bulk sync source. No additional configuration options are required.