DOVEADM-FLAGS(1)

NAME
doveadm-flags - add, remove or replace messages' flags

SYNOPSIS
doveadm [-Dv] flags [-S socket_path] command flags search_query
doveadm [-Dv] flags [-S socket_path] command flags search_query -A
doveadm [-Dv] flags [-S socket_path] command flags search_query -F file
doveadm [-Dv] flags [-S socket_path] command flags search_query -u user

DESCRIPTION
This command is used to manipulate flags of messages.

OPTIONS
Global doveadm(1) options:

-D  Enables verbosity and debug messages.

-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.

-v  Enables verbosity, including progress counter.

Command specific options:

-A  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.

-u user/mask
    Run the command only for the given user. It's also possible to use '*' and '?' wildcards (e.g. -u *@example.org).
    When neither the -A option, nor the -F file option, nor the -u user was specified, the command will be executed with the environment of the currently logged in user.

ARGUMENTS

flags
    Message flags as described in RFC 3501, section 2.3.2 (Flags Message Attribute): \Answered, \Deleted, \Draft, \Flagged, \Recent and \Seen. And the IMAP keywords $Forwarded, $MDNSent, $SubmitPending and $Submitted or user-defined keywords, e.g. Junk, $NonSpam or $Label1.
    One or multiple flags and/or keywords can be specified.

search_query
    Manipulate the flags of messages matching the given search query. See doveadm-search-query(7) for details.

COMMANDS

  flags add
doveadm flags add [-u user| -A|-F file] [-S socket_path] flags search_query

This command is used to extend the current set of flags with the given flags.

  flags remove
doveadm flags remove [-u user| -A|-F file] [-S socket_path] flags search_query

In order to remove the given flags from the current set of flags, use this command.

  flags replace
doveadm flags replace [-u user| -A|-F file] [-S socket_path] flags search_query

This command is used to replace ALL current flags with the given flags.

EXAMPLE
List and manipulate the message flags of the message with uid 81563

doveadm fetch -u bob 'uid flags' mailbox dovecot uid 81563
uid: 81563
flags: \Answered \Seen NonJunk

doveadm flags remove -u bob NonJunk mailbox dovecot uid 81563
doveadm flags add -u bob '\Flagged $Forwarded' mailbox dovecot uid 81563

REPORTING BUGS
Report bugs, including doveconf -n output, to the Dovecot Mailing List <dovecot@dovecot.org>. Information about reporting bugs is available at: http://dovecot.org/bugreport.html

SEE ALSO
doveadm(1), doveadm-fetch(1), doveadm-search-query(7)