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
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.
Translating Macros
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!
Installing Salto
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:
mkdir ~/salto cd ~/salto 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 cd -
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:
How to export Zendesk macros and bulk import them with Salto’s free app
In this article, Pablo, Certified Zendesk Support Admin, explains how to export Zendesk Macros and make bulk changes with the free and open-source Salto CLI"