Skip to content

Latest commit

 

History

History
68 lines (45 loc) · 2.7 KB

README.md

File metadata and controls

68 lines (45 loc) · 2.7 KB

zdsync is a command-line utility for syncing Zendesk environments.

Dependencies

Usage

If you install with python setup.py install or through pip, this should drop a program named zdsync into your PYTHONHOME. Otherwise, you can use PYTHONPATH=. python -m zdsync.cli to get the same effect.

There are two required environment variables,

  • SANDBOX_SUBDOMAIN - The subdomain of your sandbox environment, e.g. mycompany1552085434.
  • PRODUCTION_SUBDOMAIN - The subdomain of your production environment, e.g. mycompany.

There are three ways to authenticate to the Zendesk API and different environment variables are needed depending on your preferred method of authentication.

  • Email & Password
    • SANDBOX_EMAIL - The email that is used as your username when logging into your sandbox environment.
    • SANDBOX_PASSWORD - The password that is used when logging into your sandbox environment.
    • PRODUCTION_EMAIL - The email that is used as your username when logging into your production environment.
    • PRODUCTION_PASSWORD - The password that is used when logging into your production environment.
  • Email & API Token
    • SANDBOX_EMAIL - The email that is used as your username when logging into your sandbox environment.
    • SANDBOX_TOKEN - An API Token for the sandbox environment.
    • PRODUCTION_EMAIL - The email that is used as your username when logging into your production environment.
    • PRODUCTION_TOKEN - An API Token for the production environment.
  • OAuth Token
    • SANDBOX_OAUTH_TOKEN - An oauth token with read/write access to the sandbox environment.
    • PRODUCTION_OAUTH_TOKEN - An oauth token with read only access to the production environment.

There are five supported objects for syncing,

  • --brands
  • --groups
  • --ticket-fields
  • --ticket-forms
  • --macros

It its recommended to sync in this order since there are object dependencies as you progress through the list. If you pass the --all flag it will sync in this order.

Just passing an object flag or --all will print out the status of the environments,

$ zdsync --macros

The following Macros only exist in the sandbox:


The following Macros only exist in production:


The following Macros are different between environments:
Customer not responding       Downgrade and inform          Close and redirect to topics  Take it!

There are 257 other Macros that are the same between environments.

In order to actually execute the sync you must pass the --execute flag,

$ zdsync --macros --execute

License

This tool is licensed under the ISC License, the text of which is available at LICENSE.txt.