Skip to main content

Advanced Salesforce Configuration Settings

Written by Reut Barak
Updated this week

This article covers advanced configuration options for the Salto Salesforce adapter. For common fetch and File Cabinet settings, see the Salesforce Configuration Guide.

To open your configuration file, go to Environment Settings β†’ Application Connections β†’ click the three dots next to your application β†’ Edit Configuration File


Data Records

Omitting Specific Fields from Data Records

To prevent specific fields from being fetched as part of a data record, add them to omittedFields. This is useful for fields like prices that should not be synced across environments, or fields containing environment-specific values.

salesforce {
fetch = {
data = {
omittedFields = [
"PricebookEntry.Price",
]
}
}
}

Handling Broken References

When fetching data records, Salto needs to handle cases where records have references to other records that weren't fetched.

To configure how broken references are handled:

salesforce {
fetch = {
data = {
brokenOutgoingReferencesSettings = {
defaultBehavior = "BrokenReference"
perTargetTypeOverrides = {
User = "InternalId"
}
}
}
}
}

The possible behaviors are:

- ExcludeInstance: Don't fetch instances with broken references.

- BrokenReference: Fetch the instance and create placeholder references.

- InternalId: Keep the existing ID value of the referenced instance.

Regenerating Salto IDs on Every Fetch

By default, Salto preserves previously generated IDs for data instances. If required, Salto can regenerate the IDs of data instances on every fetch. This can be helpful when ID fields have changed or records have been re-created. For more information on this option, please reach out to support.


Optimizing Fetch Performance

For large Salesforce orgs, you can tune fetch performance by adjusting various limits.

To set a limit on instances per type:


salesforce {
fetch = {
maxInstancesPerType = 5000
}
}


This will prevent fetching metadata types or custom objects with more instances than the specified number. For no limit set to -1.

By default, Salto fetches flows' latest version:

fetch = {
preferActiveFlowVersions = false
}

When set to true, flows' latest version won't be fetched.


Limits Configuration

Controls safeguards for dependency queries during fetch.

default vales are:

salesforce {
fetch = {
limits = {
maxExtraDependenciesQuerySize = 500 # Reduce if you encounter API/query size errors.
maxExtraDependenciesResponseSize = 1950 # Reduce to avoid large payloads or increase if results are truncated.
}
}
}
Did this answer your question?