Versioning Bots

In this tutorial you will learn how to manage deployments of bots between environments in the ServisBOT Platform.


ServisBOT provides all clients with a staging and production organization.

It is recommended to lock down access to the production environment and only allow access to the deployment and debug teams. Changes can be done and tested in staging, and then deployed using our tooling.

General Versioning process

  • Start by developing and building your bot in your staging organization.
  • At regular intervals, download a version of your bot and check it into a code versioning tool like Github.
  • When ready to go live, use our sb-cli command line tool to import/update the move over production.
  • Validate functionality on production.

Development can begin following one of our getting started tutorials.


Secrets are not exported or migrated between orgs, but since they are referenced by alias, all that is needed is to make sure that secrets exist in both orgs with the same alias.

Inside the BaaS that uses secrets, there will be a Credentials field.

It is assumed that your staging and product environments will require entirely different secrets, all that needs to match is the alias.

Downloading the Bot

  1. Create a folder for your bot project
  2. Initiate some sort of version control for that folder
  3. Log into your staging organization using the ServisBOT CLI and download a definition.
sb-cli bot download BOTNAME

This will include all workers, BaaS, intents, slots, and the default endpoint related to the bot.

Uploading Your BOT

  1. Log into your production organization using the CLI.
  2. Re-upload the bot Definitions
sb-cli bot upload .

the . just denotes current directory.

Test your bot!

You should be all set to test your bot in the platform now.