doveadm-import - Import messages matching given search query


doveadm [GLOBAL OPTIONS] import [-S socket_path] [-U source_user] [-s] -A source_location dest_parent search_query

doveadm [GLOBAL OPTIONS] import [-S socket_path] [-U source_user] [-s] -F file source_location dest_parent *search_query

doveadm [GLOBAL OPTIONS] import [-S socket_path] [-U source_user] [-s] -u user source_location dest_parent search_query


This command can be used to import mails from another mail storage specified by source_location to one or more user’s mailboxes. All the mailboxes are imported under the given dest_parent mailbox, or to root level if dest_parent is empty (“”). The search_query can be used to restrict which mailboxes or messages are imported. By default the import is done in destination user’s context, you can use -U to change this.

In the first form, doveadm(1) will executed the import action mails will be imported for all users.

In the second form, the mails will be imported for all users listed in the given file.

In the third form, the mails will be imported only for given user (s).


Global doveadm(1) options:


Enables verbosity and debug messages.


Do not read any config file, just use defaults.


Preserve entire environment for doveadm, not just import_environment.


Enables verbosity, including progress counter.

-i instance-name

If using multiple Dovecot instances, choose the config file based on this instance name. See instance_name setting for more information.

-c config-file

Read configuration from the given config-file. By default it first reads config socket, and then falls back to /etc/dovecot/dovecot.conf. You can also point this to config socket of some instance running compatible version.

-o setting=value

Overrides the configuration setting from /etc/dovecot/dovecot.conf and from the userdb with the given value. In order to override multiple settings, the -o option may be specified multiple times.



If the -A option is present, the command will be performed for all users. Using this option in combination with system users from userdb { driver = passwd } is not recommended, because it contains also users with a lower UID than the one configured with the first_valid_uid setting.

When the SQL userdb module is used make sure that the iterate_query setting in /etc/dovecot/dovecot-sql.conf.ext matches your database layout. When using the LDAP userdb module, make sure that the iterate_attrs and iterate_filter settings in /etc/dovecot/dovecot-ldap.conf.ext match your LDAP schema. Otherwise doveadm(1) will be unable to iterate over all users.

-F file

Execute the command for all the users in the file. This is similar to the -A option, but instead of getting the list of users from the userdb, they are read from the given file. The file contains one username per line.

-S socket_path

The option’s argument is either an absolute path to a local UNIX domain socket, or a hostname and port (hostname:port), in order to connect a remote host via a TCP socket.

This allows an administrator to execute doveadm(1) mail commands through the given socket.


When the -s option is present, dest_parent and all new mailboxes under it will be subscribed to.

-u user/mask

Run the command only for the given user. It’s also possible to use ‘*’ and ‘?’ wildcards (e.g. -u *

-U username

When the -U option is present, the source box is opened with given username.



The name of the destination mailbox, under which the mails should be imported. doveadm(1) will create the dest_parent mailbox if it doesn’t exist.


Copy messages matching this search query. See doveadm-search-query(7) for details.


This argument specifies the mailbox format and location of the source location. The syntax is the same as for the mail_location setting. For example: maildir:/backup/20101126/jane.doe/Maildir or mdbox:/srv/mail/john.doe/mdbox:ALT=/nfsmount/john.doe/mdbox


This example imports all mails from a backup under a backup-20101026 mailbox:

doveadm import -u mdbox:/backup/20101026/jane.doe/mdbox backup-20101026 all

Another example that imports only messages from in the backup mdbox’s INBOX to jane’s INBOX:

doveadm import -u mdbox:~/mdbox-backup "" mailbox INBOX from


Report bugs, including doveconf -n output, to the Dovecot Mailing List <>. Information about reporting bugs is available at:


doveadm(1), doveadm-search-query(7)