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.
}
}
}