    POSTQUEUE(1)                                                      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
                  details.

                  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
                  returned 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)
                         options -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
                  addresses.   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
                  options  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 mono-
                  tonic.  Even then, the queue_id is not  expected  to  be  unique
                  between  different  Postfix  instances.   Management  tools that
                  require a unique name  should  combine  the  queue_id  with  the
                  myhostname 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
                         recipients may have no delay reason, for  example,  while
                         delivery  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-delivery 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:

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

                  o      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)