POSTQUEUE(1)                General Commands Manual               POSTQUEUE(1)

NAME
       postqueue - Postfix queue control

SYNOPSIS
   To flush the mail queue:

       postqueue [-v] [-c config_dir] -f

       postqueue [-v] [-c config_dir] -i queue_id

       postqueue [-v] [-c config_dir] -s site

   To list the mail queue:

       postqueue [-v] [-c config_dir] -j

       postqueue [-v] [-c config_dir] -p

DESCRIPTION
       The  postqueue(1)  command  implements  the  Postfix user interface for
       queue management.  It  implements  operations  that  are  traditionally
       available  via  the  sendmail(1) command.  See the postsuper(1) command
       for queue operations that require super-user privileges such as  delet‐
       ing a message from the queue or changing the status of a message.

       The following options are recognized:

       -c config_dir
              The main.cf configuration file is in the named directory instead
              of the default configuration directory. See also the MAIL_CONFIG
              environment setting below.

       -f     Flush the queue: attempt to deliver all queued mail.

              This option implements the traditional "sendmail -q" command, by
              contacting the Postfix qmgr(8) daemon.

              Warning:  flushing  undeliverable mail frequently will result in
              poor delivery performance of all other mail.

       -i queue_id
              Schedule immediate delivery of deferred mail with the  specified
              queue ID.

              This  option implements the traditional sendmail -qI command, by
              contacting the flush(8) server.

              This feature is available with Postfix version 2.4 and later.

       -j     Produce a queue listing in JSON LINES format,  based  on  output
              from the showq(8) daemon. See "JSON OBJECT FORMAT" below for de‐
              tails.

              This feature is available in Postfix 3.1 and later.

       -p     Produce a traditional sendmail-style queue listing.  This option
              implements  the  traditional  mailq  command,  by contacting the
              Postfix showq(8) daemon.

              Each queue entry shows the queue file ID, message size,  arrival
              time,  sender,  and  the recipients that still need to be deliv‐
              ered.  If mail could not be delivered upon the last attempt, the
              reason for failure is shown. With Postfix >=  3.11,  the  output
              may  also  show bounced recipients that are pending the creation
              of a non-delivery status notification message that will  be  re‐
              turned to the sender.

              The queue ID string is followed by an optional status character:

              *      The  message  is in the active queue, i.e. the message is
                     selected for delivery.

              !      The message is in the hold queue, i.e. no further  deliv‐
                     ery  attempt  will  be  made  until the mail is taken off
                     hold.

              #      The message is forced to expire. See the postsuper(1) op‐
                     tions -e or -f.

                     This feature is available in Postfix 3.5 and later.

       -s site
              Schedule immediate delivery of all mail that is queued  for  the
              named  site.  A  numerical site must be specified as a valid RFC
              5321 address literal enclosed in [],  just  like  in  email  ad‐
              dresses.   The  site  must be eligible for the "fast flush" ser‐
              vice.  See flush(8) for more information about the "fast  flush"
              service.

              This  option  implements the traditional "sendmail -qRsite" com‐
              mand, by contacting the Postfix flush(8) daemon.

       -v     Enable verbose logging for debugging purposes. Multiple  -v  op‐
              tions make the software increasingly verbose. As of Postfix 2.3,
              this option is available for the super-user only.

