My name is Pablo and I’m a Certified Zendesk Support Admin.
In this article, I'll show you how to export Zendesk macros, make changes, and re-upload them in just a few steps with our 100% free and open-source command-line app: Salto
: If you are not comfortable with using a command-line app, the same steps shown here can be followed using our user-friendly SaaS offering
. See it in action here: Zendesk | Making bulk changes in your configuration
Get started with Salto
Easily export, edit, and upload your Zendesk macrosTry Salto free ≥
Why export Zendesk macros?
There are a few reasons you may want to export your Zendesk macros, such as.
You may want to keep a backup of your Zendesk macros locally or upload them to a GitHub repository.
I'll show you how to do this, but here's a teaser of what the backup will look like:
Isn't that awesome? :)
Bulk Importing Macros
You may want to make bulk changes across your macros and re-upload them. For example, this may be necessary if you are changing some terminology across your entire Zendesk instance. That'll be the scenario of this article.
Perhaps you want to translate the text in your macros, so you want to prepare a file to send to a translation agency and then upload the translated macros.
Other business rules
While these use cases are primarily about macros, they also apply to business rules like triggers, automations, and even ticket fields.
Salto can download and re-upload the vast majority of Zendesk configuration types.
With all that out of the way, let's get to it!
The first step is to install the Salto CLI on your computer. The easiest way is by downloading its latest binary from the GitHub Releases page
per your operating system type (MacOS / Linux / Windows).
Once you've downloaded the binary, it is advised to copy it somewhere safe and add it to your path.
For example, on Mac (using zsh) one could do:
curl -Ls https://github.com/salto-io/salto/releases/latest/download/salto-macos.tar.gz | tar -xzf -
echo "export PATH=$PATH:~/salto" >> ~/.zshrc
chmod +x ~/salto/salto
Exporting your Zendesk configuration
Now, create a new folder called Zendesk and go to it.
Once there, use the salto init command to create a new salto directory.
Then, use salto service add zendesk_support to log in to your Zendesk instance. Provide your username, password, and Zendesk subdomain.
Once logged in, use the salto fetch command to export all your Zendesk configuration.
Now you will find a folder called zendesk_support. You can now open this folder in your favorite code editor (in my case, VSCode), and just like that, you have all your Zendesk configuration downloaded to your computer!
Notice that not only macros were exported. There’s everything from automations, SLAs, ticket fields, etc.
Reviewing your Zendesk configuration
Now you can browse through your Zendesk configuration. For example, this is what one of my macros looks like:
If you are wondering, this is not JSON but instead NaCl
(Not another configuration language), which is the language Salto uses to describe your Zendesk configuration.
Making bulk changes across your Zendesk macros
Now, let's say that I want to change the term "success agent" to "support engineer" across all my macros and any other configuration that uses that term. I'm using VSCode's Find and Replace functionality to easily change all instances of "success agent".
Now my macros and other configuration represent the desired state of my Zendesk instance.
Once I've made the change, all I have to do is use the salto deploy command. Salto will determine what has changed and automatically include those files in the deployment.
Once you confirm the desired changes, Salto will use the Zendesk API to deploy all the changes in a few seconds.
And that's it! Log in to your Zendesk instance and you’ll see all your changes were made.
Backing up your Zendesk configuration
Now let's see how we can back up this directory in a GitHub repository. All you have to do is use the following git commands to commit the entire folder:
git add .
git commit -m
Then, you can follow the instructions on GitHub on how to upload this directory to a GitHub repository. In my case, I used the following commands:
Discover a better way to manage your Zendesk instance Try it free ≥
Zendesk Administration Reimagined
Now you see how powerful it is to have your Zendesk configuration in Salto's NaCl format.
At Salto, we are reimagining how Zendesk Admins manage their Zendesk instance
. We have a free
SaaS version of this product that comes with some really awesome capabilities for Zendesk admins, such as:Being able to see where ticket fields are being used
Easily finding broken triggers
And a lot more!
That's all I have for today. I hope you found this useful!