After adding a Zendesk application connection to an environment, you can tailor the fetch behavior to match your organization’s setup.
How to edit your configuration
Environment Settings → Application Connections
Click the ••• menu next to your Zendesk connection → Edit Configuration File
For more information about changing settings, read the Salto Configuration File article.
Client settings
Fine‑tune retry logic and rate‑limit caps so large fetches don’t hit Zendesk API throttling.
zendesk {
client = {
retry = {
maxAttempts = 5
retryDelay = 5000 # ms
}
rateLimit = {
total = -1 # ‑1 = unlimited shared budget
get = 20 # per‑GET cap
}
maxRequestsPerMinute = 200
delayPerRequestMS = 100
}
}
Zendesk fetch rules
Zendesk supports criteria filters inside include or exclude, letting you target objects by fields such as name or title. These field‑level filters are adapter‑specific and may not exist in other systems.
zendesk {
fetch = {
exclude = [
{ type = "automation" },
{
type = "organization"
criteria = { name = "name.*" }
}
]
}
}
Guide (Help Center) options
Limit Guide content to selected brands or include draft articles when you need to manage help‑center assets.
zendesk {
fetch = {
guide = {
brands = [
"Brand A",
"Brand B",
".*" # regex supported
]
}
}
enableGuideDrafts = true # default is false
}
You can also fetch and manage Guide themes — for more info, see
Deploying organizations and organization references
When Zendesk elements. such as triggers, contain some organization ID (e.g. in their condition), by default they cannot be deployed to other environments, since Salto uses organization IDs which are different across environments.
To change this, you can do 2 things:
Change organization IDs to names, by enabling the
resolveOrganizationIDs
fetch flagEnable auto-creation of missing organizations, by enabling the
createMissingOrganizations
deploy flag. This will only work if the previousresolveOrganizationIDs
flag is enabled.After enabling this, organizations which do not exist in the target environment will be automatically created when deploying Zendesk elements which contain them
zendesk {
fetch = {
...
includeAuditDetails = true
...
}
deploy = {
...
createMissingOrganizations = true
...
}
}
Deploy‑time fallback for missing users
Provide a fallback user so deployments succeed even if the original user is missing in the target, it can either use the email of the deployer, or a specific email every time you deploy, the below is the dynamic option.
zendesk {
deploy = {
defaultMissingUserFallback = "##DEPLOYER##"
}
}
Optional flags
Each of these flags can set to true or false according to your preference.
This can be done in the "fetch" section of the configuration file, for example:
zendesk {
fetch = {
...
includeAuditDetails = true
...
}
}
Flag | Default | Purpose |
includeAuditDetails | false | Fetch changed by/at information; this may slow down fetches |
handleIdenticalAttachmentConflicts | false | When an article has multiple attachments with the same content & name, enabling this will only fetch one attachment |
extractReferencesFromFreeText | false | Convert IDs in Zendesk links inside text fields to Salto element references |
convertJsonIdsToReferences | false | Convert IDs in JSON fields to Salto element references |
| false | Replace organization IDs with names; this enables cross-environment deployment of elements which contain an organization reference |
resolveUserIDs | true | Replace user IDs with emails |
omitInactive.default | true |