JSON OBJECT FORMAT
       Each  JSON  object represents one queue file; it is emitted as a single
       text line followed by a newline character.

       Object members have string values unless indicated otherwise.  Programs
       should ignore object members that are not listed here; the list of mem‐
       bers is expected to grow over time.

       queue_name
              The name of the queue where the message was  found.   Note  that
              the  contents  of  the  mail  queue may change while it is being
              listed; some messages may appear more than once, and  some  mes‐
              sages may be missed.

       queue_id
              The queue file name. The queue_id may be reused within a Postfix
              instance  unless  "enable_long_queue_ids = true" and time is mo‐
              notonic.  Even then, the queue_id is not expected to  be  unique
              between  different Postfix instances.  Management tools that re‐
              quire a unique name should combine the queue_id with the myhost‐
              name setting of the Postfix instance.

       arrival_time
              The number of seconds since the start of the UNIX epoch.

       message_size
              The number of bytes in the message header and body. This  number
              does  not  include  message envelope information. It is approxi‐
              mately equal to the number of bytes that  would  be  transmitted
              via SMTP including the <CR><LF> line endings.

       forced_expire (Postfix >= 3.5)
              The  message is forced to expire (true or false).  See the post‐
              super(1) options -e or -f.

       sender The envelope sender address.

       recipients
              An array containing zero or more objects with members:

              address
                     One recipient address.

              orig_address (Postfix >= 3.11)
                     One original recipient address.

              delay_reason
                     If present, the reason for delayed delivery.  Delayed re‐
                     cipients may have no delay reason, for example, while de‐
                     livery is in progress, or after the  system  was  stopped
                     before it could record the reason.

              bounce_reason (Postfix >= 3.11)
                     If  present,  the  reason why this recipient was bounced.
                     The recipient is still pending the creation of a  non-de‐
                     livery  status notification message that will be returned
                     to the sender.

SECURITY
       This program is designed to run with set-group ID privileges,  so  that
       it can connect to Postfix daemon processes.

STANDARDS
       RFC 7159 (JSON notation)

DIAGNOSTICS
       Problems  are  logged to syslogd(8) or postlogd(8), and to the standard
       error stream.

ENVIRONMENT
       MAIL_CONFIG
              Directory with the main.cf file. In order to avoid  exploitation
              of  set-group  ID privileges, a non-default directory is allowed
              only if:

              •      The name is listed in the default main.cf file  with  the
                     alternate_config_directories  or  multi_instance_directo‐
                     ries configuration parameter.

              •      The command is invoked by the super-user.

CONFIGURATION PARAMETERS
       The following main.cf parameters are especially relevant to  this  pro‐
       gram.   The  text  below  provides  only a parameter summary. See post‐
       conf(5) for more details including examples.

       alternate_config_directories (empty)
              A list of non-default Postfix configuration directories that may
              be specified with "-c config_directory" on the command line  (in
              the  case  of  sendmail(1),  with  the  "-C" option), or via the
              MAIL_CONFIG environment parameter.

       config_directory (see 'postconf -d' output)
              The default location of the Postfix main.cf and  master.cf  con‐
              figuration files.

       command_directory (see 'postconf -d' output)
              The location of all postfix administrative commands.

       fast_flush_domains ($relay_domains)
              Optional list of destinations that are eligible for per-destina‐
              tion logfiles with mail that is queued to those destinations.

       import_environment (see 'postconf -d' output)
              The  list  of  environment  variables  that a privileged Postfix
              process will  import  from  a  non-Postfix  parent  process,  or
              name=value environment overrides.

       queue_directory (see 'postconf -d' output)
              The location of the Postfix top-level queue directory.

       syslog_facility (mail)
              The syslog facility of Postfix logging.

       syslog_name (see 'postconf -d' output)
              A  prefix  that  is  prepended  to  the  process  name in syslog
              records, so that, for example, "smtpd" becomes "prefix/smtpd".

       trigger_timeout (10s)
              The time limit for sending a trigger to a  Postfix  daemon  (for
              example, the pickup(8) or qmgr(8) daemon).

       Available in Postfix version 2.2 and later:

       authorized_flush_users (static:anyone)
              List of users who are authorized to flush the queue.

       authorized_mailq_users (static:anyone)
              List of users who are authorized to view the queue.

FILES
       /var/spool/postfix, mail queue

SEE ALSO
       qmgr(8), queue manager
       showq(8), list mail queue
       flush(8), fast flush service
       sendmail(1), Sendmail-compatible user interface
       postsuper(1), privileged queue operations
       postlogd(8), Postfix logging
       syslogd(8), system logging

README FILES
       ETRN_README, Postfix ETRN howto

LICENSE
       The Secure Mailer license must be distributed with this software.

HISTORY
       The postqueue command was introduced with Postfix version 1.1.

AUTHOR(S)
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

       Wietse Venema
       Google, Inc.
       111 8th Avenue
       New York, NY 10011, USA

                                                                  POSTQUEUE(1)