If your app is still private, read the deploy lifecycle doc on how to make it public! This doc is for deploying updated code to an already public or Invite-Only app.
Once your app is live (Public or Invite-Only), you'll probably want to make changes to it and add features or fix bugs. While you cannot make changes to a live app, you can clone an app and then make changes to the clone.
The first step is to click on the Deployment tab, and click the button Make a Copy of Your App by Cloning:
In the new/cloned app, make your changes. Be sure to leave this app in the Private status!
When you've finished testing your changes, and are ready to update the existing/public app, go into the new/cloned app, click on the Deployment tab, and click the button to Deploy and Replace an Existing App.
Once you have deployed your new/cloned app to replace an existing app, all zaps will be updated to use this new app. Read on for important notes on handling breaking app changes.
A screen will ask you which app you want to replace. Select the existing/live app:
The system will run an audit and show you the results:
In the screenshot you can see an error for New Item, with the error of Polling triggers should always have sample data. This simply means you need to provide a sample result for a polling trigger.
Usually you can just make some changes and ensure there is a symmetry between old and new versions of the app. If there is a breaking changes that resolves a bug, please contact us and we'll perform a manual deployment.
There are a number of situations where making changes in your app may cause the existing Live Zaps to stop working. If any of those situations are detected, the system will not allow you to complete the deploy/replace process. Please visit this page of Deploy Errors and try a workaround.
If your app is Invite-Only, your cloned app's OAuth redirect URI will become active upon migration (it will contain a new ID #), and the old OAuth redirect URI will no longer function. Please plan accordingly. Contact us for a solution to this problem if it is difficult to manage - we can set a permanent redirect URI for your app.
The best approach is to copy the Triggers/Actions/Searches you want to update. Mark the originals hidden and append "(Legacy)" to their labels. On the copies, make the needed updates (it also helps to update their keys to something instructive, like append "_v2" to the original key). Once you deploy, new Zaps will only have the copies available and old Zaps will continue to work unaffected.
If all goes well and you have no warnings when trying to deploy, a deploy process will start asynchronously and you can come back to the Deployment tab to check on its progress.