Restore from a backup
Two ways to bring your users back: the one-click dashboard restore that re-imports them idempotently, or a manual restore into a bare Marzban since the file is native Marzban user format.
A backup is only as good as the restore. There are two ways to bring your users back — the easy one inside the dashboard, and a manual one for advanced cases (or if you ever move off CreateYourVPN).
Option 1. Restore in the dashboard
The simplest path. On the Users page or the Backups page there's a "Restore from backup" button.
Click "Restore from backup" and pick the backup you want (from your Google Drive / S3 storage).
Confirm the restore. CreateYourVPN decrypts the backup for you — there's no passphrase to enter.
CreateYourVPN re-imports the users onto the cluster's current setup.
The import is idempotent, so it's safe to run more than once:
- existing users are updated to match the backup,
- missing users are re-created with their original UUID, so their old client configs keep working,
- subscriptions are preserved when you restore to the same cluster.
The in-dashboard restore decrypts the backup for you automatically. (The separate plaintext "Download" export is not encrypted — keep that file private.)
Option 2. Restore into a bare Marzban
The downloaded backup is just the native Marzban user format — the same shape Marzban's own API expects — with one extra _cyv field that a plain Marzban simply ignores. That means you can re-create your accounts on any Marzban, even one that has never seen CreateYourVPN.
Use the plaintext "Download" export from the Backups page as your source file. (The encrypted backups in your cloud storage can only be restored through the dashboard — they aren't decryptable by hand.)
Loop over the users array in the file and send each entry to the target panel:
POST /api/userEach user object is already in Marzban's format, so it goes through as-is. The proxy UUID under proxies.vless.id is carried in the payload, so re-created accounts keep the same UUID — existing client apps don't need a new one.
Honest caveat. Re-creating the accounts is only half the story. For a user's existing client config to keep connecting, the target panel must have the same inbounds, Xray settings, and host as the original. If the target is set up differently, the accounts are created correctly but each client must re-fetch its subscription to pick up the new connection details. Restoring to the same cluster (Option 1) avoids this entirely.