docs/community/self-hosting-novu/v0-to-v2-migration.mdx
This guide will help you migrate your existing Novu self-hosted v0 instance to v2. Due to significant architectural changes between versions, some manual steps are required, particularly for workflow migration.
The new Dashboard brings a cleaner, and more intuitive UI. We have reconsidered some core principles, let's review the most important ones:
The Subscribers page has been redesigned to provide a more comprehensive view of your subscribers, including preferences management and credentials.
Brand new topics page, to view and manage your topics in Novu.
This area of the product was completely redesigned, and old v0 workflows will not be visible in the new UI. The new Editor includes a block based editor for E-mail, with the ability to provide custom HTML blocks if needed.
Layout management is available on the new Dashboard. Checkout the layouts documentation for more details.
Workflow Variants will not be available in the v2 UI, if you rely on them, you can continue to use the old UI for those workflows.
The changes mechanism was removed, in favor of a more simple "Sync" mechanism, that enables you to sync workflow state between environments, Production environment can also be modified directly from the UI, however we still recommend using the Dev environment and syncing the changes to Production.
You can still login to your old Novu Users and their passwords with the new Dashboard, However we are not allowing team management flows with the new version.
In v2 we have moved our internal cloud implementation to use Clerk as our authentication and authorization provider, and we are not able to maintain 2 separate user management systems. We recommend creating a reusable user credentials and share them between your team.
The v2 API introduces several new endpoints and improvements. Here are the key changes:
/v2/subscribers)
GET / - Search subscribers with advanced filteringGET /:subscriberId - Retrieve specific subscriberPOST / - Create new subscriberPATCH /:subscriberId - Update subscriber detailsDELETE /:subscriberId - Remove subscriberGET /:subscriberId/preferences - Get subscriber preferencesPATCH /:subscriberId/preferences - Update preferences/v2/topics)/v2/workflows)Unfortunately, we do not have an automated way to migrate v0 workflows created in the v0 UI. To migrate workflows, you will need to manually recreate them in the new Dashboard UI.
The old Web UI dashboard is compatible with the new v2 API, so you don't have to worry about updating your API instance, as it will continue to work as expected.
While running the old "Web UI", deploy the new "Dashboard" docker image under another host (we use dashboard.novu.co and dashboard-v0.novu.co for this example). During the transition period, you will have the two dashboards running in the same time, so you can copy the workflows from the old UI to the new one.
Workflows created in the new UI will not be visible under the old Web UI, but old workflows create will appear in the new UI however, will not be editable from there.
If you encounter challenges during migration, our community is here to help: