You can import your current workspace into a Zulip organization. It's a great way
to preserve your workspace history when you migrate to Zulip, and to
make the transition easy for the members of your organization.
The import will include your organization's:
Name and Logo
Message history, including attachments and emoji reactions
Users, including names, emails, roles, avatars, time zones, and custom profile fields
Channels, including all user subscriptions
Custom emoji
Import process overview
To import your Mattermost organization into Zulip, you will need to take the
following steps, which are described in more detail below:
Finally, copy the exported tar file from the server to your local
computer. You may need to replace /opt/mattermost/bin/ with the
path to your Mattermost installation.
Finally, copy the exported tar file from the server to your local
computer. You may need to replace mattermost-docker with the
appropriate path for your installation.
To start using Zulip, you will need to choose between Zulip Cloud and
self-hosting Zulip. For a simple managed solution, with no setup or maintenance
overhead, you can sign up for Zulip Cloud with just a few clicks.
Alternatively, you can self-host your Zulip organization. See
here to learn more.
You can only import a workspace as a new Zulip organization. Your imported
message history cannot be added into an existing Zulip organization.
Zulip Cloud
Self hosting
Self hosting (cloud export)
Import into a Zulip Cloud organization
If you are using Zulip Cloud, we'll take it from here! Please email
support@zulip.com with the following information:
The subdomain you would like to use for your organization. Your Zulip chat will
be hosted at <subdomain>.zulipchat.com.
The exported data file containing your workspace message history export.
If the organization already exists, the import process will overwrite all
data that's already there. If needed, we're happy to preserve your
data by moving an organization you've already created to a new
subdomain prior to running the import process.
Import into a self-hosted Zulip server
Zulip's import tools are robust, and have been used to import workspaces
with 10,000 members and millions of messages. If you're planning on doing
an import much larger than that, or run into performance issues when
importing, contact us for help.
Copy the exported data file containing your workspace message
history export onto your Zulip server, and put it in /tmp/.
Log in to a shell on your Zulip server as the zulip user.
To import into an organization hosted on the root domain
(EXTERNAL_HOST) of the Zulip installation, run the following commands,
replacing <team-name> with the name of the Mattermost team you want to import.
The import could take several minutes to run,
depending on how much data you're importing.
The server stop/restart commands are only
necessary when importing on a server with minimal
RAM, where an OOM kill might otherwise occur.
cd /tmp
tar -xf mattermost_data.tar.gz
cd /home/zulip/deployments/current
./scripts/stop-server
./manage.py convert_mattermost_data /tmp/mattermost_data --output /tmp/converted_mattermost_data
./manage.py import '' /tmp/converted_mattermost_data/<team-name>
./scripts/start-server
Alternatively, to import into a custom subdomain, run:
cd /tmp
tar -xf mattermost_data.tar.gz
cd /home/zulip/deployments/current
./scripts/stop-server
./manage.py convert_mattermost_data /tmp/mattermost_data --output /tmp/converted_mattermost_data
./manage.py import <subdomain> /tmp/converted_mattermost_data/<team-name>
./scripts/start-server
Zulip's import tools are robust, and have been used to import workspaces
with 10,000 members and millions of messages. If you're planning on doing
an import much larger than that, or run into performance issues when
importing, contact us for help.
Copy the exported data file containing your workspace message
history export onto your Zulip server, and put it in /tmp/.
Log in to a shell on your Zulip server as the zulip user.
To import into an organization hosted on the root domain
(EXTERNAL_HOST) of the Zulip installation, run the following commands,
replacing <team-name> with the name of the Mattermost team you want to import.
The import could take several minutes to run,
depending on how much data you're importing.
The server stop/restart commands are only
necessary when importing on a server with minimal
RAM, where an OOM kill might otherwise occur.
Mattermost's user roles are mapped to Zulip's user
roles in the following way:
Mattermost role
Zulip role
Team administrator
Owner
Member
Member
Mattermost's export tool does not support exporting user avatars or message
edit history.
Direct messages will only be imported from Mattermost workspaces containing
a single team. This is because Mattermost's data exports do not associate
direct messages with a specific Mattermost team.
Messages in threads are imported, but they are not explicitly marked as
being in a thread.
Get your organization started with Zulip
Once the import process is completed, you will need to:
All users from your previous workspace will have accounts in your new Zulip
organization. However, you will need to let users know about their new
accounts, and decide how they will log
in for the first time.
When user accounts are imported, users initially do not have passwords
configured. There are a few options for how users can log in for the first time.
For security reasons, passwords are never exported.
Allow users to log in with non-password authentication
When you create your organization, users will immediately be able to log in with
authentication methods that do not
require a password. Zulip offers a variety of authentication methods, including
Google, GitHub, GitLab, Apple, LDAP and SAML.
Send password reset emails to all users
You can send password reset emails to all users in your organization, which
will allow them to set an initial password.
If you imported your organization into Zulip Cloud, simply email
support@zulip.com to request this.
To avoid confusion, first make sure that the users in your
organization are aware that their account has been moved to
Zulip, and are expecting to receive a password reset email.