cupsreject
Stop accepting new jobs for a printer
TLDR
Reject print jobs to the specified destinations
Specify a different server
Specify a reason string ("Reason Unknown" by default)
SYNOPSIS
cupreject [--help] [--hold] [--release-hold] [-E] [-U username] [-m ipp-message] [-r reject-reason] destination[s]
PARAMETERS
--help
Display command usage information
--hold
Hold existing jobs instead of rejecting new ones
--release-hold
Release held jobs on the destination
-E
Force encryption when connecting to server
-U username
Specify alternate username for the request
-m ipp-message
Set an IPP status message on the destination
-r reject-reason
Set custom reject reason message
DESCRIPTION
The cupreject command stops specified printers or printer classes from accepting new print jobs in the CUPS printing system. When invoked, it sets the printer's accepting-jobs attribute to false, effectively rejecting incoming jobs until cupsaccept is run to re-enable the queue.
This is useful for maintenance, troubleshooting, or temporarily halting printing on specific queues. Jobs submitted while rejected are held or discarded based on configuration, but no new jobs are processed. The command supports multiple printers and can include a custom reject reason displayed to users via lpstat.
By default, it targets local CUPS server but options allow remote connections, IPP messages, and encryption. It modifies the printer configuration dynamically, typically in /etc/cups/printers.conf or via the CUPS API. Administrative privileges are required, usually root or lpadmin group membership.
In production environments, combine with cupsdisable for full printer pausing, as cupreject only affects job acceptance, not the printer state itself.
CAVEATS
Requires root privileges or lpadmin group membership. Does not pause the printer itself; use cupsdisable for that. Changes are not persistent across CUPS restarts unless saved in config.
EXAMPLES
cupreject -r "Out of paper" LaserJet
cupreject --hold HPLaser
Rejects jobs on LaserJet with reason; holds on HPLaser.
FILES
Modifies /etc/cups/printers.conf or runtime state via cupsd.conf directives.
HISTORY
Introduced with CUPS 1.0 in 1999 by Easy Software Products (Michael Sweet). Evolved with CUPS 2.x for systemd integration and IPP enhancements. Maintained by OpenPrinting project post-Apple acquisition.
SEE ALSO
cupsaccept(8), cupsenable(8), cupsdisable(8), lpadmin(8), lpstat(8)


