]> git.ipfire.org Git - thirdparty/cups.git/blame - doc/help/spec-ipp.html
Update all references to OS X to macOS.
[thirdparty/cups.git] / doc / help / spec-ipp.html
CommitLineData
7ae00c35 1<!DOCTYPE HTML>
fa73b229 2<html>
4744bd90 3<!-- SECTION: Specifications -->
fa73b229 4<head>
5 <title>CUPS Implementation of IPP</title>
6 <meta name='keywords' content='Programming, Internet Printing Protocol'>
178cb736 7 <LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css">
fa73b229 8</head>
9<body>
10<!--
7ae00c35 11 IPP specification for CUPS.
fa73b229 12
7ae00c35 13 Copyright 2007-2016 by Apple Inc.
f7deaa1a 14 Copyright 1997-2007 by Easy Software Products.
fa73b229 15
16 These coded instructions, statements, and computer programs are the
5f64df29
MS
17 property of Apple Inc. and are protected by Federal copyright
18 law. Distribution and use rights are outlined in the file "LICENSE.txt"
19 which should have been included with this file. If this file is
20 file is missing or damaged, see the license at "http://www.cups.org/".
fa73b229 21-->
22
178cb736
MS
23<H1 CLASS="title">CUPS Implementation of IPP</H1>
24
fa73b229 25<h2 class='title'><a name='INTRODUCTION'>Introduction</a></h2>
26
7ae00c35
MS
27<p>CUPS implements <a href="http://ftp.pwg.org/pub/pwg/standards/std-ipp20-20151030-5100.12.pdf">IPP/2.1</a> and the operations and attributes defined in the following specifications:</p>
28
29<ul>
30
31 <li><a href="http://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext10-20101030-5100.11.pdf">PWG 5100.11: IPP Job and Printer Extensions - Set 2 (JPS2)</a> (all operations plus the "job-creation-attributes-supported", "job-ids", "job-password", "job-password-encryption", "media-col-database", and "which-jobs" attributes)</li>
32
33 <li><a href="http://ftp.pwg.org/pub/pwg/candidates/cs-ippjobprinterext3v10-20120727-5100.13.pdf">PWG 5100.13: IPP Job and Printer Extensions - Set 3 (JPS3)</a> (all operations/attributes required for IPP Everywhere except "printer-geo-location" and "printer-icc-profiles")</li>
34
35 <li><a href="http://ftp.pwg.org/pub/pwg/candidates/cs-ippeve10-20130128-5100.14.pdf">PWG 5100.14: IPP Everywhere</a> (conforming to the Client and most of the Printer requirements)</li>
36
37 <li><a href="http://ftp.pwg.org/pub/pwg/candidates/cs-ippfaxout10-20140618-5100.15.pdf">PWG 5100.15: IPP FaxOut Service</a> (for facsimile queues)</li>
38
39 <li><a href="http://ftp.pwg.org/pub/pwg/candidates/cs-ipptrans10-20131108-5100.16.pdf">PWG 5100.16: IPP Transaction-Based Printing Extensions</a></li>
40
41 <li><a href="http://tools.ietf.org/html/rfc3998">RFC 3998: IPP Job and Printer Administrative Operations</a> (Disable-Printer, Enable-Printer, Hold-New-Jobs, and Release-Held-New-Jobs operations)</li>
42
43 <li><a href="http://tools.ietf.org/html/rfc7472">RFC 7472: IPP over HTTPS Transport Binding and 'ipps' URI Scheme</a></li>
fa73b229 44
7ae00c35
MS
45</ul>
46
47<p>CUPS also provides 17 new operations and many new attributes to support multiple IPP printers and printer classes on a single host.</p>
fa73b229 48
49<h3 class='title'><a name='IPP_URIS'>IPP URIs</a></h3>
50
7ae00c35 51<p>CUPS supports the "http", "https", "ipp", and "ipps" schemes. The following resource names are used:</p>
fa73b229 52
53<dl>
54
55 <dt><tt>scheme://hostname:port/</tt></dt>
56
7ae00c35 57 <dd>Can be used for all "get" operations and for server subscriptions.</dd>
fa73b229 58
59 <dt><tt>scheme://hostname:port/admin/</tt></dt>
60
61 <dd>Used for all administrative operations.</dd>
62
63 <dt><tt>scheme://hostname:port/classes/name</tt></dt>
64
65 <dd>Specifies a printer class.</dd>
66
67 <dt><tt>scheme://hostname:port/jobs/id</tt></dt>
68
69 <dd>Specifies a job.</dd>
70
71 <dt><tt>scheme://hostname:port/printers/name</tt></dt>
72
73 <dd>Specifies a printer.</dd>
74
75</dl>
76
7ae00c35 77<p>So a typical printer URI would be "ipp://foo.example.com/printers/LaserJet". In addition, the CUPS scheduler also supports (when enabled) normal browser access via "http://foo.example.com:port/" and "https://foo.example.com:port/".</p>
fa73b229 78
79<h3 class='title'><a name='IPP_OPERATIONS'>CUPS IPP Operations</a></h3>
80
7ae00c35 81<p>CUPS provides 17 vendor extension operations in addition to most of the standard IPP and registered extension operations:</p>
fa73b229 82
83<div class='table'><table align='center' border='1' width='80%'
84summary='Supported Operations'>
85<thead>
86<tr>
87 <TH VALIGN="TOP">Operation Name</th>
88 <TH VALIGN="TOP">CUPS</th>
89 <TH VALIGN="TOP">Code</th>
90 <TH VALIGN="TOP">Brief Description</th>
91</tr>
92</thead>
93<tbody>
94<tr>
7ae00c35 95 <td>Print-Job</td>
fa73b229 96 <td>1.0</td>
97 <td>0x0002</td>
98 <td>Print a file.</td>
99</tr>
100<tr>
101 <td>Validate-Job</td>
102 <td>1.0</td>
103 <td>0x0004</td>
104 <td>Validate job attributes.</td>
105</tr>
106<tr>
7ae00c35 107 <td>Create-Job</td>
fa73b229 108 <td>1.1</td>
109 <td>0x0005</td>
110 <td>Create a print job.</td>
111</tr>
112<tr>
113 <td>Send-Document</td>
114 <td>1.1</td>
115 <td>0x0006</td>
116 <td>Send a file for a print job.</td>
117</tr>
118<tr>
0a682745 119 <td><a href='#CANCEL_JOB'>Cancel-Job</a></td>
fa73b229 120 <td>1.0</td>
121 <td>0x0008</td>
122 <td>Cancel a print job.</td>
123</tr>
124<tr>
125 <td>Get-Job-Attributes</td>
126 <td>1.0</td>
127 <td>0x0009</td>
128 <td>Get job attributes.</td>
129</tr>
130<tr>
131 <td>Get-Jobs</td>
132 <td>1.0</td>
133 <td>0x000A</td>
134 <td>Get all jobs.</td>
135</tr>
136<tr>
137 <td>Get-Printer-Attributes</td>
138 <td>1.0</td>
139 <td>0x000B</td>
140 <td>Get printer attributes.</td>
141</tr>
142<tr>
143 <td>Hold-Job</td>
144 <td>1.1</td>
145 <td>0x000C</td>
146 <td>Hold a job for printing.</td>
147</tr>
148<tr>
149 <td>Release-Job</td>
150 <td>1.1</td>
151 <td>0x000D</td>
152 <td>Release a job for printing.</td>
153</tr>
154<tr>
155 <td>Restart-Job</td>
156 <td>1.1</td>
157 <td>0x000E</td>
158 <td>Restarts a print job.</td>
159</tr>
160<tr>
161 <td>Pause-Printer</td>
162 <td>1.0</td>
163 <td>0x0010</td>
164 <td>Pause printing on a printer.</td>
165</tr>
166<tr>
167 <td>Resume-Printer</td>
168 <td>1.0</td>
169 <td>0x0011</td>
170 <td>Resume printing on a printer.</td>
171</tr>
172<tr>
0a682745 173 <td><a href='#PURGE_JOBS'>Purge-Jobs</a></td>
fa73b229 174 <td>1.0</td>
175 <td>0x0012</td>
176 <td>Purge all jobs.</td>
177</tr>
178<tr>
7ae00c35
MS
179 <td>Set-Printer-Attributes</td>
180 <td>1.4</td>
181 <td>0x0013</td>
182 <td>Set attributes for a printer.</td>
183</tr>
184<tr>
185 <td>Set-Job-Attributes</td>
fa73b229 186 <td>1.1</td>
187 <td>0x0014</td>
188 <td>Set attributes for a pending or held job.</td>
189</tr>
190<tr>
191 <td><a href='#CREATE_PRINTER_SUBSCRIPTION'>Create-Printer-Subscription</a></td>
192 <td>1.2</td>
193 <td>0x0016</td>
194 <td>Creates a subscription associated with a printer or the server.</td>
195</tr>
196<tr>
197 <td>Create-Job-Subscription</td>
198 <td>1.2</td>
199 <td>0x0017</td>
200 <td>Creates a subscription associated with a job.</td>
201</tr>
202<tr>
203 <td>Get-Subscription-Attributes</td>
204 <td>1.2</td>
205 <td>0x0018</td>
206 <td>Gets the attributes for a subscription.</td>
207</tr>
208<tr>
209 <td>Get-Subscriptions</td>
210 <td>1.2</td>
211 <td>0x0019</td>
212 <td>Gets the attributes for zero or more subscriptions.</td>
213</tr>
214<tr>
215 <td>Renew-Subscription</td>
216 <td>1.2</td>
217 <td>0x001A</td>
218 <td>Renews a subscription.</td>
219</tr>
220<tr>
221 <td>Cancel-Subscription</td>
222 <td>1.2</td>
223 <td>0x001B</td>
224 <td>Cancels a subscription.</td>
225</tr>
226<tr>
227 <td>Get-Notifications</td>
228 <td>1.2</td>
229 <td>0x001C</td>
230 <td>Get notification events for <tt>ippget</tt> subscriptions.</td>
231</tr>
232<tr>
233 <td>Enable-Printer</td>
234 <td>1.2</td>
235 <td>0x0022</td>
236 <td>Accepts jobs on a printer.</td>
237</tr>
238<tr>
239 <td>Disable-Printer</td>
240 <td>1.2</td>
241 <td>0x0023</td>
242 <td>Rejects jobs on a printer.</td>
243</tr>
7ae00c35
MS
244<tr>
245 <td>Hold-New-Jobs</td>
246 <td>1.4</td>
247 <td>0x0025</td>
248 <td>Hold new jobs by default.</td>
249</tr>
250<tr>
251 <td>Release-Held-New-Jobs</td>
252 <td>1.4</td>
253 <td>0x0026</td>
254 <td>Releases all jobs that were previously held.</td>
255</tr>
256<tr>
257 <td>Cancel-Jobs</td>
258 <td>1.5</td>
259 <td>0x0038</td>
260 <td>Cancel all jobs (administrator).</td>
261</tr>
262<tr>
263 <td>Cancel-My-Jobs</td>
264 <td>1.5</td>
265 <td>0x0039</td>
266 <td>Cancel all jobs (user).</td>
267</tr>
268<tr>
269 <td>Close-Job</td>
270 <td>1.5</td>
271 <td>0x003b</td>
272 <td>Close a created job.</td>
273</tr>
fa73b229 274<tr>
275 <td><a href='#CUPS_GET_DEFAULT'>CUPS-Get-Default</a></td>
276 <td>1.0</td>
277 <td>0x4001</td>
278 <td>Get the default destination.</td>
279</tr>
280<tr>
281 <td><a href='#CUPS_GET_PRINTERS'>CUPS-Get-Printers</a></td>
282 <td>1.0</td>
283 <td>0x4002</td>
284 <td>Get all of the available printers.</td>
285</tr>
286<tr>
287 <td><a href='#CUPS_ADD_MODIFY_PRINTER'>CUPS-Add-Modify-Printer</a></td>
288 <td>1.0</td>
289 <td>0x4003</td>
290 <td>Add or modify a printer.</td>
291</tr>
292<tr>
293 <td><a href='#CUPS_DELETE_PRINTER'>CUPS-Delete-Printer</a></td>
294 <td>1.0</td>
295 <td>0x4004</td>
296 <td>Delete a printer.</td>
297</tr>
298<tr>
299 <td><a href='#CUPS_GET_CLASSES'>CUPS-Get-Classes</a></td>
300 <td>1.0</td>
301 <td>0x4005</td>
302 <td>Get all of the available printer classes.</td>
303</tr>
304<tr>
305 <td><a href='#CUPS_ADD_MODIFY_CLASS'>CUPS-Add-Modify-Class</a></td>
306 <td>1.0</td>
307 <td>0x4006</td>
308 <td>Add or modify a printer class.</td>
309</tr>
310<tr>
311 <td><a href='#CUPS_DELETE_CLASS'>CUPS-Delete-Class</a></td>
312 <td>1.0</td>
313 <td>0x4007</td>
314 <td>Delete a printer class.</td>
315</tr>
316<tr>
7ae00c35 317 <td>CUPS-Accept-Jobs</td>
fa73b229 318 <td>1.0</td>
319 <td>0x4008</td>
7ae00c35 320 <td>Accept jobs on a printer or printer class. This operation is deprecated - use the Enable-Printer operation instead.</td>
fa73b229 321</tr>
322<tr>
7ae00c35 323 <td>CUPS-Reject-Jobs</td>
fa73b229 324 <td>1.0</td>
325 <td>0x4009</td>
7ae00c35 326 <td>Reject jobs on a printer or printer class. This operation is deprecated - use the Disable-Printer operation instead.</td>
fa73b229 327</tr>
328<tr>
329 <td><a href='#CUPS_SET_DEFAULT'>CUPS-Set-Default</a></td>
330 <td>1.0</td>
331 <td>0x400A</td>
332 <td>Set the default destination.</td>
333</tr>
334<tr>
335 <td><a href='#CUPS_GET_DEVICES'>CUPS-Get-Devices</a></td>
336 <td>1.1</td>
337 <td>0x400B</td>
338 <td>Get all of the available devices.</td>
339</tr>
340<tr>
341 <td><a href='#CUPS_GET_PPDS'>CUPS-Get-PPDs</a></td>
342 <td>1.1</td>
343 <td>0x400C</td>
344 <td>Get all of the available PPDs.</td>
345</tr>
346<tr>
347 <td><a href='#CUPS_MOVE_JOB'>CUPS-Move-Job</a></td>
348 <td>1.1</td>
349 <td>0x400D</td>
350 <td>Move a job to a different printer.</td>
351</tr>
352<tr>
353 <td><a href='#CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job</a></td>
354 <td>1.2</td>
355 <td>0x400E</td>
356 <td>Authenticate a job for printing.</td>
357</tr>
b94498cf 358<tr>
359 <td><a href='#CUPS_GET_PPD'>CUPS-Get-PPD</a></td>
360 <td>1.3</td>
361 <td>0x400F</td>
362 <td>Get a PPD file.</td>
363</tr>
2e4ff8af
MS
364<tr>
365 <td><a href='#CUPS_GET_DOCUMENT'>CUPS-Get-Document</a></td>
366 <td>1.4</td>
367 <td>0x4027</td>
368 <td>Get a document file from a job.</td>
369</tr>
7ae00c35
MS
370<tr>
371 <td><a href='#CUPS_CREATE_LOCAL_PRINTER'>CUPS-Create-Local-Printer</a></td>
372 <td>2.2</td>
373 <td>0x4028</td>
374 <td>Creates a local (temporary) print queue pointing to a remote IPP Everywhere printer.</td>
375</tr>
fa73b229 376</tbody>
377</table></div>
378
379<h2 class='title'><a name='OPERATIONS'>Operations</a></h2>
380
7ae00c35 381<p>The following sections describe the operations supported by CUPS. In the interest of brevity, operations which use only the standard IPP attributes are not described.
f7deaa1a 382
0a682745 383
7ae00c35 384<h3 class='title'><a name='CANCEL_JOB'>Cancel Job Operation (Extension)</a></h3>
0a682745 385
7ae00c35 386<p>The Cancel-Job operation (0x0008) cancels the specified job. CUPS 1.4 added support for the <tt>purge-job (boolean)</tt> operation attribute that (if 'true') removes all history and document files for the job as well.</p>
0a682745 387
0a682745
MS
388
389<h3 class='title'><a name='PURGE_JOBS'>Purge-Jobs Operation</a></h3>
390
7ae00c35 391<p>The Purge-Jobs operation (0x0012) cancels all of the jobs on a given destination and optionally removes all history and document files for the jobs as well. CUPS 1.2 added support for the <tt>purge-job (boolean)</tt> operation attribute that (if 'false') retains all history and document files for the canceled jobs.</p>
fa73b229 392
7ae00c35
MS
393<blockquote><b>Note:</b>
394 <p>The Cancel-Jobs and Cancel-My-Jobs operations should be used instead of Purge-Jobs.</p>
395</blockquote>
fa73b229 396
fa73b229 397
fa73b229 398
8072030b 399<h3 class='title'><span class='info'>CUPS 1.2/macOS 10.5</span><a
fa73b229 400name='CREATE_PRINTER_SUBSCRIPTION'>Create-Printer-Subscription</a></h3>
401
7ae00c35 402<p>The Create-Printer-Subscription operation (0x0016) creates a subscription for printer or server event notifications. CUPS provides several additional events in addition to the standard events in the IPP notifications specification. CUPS adds the following <tt>notify-events (1setOf type2 keyword)</tt> values:<p>
fa73b229 403
7ae00c35 404<ul>
fa73b229 405
7ae00c35 406 <li><tt>printer-added</tt> - Get notified whenever a printer or class is added</li>
fa73b229 407
7ae00c35 408 <li><tt>printer-deleted</tt> - Get notified whenever a printer or class is deleted</li>
fa73b229 409
7ae00c35 410 <li><tt>printer-modified</tt> - Get notified whenever a printer or class is modified</li>
fa73b229 411
7ae00c35 412 <li><tt>server-audit</tt> - Get notified when a security condition occurs</li>
fa73b229 413
7ae00c35 414 <li><tt>server-restarted</tt> - Get notified when the server is restarted</li>
fa73b229 415
7ae00c35 416 <li><tt>server-started</tt> - Get notified when the server is started</li>
fa73b229 417
7ae00c35 418 <li><tt>server-stopped</tt> - Get notified when the server is stopped</li>
fa73b229 419
7ae00c35 420</ul>
fa73b229 421
fa73b229 422
423<h3 class='title'><a name='CUPS_GET_DEFAULT'>CUPS-Get-Default Operation</a></h3>
424
7ae00c35 425<p>The CUPS-Get-Default operation (0x4001) returns the default printer URI and attributes.
fa73b229 426
427<h4>CUPS-Get-Default Request</h4>
428
7ae00c35 429<p>The following groups of attributes are supplied as part of the CUPS-Get-Default request:
fa73b229 430
431<p>Group 1: Operation Attributes
432
433<dl>
434
435 <dt>Natural Language and Character Set:
436
7ae00c35 437 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 438
7ae00c35 439 <dt>"requested-attributes" (1setOf keyword):
fa73b229 440
7ae00c35 441 <dd>The client OPTIONALLY supplies a set of attribute names and/or attribute group names in whose values the requester is interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'.
fa73b229 442
443</dl>
444
445<h4>CUPS-Get-Default Response</h4>
446
7ae00c35 447<p>The following groups of attributes are send as part of the CUPS-Get-Default Response:
fa73b229 448
449<p>Group 1: Operation Attributes
450
451<dl>
452
7ae00c35 453 <dt>Natural Language and Character Set:
fa73b229 454
7ae00c35 455 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 456
7ae00c35 457 <dt>Status Message:
fa73b229 458
7ae00c35 459 <dd>The standard response status message.
fa73b229 460
461</dl>
462
463<p>Group 2: Printer Object Attributes
464
465<dl>
466
467 <dt>The set of requested attributes and their current values.
468
469</dl>
470
471<h3 class='title'><a name='CUPS_GET_PRINTERS'>CUPS-Get-Printers Operation</a></h3>
472
7ae00c35 473<p>The CUPS-Get-Printers operation (0x4002) returns the printer attributes for every printer known to the system. This may include printers that are not served directly by the server.
fa73b229 474
475<h4>CUPS-Get-Printers Request</h4>
476
7ae00c35 477<p>The following groups of attributes are supplied as part of the CUPS-Get-Printers request:
fa73b229 478
479<p>Group 1: Operation Attributes
480
481<dl>
482
483 <dt>Natural Language and Character Set:
484
7ae00c35 485 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 486
8072030b 487 <dt>"first-printer-name" (name(127)): <span class='info'>CUPS 1.2/macOS 10.5</span>
b19ccc9e 488
7ae00c35 489 <dd>The client OPTIONALLY supplies this attribute to select the first printer that is returned.
b19ccc9e 490
fa73b229 491 <dt>"limit" (integer (1:MAX)):
492
7ae00c35
MS
493 <dd>The client OPTIONALLY supplies this attribute limiting the number of printers that are returned.
494
495 <dt>"printer-id" (integer(0:65535)): <span class='info'>CUPS 2.2</span>
496
497 <dd>The client OPTIONALLY supplies this attribute to select which printer is returned.
fa73b229 498
fa73b229 499 <dt>"printer-location" (text(127)): <span class='info'>CUPS 1.1.7</span>
500
7ae00c35 501 <dd>The client OPTIONALLY supplies this attribute to select which printers are returned.
fa73b229 502
503 <dt>"printer-type" (type2 enum): <span class='info'>CUPS 1.1.7</span>
504
7ae00c35 505 <dd>The client OPTIONALLY supplies a printer type enumeration to select which printers are returned.
fa73b229 506
507 <dt>"printer-type-mask" (type2 enum): <span class='info'>CUPS 1.1.7</span>
508
7ae00c35 509 <dd>The client OPTIONALLY supplies a printer type mask enumeration to select which bits are used in the "printer-type" attribute.
fa73b229 510
7ae00c35 511 <dt>"requested-attributes" (1setOf keyword):
fa73b229 512
7ae00c35 513 <dd>The client OPTIONALLY supplies a set of attribute names and/or attribute group names in whose values the requester is interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'.
fa73b229 514
8072030b 515 <dt>"requested-user-name" (name(127)): <span class='info'>CUPS 1.2/macOS 10.5</span>
b19ccc9e 516
7ae00c35 517 <dd>The client OPTIONALLY supplies a user name that is used to filter the returned printers.
b19ccc9e 518
fa73b229 519</dl>
520
521<h4>CUPS-Get-Printers Response</h4>
522
7ae00c35 523<p>The following groups of attributes are send as part of the CUPS-Get-Printers Response:
fa73b229 524
525<p>Group 1: Operation Attributes
526
527<dl>
528
7ae00c35 529 <dt>Natural Language and Character Set:
fa73b229 530
7ae00c35 531 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 532
7ae00c35 533 <dt>Status Message:
fa73b229 534
7ae00c35 535 <dd>The standard response status message.
fa73b229 536
537</dl>
538
539<p>Group 2: Printer Object Attributes
540
541<dl>
542
7ae00c35 543 <dt>The set of requested attributes and their current values for each printer.
fa73b229 544
545</dl>
546
7ae00c35 547
fa73b229 548<h3 class='title'><a name='CUPS_ADD_MODIFY_PRINTER'>CUPS-Add-Modify-Printer Operation</a></h3>
549
7ae00c35 550<p>The CUPS-Add-Modify-Printer operation (0x4003) adds a new printer or modifies an existing printer on the system.
fa73b229 551
552<h4>CUPS-Add-Modify-Printer Request</h4>
553
7ae00c35 554<p>The following groups of attributes are supplied as part of the CUPS-Add-Modify-Printer request:
fa73b229 555
556<p>Group 1: Operation Attributes
557
558<dl>
559
560 <dt>Natural Language and Character Set:
561
7ae00c35 562 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 563
564 <dt>"printer-uri" (uri):
565
566 <dd>The client MUST supply a URI for the specified printer.
567
568</dl>
569
570<p>Group 2: Printer Object Attributes
571
572<dl>
573
8072030b 574 <dt>"auth-info-required" (1setOf type2 keyword): <span class='info'>CUPS 1.3/macOS 10.5</span>
f7deaa1a 575
576 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
577
7ae00c35 578 <dt>"job-sheets-default" (1setOf name(127)): <span class='info'>CUPS 1.1.7</span>
fa73b229 579
7ae00c35 580 <dd>The client OPTIONALLY supplies one or two banner page names that are printed before and after files in a job. The reserved name "none" is used to specify that no banner page should be printed.
fa73b229 581
582 <dt>"device-uri" (uri):
583
7ae00c35 584 <dd>The client OPTIONALLY supplies a device URI for the specified printer.
fa73b229 585
09a101d6 586 <dt>"port-monitor" (name(127)):
587
7ae00c35 588 <dd>The client OPTIONALLY supplies a port monitor name for the specified printer.
09a101d6 589
fa73b229 590 <dt>"ppd-name" (name(127)):
591
7ae00c35 592 <dd>The client OPTIONALLY supplies a PPD name for the specified printer.
fa73b229 593
594 <dt>"printer-is-accepting-jobs" (boolean):
595
7ae00c35 596 <dd>The client OPTIONALLY supplies this boolean attribute indicating whether the printer object should accept new jobs.
fa73b229 597
598 <dt>"printer-info" (text(127)):
599
7ae00c35 600 <dd>The client OPTIONALLY supplies this attribute indicating the printer information string.
fa73b229 601
602 <dt>"printer-location" (text(127)):
603
7ae00c35 604 <dd>The client OPTIONALLY supplies this attribute indicating a textual location of the printer.
fa73b229 605
606 <dt>"printer-more-info" (uri):
607
7ae00c35 608 <dd>The client OPTIONALLY supplies this attribute indicating a URI for additional printer information.
fa73b229 609
610 <dt>"printer-state" (type2 enum):
611
7ae00c35 612 <dd>The client OPTIONALLY supplies this attribute indicating the initial/current state of the printer. Only the 'idle(3)' and 'stopped(5)' enumerations are recognized.
fa73b229 613
614 <dt>"printer-state-message" (text(MAX)):
615
7ae00c35 616 <dd>The client OPTIONALLY supplies this attribute indicating a textual reason for the current printer state.
fa73b229 617
618 <dt>"requesting-user-name-allowed" (1setof name(127) | delete)
619 <br><i>OR</i>
620 <br>"requesting-user-name-denied" (1setof name(127) | delete):
621
7ae00c35 622 <dd>The client OPTIONALLY supplies one of these attributes to specify an access control list for incoming print jobs. To allow all users access to a printer, use the delete tag for the attribute value.
fa73b229 623
624</dl>
625
e67e2f9e 626<p>The CUPS-Add-Modify-Printer request can optionally be followed by a PPD file to be used for the printer. The "ppd-name" attribute overrides any file that is attached to the end of the request with a local CUPS PPD file.
fa73b229 627
628<h4>CUPS-Add-Modify-Printer Response</h4>
629
630<p>The following groups of attributes are send as part of the
631CUPS-Add-Modify-Printer Response:
632
633<p>Group 1: Operation Attributes
634
635<dl>
636
7ae00c35 637 <dt>Natural Language and Character Set:
fa73b229 638
7ae00c35 639 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 640
7ae00c35 641 <dt>Status Message:
fa73b229 642
7ae00c35 643 <dd>The standard response status message.
fa73b229 644
645</dl>
646
7ae00c35 647
fa73b229 648<h3 class='title'><a name='CUPS_DELETE_PRINTER'>CUPS-Delete-Printer Operation</a></h3>
649
7ae00c35 650<p>The CUPS-Delete-Printer operation (0x4004) removes an existing printer from the system.
fa73b229 651
652<h4>CUPS-Delete-Printer Request</h4>
653
7ae00c35 654<p>The following groups of attributes are supplied as part of the CUPS-Delete-Printer request:
fa73b229 655
656<p>Group 1: Operation Attributes
657
658<dl>
659
660 <dt>Natural Language and Character Set:
661
7ae00c35 662 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 663
664 <dt>"printer-uri" (uri):
665
666 <dd>The client MUST supply a URI for the specified printer.
667
668</dl>
669
670<h4>CUPS-Delete-Printer Response</h4>
671
7ae00c35 672<p>The following groups of attributes are send as part of the CUPS-Delete-Printer Response:
fa73b229 673
674<p>Group 1: Operation Attributes
675
676<dl>
677
7ae00c35 678 <dt>Natural Language and Character Set:
fa73b229 679
7ae00c35 680 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 681
7ae00c35 682 <dt>Status Message:
fa73b229 683
7ae00c35 684 <dd>The standard response status message.
fa73b229 685
686</dl>
687
7ae00c35 688
fa73b229 689<h3 class='title'><a name='CUPS_GET_CLASSES'>CUPS-Get-Classes Operation</a></h3>
690
7ae00c35 691<p>The CUPS-Get-Classes operation (0x4005) returns the printer attributes for every printer class known to the system. This may include printer classes that are not served directly by the server.
fa73b229 692
693<h4>CUPS-Get-Classes Request</h4>
694
7ae00c35 695<p>The following groups of attributes are supplied as part of the CUPS-Get-Classes request:
fa73b229 696
697<p>Group 1: Operation Attributes
698
699<dl>
700
701 <dt>Natural Language and Character Set:
702
7ae00c35 703 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 704
8072030b 705 <dt>"first-printer-name" (name(127)): <span class='info'>CUPS 1.2/macOS 10.5</span>
b19ccc9e 706
7ae00c35 707 <dd>The client OPTIONALLY supplies this attribute to select the first printer that is returned.
b19ccc9e 708
fa73b229 709 <dt>"limit" (integer (1:MAX)):
710
7ae00c35 711 <dd>The client OPTIONALLY supplies this attribute limiting the number of printer classes that are returned.
fa73b229 712
fa73b229 713 <dt>"printer-location" (text(127)): <span class='info'>CUPS 1.1.7</span>
7ae00c35
MS
714
715 <dd>The client OPTIONALLY supplies this attribute to select which printer classes are returned.
fa73b229 716
717 <dt>"printer-type" (type2 enum): <span class='info'>CUPS 1.1.7</span>
7ae00c35
MS
718
719 <dd>The client OPTIONALLY supplies a printer type enumeration to select which printer classes are returned.
fa73b229 720
721 <dt>"printer-type-mask" (type2 enum): <span class='info'>CUPS 1.1.7</span>
fa73b229 722
7ae00c35 723 <dd>The client OPTIONALLY supplies a printer type mask enumeration to select which bits are used in the "printer-type" attribute.
fa73b229 724
7ae00c35 725 <dt>"requested-attributes" (1setOf keyword):
fa73b229 726
7ae00c35 727 <dd>The client OPTIONALLY supplies a set of attribute names and/or attribute group names in whose values the requester is interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'.
b19ccc9e 728
8072030b 729 <dt>"requested-user-name" (name(127)): <span class='info'>CUPS 1.2/macOS 10.5</span>
7ae00c35
MS
730
731 <dd>The client OPTIONALLY supplies a user name that is used to filter the returned printers.
b19ccc9e 732
fa73b229 733</dl>
734
735<h4>CUPS-Get-Classes Response</h4>
736
7ae00c35 737<p>The following groups of attributes are send as part of the CUPS-Get-Classes Response:
fa73b229 738
739<p>Group 1: Operation Attributes
740
741<dl>
742
7ae00c35 743 <dt>Natural Language and Character Set:
fa73b229 744
7ae00c35 745 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 746
7ae00c35 747 <dt>Status Message:
fa73b229 748
7ae00c35 749 <dd>The standard response status message.
fa73b229 750
751</dl>
752
753<p>Group 2: Printer Class Object Attributes
754
755<dl>
756
7ae00c35 757 <dt>The set of requested attributes and their current values for each printer class.
fa73b229 758
759</dl>
760
761<h3 class='title'><a name='CUPS_ADD_MODIFY_CLASS'>CUPS-Add-Modify-Class Operation</a></h3>
762
7ae00c35 763<p>The CUPS-Add-Modify-Class operation (0x4006) adds a new printer class or modifies and existing printer class on the system.
fa73b229 764
765<h4>CUPS-Add-Modify-Class Request</h4>
766
7ae00c35 767<p>The following groups of attributes are supplied as part of the CUPS-Add-Modify-Class request:
fa73b229 768
769<p>Group 1: Operation Attributes
770
771<dl>
772
773 <dt>Natural Language and Character Set:
774
7ae00c35 775 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 776
777 <dt>"printer-uri" (uri):
778
779 <dd>The client MUST supply a URI for the specified printer class.
780
781</dl>
782
783<p>Group 2: Printer Object Attributes
784
785<dl>
786
8072030b 787 <dt>"auth-info-required" (1setOf type2 keyword): <span class='info'>CUPS 1.3/macOS 10.5</span>
f7deaa1a 788
789 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
790
fa73b229 791 <dt>"member-uris" (1setof uri):
792
7ae00c35 793 <dd>The client OPTIONALLY supplies the "member-uris" set specifying the printers and printer classes that are part of the class.
fa73b229 794
795 <dt>"printer-is-accepting-jobs" (boolean):
796
7ae00c35 797 <dd>The client OPTIONALLY supplies this boolean attribute indicating whether the class object should accept new jobs.
fa73b229 798
799 <dt>"printer-info" (text(127)):
800
7ae00c35 801 <dd>The client OPTIONALLY supplies this attribute indicating the printer information string.
fa73b229 802
803 <dt>"printer-location" (text(127)):
804
7ae00c35 805 <dd>The client OPTIONALLY supplies this attribute indicating a textual location of the class.
fa73b229 806
807 <dt>"printer-more-info" (uri):
808
7ae00c35 809 <dd>The client OPTIONALLY supplies this attribute indicating a URI for additional class information.
fa73b229 810
811 <dt>"printer-state" (type2 enum):
812
7ae00c35 813 <dd>The client OPTIONALLY supplies this attribute indicating the initial/current state of the class. Only the 'idle(3)' and 'stopped(5)' enumerations are recognized.
fa73b229 814
815 <dt>"printer-state-message" (text(MAX)):
816
7ae00c35 817 <dd>The client OPTIONALLY supplies this attribute indicating a textual reason for the current class state.
fa73b229 818
819 <dt>"requesting-user-name-allowed" (1setof name(127))
820 <br><i>OR</i>
821 <br>"requesting-user-name-denied" (1setof name(127)):
822
7ae00c35 823 <dd>The client OPTIONALLY supplies one of these attributes to specify an access control list for incoming print jobs. To allow all users access to a class, use the delete tag for the attribute value.
fa73b229 824
825</dl>
826
827<h4>CUPS-Add-Modify-Class Response</h4>
828
829<p>The following groups of attributes are send as part of the CUPS-Add-Modify-Class Response:
830
831<p>Group 1: Operation Attributes
832
833<dl>
834
7ae00c35 835 <dt>Natural Language and Character Set:
fa73b229 836
7ae00c35 837 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 838
7ae00c35 839 <dt>Status Message:
fa73b229 840
7ae00c35 841 <dd>The standard response status message.
fa73b229 842
843</dl>
844
7ae00c35 845
fa73b229 846<h3 class='title'><a name='CUPS_DELETE_CLASS'>CUPS-Delete-Class Operation</a></h3>
847
7ae00c35 848<p>The CUPS-Delete-Class operation (0x4007) removes an existing printer class from the system.
fa73b229 849
850<h4>CUPS-Delete-Class Request</h4>
851
7ae00c35 852<p>The following groups of attributes are supplied as part of the CUPS-Delete-Class request:
fa73b229 853
854<p>Group 1: Operation Attributes
855
856<dl>
857
858 <dt>Natural Language and Character Set:
859
7ae00c35 860 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 861
862 <dt>"printer-uri" (uri):
863
864 <dd>The client MUST supply a URI for the specified printer class.
865
866</dl>
867
868<h4>CUPS-Delete-Class Response</h4>
869
7ae00c35 870<p>The following groups of attributes are send as part of the CUPS-Delete-Class Response:
fa73b229 871
872<p>Group 1: Operation Attributes
873
874<dl>
875
876 <dt>Natural Language and Character Set:
877
7ae00c35 878 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 879
880 <dt>Status Message:
881
882 <dd>The standard response status message.
883
fa73b229 884</dl>
885
fa73b229 886
887<h3 class='title'><a name='CUPS_SET_DEFAULT'>CUPS-Set-Default Operation</a></h3>
888
7ae00c35 889<p>The CUPS-Set-Default operation (0x400A) sets the default printer destination for all clients when a resource name of "/printers" is specified.
fa73b229 890
891<h4>CUPS-Set-Default Request</h4>
892
7ae00c35 893<p>The following groups of attributes are supplied as part of the CUPS-Set-Default request:
fa73b229 894
895<p>Group 1: Operation Attributes
896
897<dl>
898
899 <dt>Natural Language and Character Set:
900
7ae00c35 901 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 902
903 <dt>"printer-uri" (uri):
904
7ae00c35 905 <dd>The client MUST supply a URI for the specified printer or printer class.
fa73b229 906
907</dl>
908
909<h4>CUPS-Set-Default Response</h4>
910
7ae00c35 911<p>The following groups of attributes are send as part of the CUPS-Set-Default Response:
fa73b229 912
913<p>Group 1: Operation Attributes
914
915<dl>
916
7ae00c35 917 <dt>Natural Language and Character Set:
fa73b229 918
7ae00c35 919 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 920
7ae00c35 921 <dt>Status Message:
fa73b229 922
7ae00c35 923 <dd>The standard response status message.
fa73b229 924
925</dl>
926
fa73b229 927
7ae00c35
MS
928<h3 class='title'><span class='info'>Deprecated</span><a name='CUPS_GET_DEVICES'>CUPS-Get-Devices Operation</a></h3>
929
930<p>The CUPS-Get-Devices operation (0x400B) returns all of the supported device-uri's for the server.</p>
fa73b229 931
932<h4>CUPS-Get-Devices Request</h4>
933
7ae00c35 934<p>The following groups of attributes are supplied as part of the CUPS-Get-Devices request:
fa73b229 935
936<p>Group 1: Operation Attributes
937
938<dl>
939
940 <dt>Natural Language and Character Set:
941
7ae00c35 942 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 943
944 <dt>"device-class" (type1 keyword):
945
7ae00c35 946 <dd>The client OPTIONALLY supplies a device class keyword to select which devices are returned.
fa73b229 947
8072030b 948 <dt>"exclude-schemes" (1setOf name): <span class='info'>CUPS 1.4/macOS 10.6</span>
ae71f5de 949
7ae00c35 950 <dd>The client OPTIONALLY supplies a set of scheme names that the requestor does not want to discover. If the client omits this attribute, the server responds with devices of all schemes specified by the "include-schemes" attribute.
ed6e7faf 951
8072030b 952 <dt>"include-schemes" (1setOf name): <span class='info'>CUPS 1.4/macOS 10.6</span>
ed6e7faf 953
7ae00c35 954 <dd>The client OPTIONALLY supplies a set of scheme names that the requestor wants to discover. If the client omits this attribute, the server responds with devices of all schemes except those specified by the "exclude-schemes" attribute.
ae71f5de 955
fa73b229 956 <dt>"limit" (integer (1:MAX)):
957
7ae00c35 958 <dd>The client OPTIONALLY supplies this attribute limiting the number of devices that are returned.
fa73b229 959
7ae00c35 960 <dt>"requested-attributes" (1setOf keyword):
fa73b229 961
7ae00c35 962 <dd>The client OPTIONALLY supplies a set of attribute names and/or attribute group names in whose values the requester is interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'.
fa73b229 963
8072030b 964 <dt>"timeout" (integer (1:MAX)): <span class='info'>CUPS 1.4/macOS 10.6</span>
ae71f5de 965
7ae00c35 966 <dd>The client OPTIONALLY supplies this attribute to limit the duration of the lookup. The default timeout is 15 seconds.
ae71f5de 967
fa73b229 968</dl>
969
970<h4>CUPS-Get-Devices Response</h4>
971
7ae00c35 972<p>The following groups of attributes are send as part of the CUPS-Get-Devices Response:
fa73b229 973
974<p>Group 1: Operation Attributes
975
976<dl>
977
7ae00c35 978 <dt>Natural Language and Character Set:
fa73b229 979
7ae00c35 980 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 981
7ae00c35 982 <dt>Status Message:
fa73b229 983
7ae00c35 984 <dd>The standard response status message.
fa73b229 985
986</dl>
987
7ae00c35 988<p>Groups 2-N: Device Object Attributes (using printer-attributes-tag group)
fa73b229 989
990<dl>
991
992 <dt>The set of requested attributes and their current values for
993 each device.
994
995</dl>
996
fa73b229 997
7ae00c35
MS
998<h3 class='title'><span class='info'>Deprecated</span><a name='CUPS_GET_PPDS'>CUPS-Get-PPDs Operation</a></h3>
999
1000<p>The CUPS-Get-PPDs operation (0x400C) returns all of the locally available PPD files on the system.</p>
fa73b229 1001
1002<h4>CUPS-Get-PPDs Request</h4>
1003
7ae00c35 1004<p>The following groups of attributes are supplied as part of the CUPS-Get-PPDs request:
fa73b229 1005
1006<p>Group 1: Operation Attributes
1007
1008<dl>
1009
1010 <dt>Natural Language and Character Set:
1011
7ae00c35 1012 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 1013
8072030b 1014 <dt>"exclude-schemes" (1setOf name): <span class='info'>CUPS 1.4/macOS 10.6</span>
ed6e7faf 1015
7ae00c35 1016 <dd>The client OPTIONALLY supplies a set of scheme names that the requestor does not want to list. If the client omits this attribute, the server responds with PPDs of all schemes specified by the "include-schemes" attribute.
ed6e7faf 1017
8072030b 1018 <dt>"include-schemes" (1setOf name): <span class='info'>CUPS 1.4/macOS 10.6</span>
ed6e7faf 1019
7ae00c35 1020 <dd>The client OPTIONALLY supplies a set of scheme names that the requestor wants to list. If the client omits this attribute, the server responds with PPDs of all schemes except those specified by the "exclude-schemes" attribute.
ed6e7faf 1021
fa73b229 1022 <dt>"limit" (integer (1:MAX)):
1023
3d8365b8 1024 <dd>The client OPTIONALLY supplies this attribute limiting the number of PPDs that are returned.
fa73b229 1025
1026 <dt>"ppd-make" (text(127)):
1027
3d8365b8 1028 <dd>The client OPTIONALLY supplies a printer manufacturer to select which PPDs are returned.
1029
8072030b 1030 <dt>"ppd-make-and-model" (text(127)): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1031
1032 <dd>The client OPTIONALLY supplies a make and model to select which PPDs are returned.
1033
8072030b 1034 <dt>"ppd-model-number" (integer): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1035
1036 <dd>The client OPTIONALLY supplies a model number to select which PPDs are returned.
1037
8072030b 1038 <dt>"ppd-natural-language" (naturalLanguage): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1039
1040 <dd>The client OPTIONALLY supplies a language to select which PPDs are returned.
1041
8072030b 1042 <dt>"ppd-product" (text(127)): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1043
1044 <dd>The client OPTIONALLY supplies a PostScript product string to select which PPDs are returned.
1045
8072030b 1046 <dt>"ppd-psversion" (text(127)): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1047
1048 <dd>The client OPTIONALLY supplies a PostScript version string to select which PPDs are returned.
1049
8072030b 1050 <dt>"ppd-type" (type1 keyword): <span class='info'>CUPS 1.3/macOS 10.5</span>
3d8365b8 1051
1052 <dd>The client OPTIONALLY supplies a driver type to select which PPDs are returned.
fa73b229 1053
7ae00c35 1054 <dt>"requested-attributes" (1setOf keyword):
fa73b229 1055
3d8365b8 1056 <dd>The client OPTIONALLY supplies a set of attribute names and/or attribute group names in whose values the requester is interested. If the client omits this attribute, the server responds as if this attribute had been supplied with a value of 'all'. Specify "ppd-make" to get a list of manufacturers.
fa73b229 1057
1058</dl>
1059
1060<h4>CUPS-Get-PPDs Response</h4>
1061
1062<p>The following groups of attributes are send as part of the
1063CUPS-Get-PPDs Response:
1064
1065<p>Group 1: Operation Attributes
1066
1067<dl>
1068
7ae00c35 1069 <dt>Natural Language and Character Set:
fa73b229 1070
7ae00c35 1071 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 1072
7ae00c35 1073 <dt>Status Message:
fa73b229 1074
7ae00c35 1075 <dd>The standard response status message.
fa73b229 1076
1077</dl>
1078
7ae00c35 1079<p>Groups 2-N: PPD Attributes (using printer-attributes-tag group)
fa73b229 1080
1081<dl>
1082
7ae00c35 1083 <dt>The set of requested attributes and their current values for each PPD file.
fa73b229 1084
1085</dl>
1086
7ae00c35 1087
fa73b229 1088<h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_MOVE_JOB'>CUPS-Move-Job Operation</a></h3>
1089
7ae00c35 1090<p>The CUPS-Move-Job operation (0x400D) moves an active print job or all print jobs for a printer to a different printer.</p>
fa73b229 1091
1092<h4>CUPS-Move-Job Request</h4>
1093
7ae00c35 1094<p>The following groups of attributes are supplied as part of the CUPS-Move-Job request:
fa73b229 1095
1096<p>Group 1: Operation Attributes
1097
1098<dl>
1099
1100 <dt>Natural Language and Character Set:
1101
7ae00c35 1102 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 1103
68b10830
MS
1104 <dt>"printer-uri" (uri)
1105 <br><i>OR</i>
fa73b229 1106 <dt>"printer-uri" (uri) and "job-id" (integer)
1107 <br><i>OR</i>
7ae00c35 1108 <br>"job-uri" (uri):
fa73b229 1109
7ae00c35 1110 <dd>The client MUST supply a URI for the specified printer, the URI for the specified printer and a job ID number, or the job URI.
fa73b229 1111
1112</dl>
1113
1114<p>Group 2: Job Template Attributes
1115
1116<dl>
1117
7ae00c35 1118 <dt>"job-printer-uri" (uri):
fa73b229 1119
1120 <dd>The client MUST supply a URI for a printer on the same server.
1121
1122</dl>
1123
1124<h4>CUPS-Move-Job Response</h4>
1125
7ae00c35 1126<p>The following groups of attributes are send as part of the CUPS-Move-Job Response:
fa73b229 1127
1128<p>Group 1: Operation Attributes
1129
1130<dl>
1131
1132 <dt>Status Message:
1133
1134 <dd>The standard response status message.
1135
1136 <dt>Natural Language and Character Set:
1137
7ae00c35 1138 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 1139
1140</dl>
1141
8072030b 1142<h3 class='title'><span class='info'>CUPS 1.2/macOS 10.5</span><a name='CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job Operation</a></h3>
fa73b229 1143
7ae00c35 1144<p>The CUPS-Authenticate-Job operation (0x400E) authenticates a print job for printing, releasing the job if it is held. Typically this is used when printing to a remote server. The authentication information is passed in the HTTP request; the HTTP connection is normally encrypted for this type of request.</p>
fa73b229 1145
1146<h4>CUPS-Authenticate-Job Request</h4>
1147
7ae00c35 1148<p>The following groups of attributes are supplied as part of the CUPS-Authenticate-Job request:
fa73b229 1149
1150<p>Group 1: Operation Attributes
1151
1152<dl>
1153
1154 <dt>Natural Language and Character Set:
1155
7ae00c35 1156 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 1157
1158 <dt>"printer-uri" (uri) and "job-id" (integer)
1159 <br><i>OR</i>
7ae00c35 1160 <br>"job-uri" (uri):
fa73b229 1161
7ae00c35 1162 <dd>The client MUST supply a URI for the specified printer and a job ID number, or the job URI.
fa73b229 1163
1164</dl>
1165
f7deaa1a 1166<p>Group 2: Job Attributes
1167
1168<dl>
1169
8072030b 1170 <dt>"auth-info" (1setOf text(MAX)): <span class='info'>CUPS 1.3/macOS 10.5</span>
f7deaa1a 1171
1172 <dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
1173
8072030b 1174 <dt>"job-hold-until" (keyword | name(MAX)): <span class='info'>CUPS 1.3/macOS 10.5</span>
94da7e34 1175
7ae00c35 1176 <dd>The client OPTIONALLY supplies a new job-hold-until value for the job. If specified and not the "no-hold" value, the job is held instead of released for printing.
94da7e34 1177
f7deaa1a 1178</dl>
1179
fa73b229 1180<h4>CUPS-Authenticate-Job Response</h4>
1181
7ae00c35 1182<p>The following groups of attributes are send as part of the CUPS-Authenticate-Job Response:
fa73b229 1183
1184<p>Group 1: Operation Attributes
1185
1186<dl>
1187
7ae00c35 1188 <dt>Natural Language and Character Set:
fa73b229 1189
7ae00c35 1190 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 1191
7ae00c35 1192 <dt>Status Message:
fa73b229 1193
7ae00c35 1194 <dd>The standard response status message.
fa73b229 1195
1196</dl>
1197
f7deaa1a 1198<p>Group 2: Unsupported Attributes (status=client-eror-attributes-or-values-not-supported)
1199
1200<dl>
1201
1202 <dt>auth-info-required (1setOf Type2 keyword)
1203
1204 <dd>The required authentication information.
1205
d2354e63 1206</dl>
f7deaa1a 1207
b94498cf 1208
7ae00c35
MS
1209<h3 class='title'><span class='info'>Deprecated</span><a name='CUPS_GET_PPD'>CUPS-Get-PPD Operation</a></h3>
1210
1211<p>The CUPS-Get-PPD operation (0x400F) gets a PPD file from the server. The PPD file can be specified using a <tt>ppd-name</tt> returned by <a href='#CUPS_GET_PPDS'><tt>CUPS-Get-PPDs</tt></a> or using the <tt>printer-uri</tt> for a queue.</p>
b94498cf 1212
7ae00c35 1213<p>If the PPD file is found, <tt>successful-ok</tt> is returned with the PPD file following the response data.</p>
b94498cf 1214
7ae00c35 1215<p>If the PPD file cannot be served by the local server because the <tt>printer-uri</tt> attribute points to an external printer, a <tt>cups-see-other</tt> status is returned with the correct URI to use.</p>
b94498cf 1216
7ae00c35 1217<p>If the PPD file does not exist, <tt>client-error-not-found</tt> is returned.</p>
b94498cf 1218
1219<h4>CUPS-Get-PPD Request</h4>
1220
7ae00c35 1221<p>The following group of attributes is supplied as part of the CUPS-Get-PPD request:
b94498cf 1222
1223<p>Group 1: Operation Attributes
1224
1225<dl>
1226
1227 <dt>Natural Language and Character Set:
1228
7ae00c35 1229 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
b94498cf 1230
1231 <dt>"printer-uri" (uri)
1232 <br><i>OR</i>
1233 <br>"ppd-name" (name(255)):
1234
1235 <dd>The client MUST supply a printer URI or PPD name.
1236
1237</dl>
1238
1239<h4>CUPS-Get-PPD Response</h4>
1240
7ae00c35 1241<p>The following group of attributes is sent as part of the CUPS-Get-PPD Response:
b94498cf 1242
1243<p>Group 1: Operation Attributes
1244
1245<dl>
1246
7ae00c35 1247 <dt>Natural Language and Character Set:
b94498cf 1248
7ae00c35 1249 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
b94498cf 1250
7ae00c35 1251 <dt>Status Message:
b94498cf 1252
7ae00c35 1253 <dd>The standard response status message.
b94498cf 1254
1255 <dt>"printer-uri" (uri):
1256
7ae00c35 1257 <dd>The printer that provides the actual PPD file when the status code is cups-see-other (0x280).
b94498cf 1258
1259</dl>
1260
7ae00c35
MS
1261<p>If the status code is <tt>successful-ok</tt>, the PPD file follows the end of the IPP response.</p>
1262
b94498cf 1263
8072030b 1264<h3 class='title'><span class='info'>CUPS 1.4/macOS 10.6</span><a name='CUPS_GET_DOCUMENT'>CUPS-Get-Document Operation</a></h3>
2e4ff8af 1265
7ae00c35 1266<p>The CUPS-Get-Document operation (0x4027) gets a document file from a job on the server. The document file is specified using the <tt>document-number</tt> and either the <tt>job-uri</tt> or <tt>printer-uri</tt> and <tt>job-id</tt> identifying the job.</p>
2e4ff8af 1267
7ae00c35 1268<p>If the document file is found, <tt>successful-ok</tt> is returned with the document file following the response data.</p>
2e4ff8af 1269
7ae00c35 1270<p>If the document file does not exist, <tt>client-error-not-found</tt> is returned.</p>
2e4ff8af 1271
7ae00c35 1272<p>If the requesting user does not have access to the document file, <tt>client-error-not-authorized</tt> is returned.
2e4ff8af
MS
1273
1274<h4>CUPS-Get-Document Request</h4>
1275
7ae00c35 1276<p>The following group of attributes is supplied as part of the CUPS-Get-Document request:
2e4ff8af
MS
1277
1278<p>Group 1: Operation Attributes
1279
1280<dl>
1281
1282 <dt>Natural Language and Character Set:
1283
7ae00c35 1284 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
2e4ff8af
MS
1285
1286 <dt>"printer-uri" (uri) and "job-id" (integer)
1287 <br><i>OR</i>
1288 <br>"job-uri" (uri):
1289
1290 <dd>The client MUST supply a printer URI and job ID or job URI.
1291
1292 <dt>"document-number" (integer(1:MAX)):
1293
7ae00c35 1294 <dd>The client MUST supply a document number to retrieve. The <tt>document-count</tt> attribute for the job defines the maximum document number that can be specified. In the case of jobs with banners (<tt>job-sheets</tt> is not "none"), document number 1 will typically contain the start banner and document number N will typically contain the end banner.
2e4ff8af
MS
1295
1296</dl>
1297
1298<h4>CUPS-Get-Document Response</h4>
1299
7ae00c35 1300<p>The following group of attributes is sent as part of the CUPS-Get-Document Response:
2e4ff8af
MS
1301
1302<p>Group 1: Operation Attributes
1303
1304<dl>
1305
7ae00c35 1306 <dt>Natural Language and Character Set:
2e4ff8af 1307
7ae00c35 1308 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
2e4ff8af 1309
7ae00c35 1310 <dt>Status Message:
2e4ff8af 1311
7ae00c35 1312 <dd>The standard response status message.
2e4ff8af
MS
1313
1314 <dt>"document-format" (mimeType):
1315
1316 <dd>The format of the document file.
1317
1318 <dt>"document-number" (integer(1:MAX)):
1319
1320 <dd>The requested document number.
1321
1322 <dt>"document-name" (name(MAX)):
1323
1324 <dd>The name that was supplied with the document, if any.
1325
1326</dl>
1327
7ae00c35 1328<p>If the status code is <tt>successful-ok</tt>, the document file follows the end of the IPP response.</p>
2e4ff8af 1329
b94498cf 1330
7ae00c35 1331<h3 class='title'><a name='CUPS_CREATE_LOCAL_PRINTER'>CUPS-Create-Local-Printer</a></h3>
fa73b229 1332
95ece0cb
MS
1333<p>The CUPS-Create-Local-Printer operation (0x4028) creates a local (temporary) print queue pointing to a remote IPP Everywhere Printer. The queue will remain until the scheduler idle exits, is restarted, or the system is restarted or shutdown. Temporary print queues can be made permanent by an administrator by setting the "printer-is-shared" attribute to 'true'.</p>
1334
1335<p>At a minimum, the scheduler requires a name and URI for the Printer to add. When successful, the local "printer-uri" values are returned and may be used by the Client to submit Job Creation Requests, monitor for state changes, and so forth.</p>
1336
46385a1a
MS
1337<p>If the named printer already exists, the scheduler will reject the request with the 'client-error-not-possible' status code.</p>
1338
95ece0cb 1339<p>Access Rights: The authenticated user performing this operation MUST be a Local User of the system, and the request MUST be made over a local (domain socket or loopback interface) address. Otherwise, the request will be rejected with the 'client-error-forbidden' status code.</p>
fa73b229 1340
7ae00c35 1341<h4>CUPS-Create-Local-Printer Request</h4>
fa73b229 1342
7ae00c35 1343<p>The following group of attributes is supplied as part of the CUPS-Create-Local-Printer request:
fa73b229 1344
7ae00c35 1345<p>Group 1: Operation Attributes
fa73b229 1346
7ae00c35 1347<dl>
fa73b229 1348
7ae00c35 1349 <dt>Natural Language and Character Set:
fa73b229 1350
7ae00c35 1351 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.1 of the IPP Model and Semantics document.
fa73b229 1352
7ae00c35 1353</dl>
fa73b229 1354
7ae00c35 1355<p>Group 2: Printer Attributes
fa73b229 1356
7ae00c35 1357<dl>
fa73b229 1358
95ece0cb
MS
1359 <dt>"printer-name" (name(127)):
1360
1361 <dd>The Client MUST supply this attribute which provides the name for the new Printer.
1362
7ae00c35 1363 <dt>"device-uri" (uri):
fa73b229 1364
95ece0cb 1365 <dd>The Client MUST supply this attribute which provides an "ipp" or "ipps" URI pointing to an IPP Everywhere Printer.
fa73b229 1366
7ae00c35 1367 <dt>"printer-device-id" (text(1023)):
fa73b229 1368
95ece0cb 1369 <dd>The Client OPTIONALLY supplies this attribute which provides the IEEE 1284 device ID for the new Printer.
fa73b229 1370
7ae00c35 1371 <dt>"printer-geo-location" (uri):
fa73b229 1372
95ece0cb 1373 <dd>The Client OPTIONALLY supplies this attribute which provides the geo-location of the new Printer as a "geo" URI.
749b1e90 1374
7ae00c35 1375 <dt>"printer-info" (text(127)):
749b1e90 1376
95ece0cb 1377 <dd>The Client OPTIONALLY supplies this attribute which provides the description for the new Printer.
fa73b229 1378
7ae00c35 1379 <dt>"printer-location" (text(127)):
fa73b229 1380
95ece0cb 1381 <dd>The Client OPTIONALLY supplies this attribute which provides the location of the new Printer.
fa73b229 1382
7ae00c35 1383</dl>
fa73b229 1384
7ae00c35 1385<h4>CUPS-Create-Local-Printer Response</h4>
fa73b229 1386
7ae00c35 1387<p>The following group of attributes is sent as part of the CUPS-Create-Local-Printer Response:
fa73b229 1388
7ae00c35 1389<p>Group 1: Operation Attributes
f7deaa1a 1390
7ae00c35 1391<dl>
f7deaa1a 1392
7ae00c35 1393 <dt>Natural Language and Character Set:
fa73b229 1394
7ae00c35 1395 <dd>The "attributes-charset" and "attributes-natural-language" attributes as described in section 3.1.4.2 of the IPP Model and Semantics document.
fa73b229 1396
7ae00c35 1397 <dt>Status Message:
ed6e7faf 1398
7ae00c35 1399 <dd>The standard response status message.
ed6e7faf 1400
95ece0cb
MS
1401</dl>
1402
1403<p>Group 2: Printer Attributes
1404
1405<dl>
1406
1407 <dt>"printer-id" (integer(0:65535)):
1408
1409 <dd>The numeric identifier for the created Printer.
1410
7ae00c35 1411 <dt>"printer-is-accepting-jobs" (boolean):
fa73b229 1412
95ece0cb 1413 <dd>Whether the created Printer is accepting jobs at the time of the response.
fa73b229 1414
7ae00c35 1415 <dt>"printer-state" (type1 enum):
5f1456af 1416
95ece0cb 1417 <dd>The state of the created Printer at the time of the response.
982069db 1418
7ae00c35 1419 <dt>"printer-state-reasons" (1setOf type2 keyword):
982069db 1420
95ece0cb 1421 <dd>The state keywords for the created Printer at the time of the response.
fa73b229 1422
7ae00c35 1423 <dt>"printer-uri-supported" (1setOf uri):
fa73b229 1424
95ece0cb 1425 <dd>The URIs for the created Printer.
9a4f8274 1426
7ae00c35 1427</dl>
9a4f8274 1428
bc44d920 1429
7ae00c35 1430<h2 class='title'><a name='ATTRIBUTES'>Attributes</a></h2>
bc44d920 1431
7ae00c35 1432<p>CUPS provides many extension attributes to support multiple devices, PPD files, standard job filters, printers, and printer classes.</p>
bc44d920 1433
7ae00c35 1434<h3 class='title'><a name='DEVICE_ATTRIBUTES'>Device Attributes</a><span class="info">Deprecated</span></h3>
bc44d920 1435
7ae00c35
MS
1436<p>Device attributes are returned by the CUPS-Get-Devices operation and enumerate all of the available hardware devices and network protocols that are supported by the server. Device attributes are reported in the printer-attributes-tag group.</p>
1437
1438<h4><a name="device-class">device-class (type2 keyword)</a><span class="info">Deprecated</span></h4>
fa73b229 1439
7ae00c35 1440<p>The "device-class" attribute provides the class of device and can be one of the following:
fa73b229 1441
7ae00c35 1442<ul>
fa73b229 1443
7ae00c35 1444 <li>'file': A disk file.
fa73b229 1445
7ae00c35
MS
1446 <li>'direct': A parallel or fixed-rate serial data port,
1447 currently used for Centronics, IEEE-1284, and USB printer
1448 ports.
fa73b229 1449
7ae00c35 1450 <li>'serial': A variable-rate serial port.
fa73b229 1451
7ae00c35 1452 <li>'network': A network connection, typically via AppSocket, HTTP, IPP, LPD, or SMB/CIFS protocols.
fa73b229 1453
7ae00c35 1454</ul>
fa73b229 1455
7ae00c35 1456<h4><a name="device-id">device-id (text(1023))</a><span class="info">Deprecated</span></h4>
fa73b229 1457
7ae00c35 1458<p>The "device-id" attribute provides the IEEE-1284 device ID string for the device.</p>
fa73b229 1459
7ae00c35 1460<h4><a name="device-info">device-info (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1461
7ae00c35 1462<p>The "device-info" attribute specifies a human-readable string describing the device, e.g., 'Parallel Port #1'.
fa73b229 1463
7ae00c35 1464<h4><a name="device-location">device-location (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1465
7ae00c35 1466<p>The "device-location" attribute specifies the physical location of the printer, e.g., '2nd Floor Computer Lab'.
fa73b229 1467
7ae00c35 1468<h4><a name="device-make-and-model">device-make-and-model (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1469
7ae00c35 1470<p>The "device-make-and-model" attribute specifies a device identification string provided by the printer connected to the device. If the device or printer does not support identification then this attribute contains the string 'unknown'.
fa73b229 1471
7ae00c35
MS
1472<h4><a name="device-uri">device-uri (uri)</a></h4>
1473
1474<p>The "device-uri" attribute specifies a unique identifier for the device. The actual format of the "device-uri" string depends on the value of the "device-class" attribute:
1475
1476<ul>
fa73b229 1477
7ae00c35 1478 <li>'file': The "device-uri" will be of the form 'file:///path/to/filename'.
fa73b229 1479
7ae00c35 1480 <li>'direct': The "device-uri" will be of the form 'scheme:/dev/filename' or 'scheme://vendor/identifier', where scheme may be 'parallel' or 'usb' in the current implementation.
fa73b229 1481
7ae00c35 1482 <li>'serial': The "device-uri" will be of the form 'serial:/dev/filename?baud=value+parity=value+flow=value'. The baud value is the data rate in bits per second; the supported values depend on the underlying hardware. The parity value can be one of "none", "even", or "odd". The flow value can be one of "none", "soft" (XON/XOFF handshaking), "hard" or "rts/cts" (RTS/CTS handshaking), or "dtrdsr" (DTR/DSR handshaking).
fa73b229 1483
7ae00c35 1484 <p>The URI returned by CUPS-Get-Devices will contain the maximum baud rate supported by the device and the best type of flow control available ("soft" or "hard").
fa73b229 1485
7ae00c35
MS
1486 <li>'network': The "device-uri" will be of the form 'scheme://[username:password@]hostname[:port]/[resource]', where scheme may be "http", "https", "ipp", "lpd", "smb", or "socket" in the current implementation.
1487
1488 <p>The URI returned by CUPS-Get-Devices MAY only contain the scheme name ('scheme'). It is up to the client application to add the appropriate host and other information when adding a new printer.
1489
1490 <p>The URI returned by Get-Printer-Attributes and CUPS-Get-Printers has any username and password information stripped; the information is still stored and used by the server internally to perform any needed authentication.
fa73b229 1491
1492</ul>
1493
12f89d24 1494
7ae00c35 1495<h3 class='title'><a name='JOB_ATTRIBUTES'>Job Attributes</a></h3>
12f89d24 1496
8072030b 1497<h4><a name="auth-info">auth-info (1setOf text(MAX))</a><span class="info">CUPS 1.3/macOS 10.5</span></h4>
12f89d24 1498
7ae00c35 1499<p>The "auth-info" attribute specifies the authentication information to use when printing to a remote device. The order and content of each text value is specifed by the <a href="#auth-info-required">auth-info-required</a> printer attribute.
fa73b229 1500
7ae00c35 1501<h4><a name="job-cancel-after">job-cancel-after (integer(1:MAX))</a><span class='info'>CUPS 2.0</span></h4>
fa73b229 1502
7ae00c35 1503<p>The "job-cancel-after" attribute provides the maximum number of seconds that are allowed for processing a job.</p>
fa73b229 1504
7ae00c35 1505<h4><a name="job-hold-until">job-hold-until (keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
fa73b229 1506
7ae00c35 1507<p>The "job-hold-until" attribute specifies a hold time. In addition to the standard IPP/1.1 keyword names, CUPS supports name values of the form "HH:MM" and "HH:MM:SS" that specify a hold time. The hold time is in Universal Coordinated Time (UTC) and <i>not</i> in the local time zone. If the specified time is less than the current time, the job is held until the next day.
fa73b229 1508
8072030b 1509<h4><a name="job-media-progress">job-media-progress (integer(0:100))</a><span class='info'>CUPS 1.4/macOS 10.6</span></h4>
fa73b229 1510
7ae00c35 1511<p>The "job-media-progress" status attribute specifies the percentage of completion of the current page. It is only valid when the "job-state" attribute has the 'processing(5)' value.</p>
fa73b229 1512
8072030b 1513<h4><a name="job-printer-state-message">job-printer-state-message (text(MAX))</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
7ae00c35
MS
1514
1515<p>The "job-printer-state-message" status attribute provides the last known value of the "printer-state-message" attribute for the printer that processed (or is processing) the job.</p>
1516
8072030b 1517<h4><a name="job-printer-state-reasons">job-printer-state-reasons (1setOf type2 keyword)</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
7ae00c35
MS
1518
1519<p>The "job-printer-state-reasons" status attribute provides the last known value of the "printer-state-reasons" attribute for the printer that processed (or is processing) the job.</p>
1520
1521<h4><a name="job-sheets">job-sheets (1setof type3 keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
1522
1523<p>The "job-sheets" attribute specifies one or two banner files that are printed before and after a job. The reserved value of "none" disables banner printing. The default value is stored in the "job-sheets-default" attribute.
1524
1525<p>If only one value is supplied, the banner file is printed before the job. If two values are supplied, the first value is used as the starting banner file and the second as the ending banner file.
fa73b229 1526
8072030b 1527<h4><a name="job-originating-host-name">job-originating-host-name (name(MAX))</a><span class='info'>CUPS 1.1.5/macOS 10.2</span></h4>
fa73b229 1528
7ae00c35 1529<p>The "job-originating-host-name" status attribute specifies the host from which the job was queued. The value will be the hostname or IP address of the client depending on whether hostname resolution is enabled. The localhost address (127.0.0.1) is <b>always</b> resolved to the name "localhost".
fa73b229 1530
7ae00c35 1531<p>This attribute is read-only.
fa73b229 1532
7ae00c35 1533<h4><a name="page-border">page-border (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
fa73b229 1534
7ae00c35 1535<p>The "page-border" attribute specifies whether a border is draw around each page. The following keywords are presently defined:
fa73b229 1536
7ae00c35 1537<ul>
fa73b229 1538
7ae00c35 1539 <li>'double': Two hairline borders are drawn</li>
fa73b229 1540
7ae00c35 1541 <li>'double-thick': Two 1pt borders are drawn</li>
fa73b229 1542
7ae00c35 1543 <li>'none': No border is drawn (default)</li>
fa73b229 1544
7ae00c35 1545 <li>'single': A single hairline border is drawn</li>
fa73b229 1546
7ae00c35 1547 <li>'single-thick': A single 1pt border is drawn</li>
fa73b229 1548
7ae00c35 1549</ul>
fa73b229 1550
7ae00c35 1551<h4><a name="page-set">page-set (type2 keyword)</a><span class="info">Deprecated</span></h4>
fa73b229 1552
7ae00c35 1553<p>The "page-set" attribute specifies which pages to print in a file. The supported keywords are 'all', 'even', and 'odd'. The default value is 'all'.
fa73b229 1554
7ae00c35 1555<h3 class='title'><a name='PPD_ATTRIBUTES'>PPD Attributes</a><span class="info">Deprecated</span></h3>
fa73b229 1556
7ae00c35 1557<p>PPD attributes are returned in the printer-attributes-tag group.
fa73b229 1558
7ae00c35 1559<h4><a name="ppd-device-id">ppd-device-id (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1560
7ae00c35 1561<p>The "ppd-device-id" attribute specifies the IEEE-1284 device ID string for the device described by the PPD file.</p>
fa73b229 1562
7ae00c35 1563<h4><a name="ppd-make">ppd-make (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1564
7ae00c35 1565<p>The "ppd-make" attribute specifies the manufacturer of the printer (the Manufacturer attribute in the PPD file). If the manufacturer is not specified in the PPD file then an educated guess is made using the NickName attribute in the PPD file.
fa73b229 1566
7ae00c35 1567<h4><a name="ppd-make-and-model">ppd-make-and-model (text(127))</a><span class="info">Deprecated</span></h4>
fa73b229 1568
7ae00c35 1569<p>The "ppd-make-and-model" attribute specifies the manufacturer and model name of the PPD file (the NickName attribute in the PPD file). If the make and model is not specified in the PPD file then the ModelName or ShortNickName attributes are used instead.
fa73b229 1570
7ae00c35 1571<h4><a name="ppd-model-number">ppd-model-number (integer)</a><span class="info">Deprecated</span></h4>
3d8365b8 1572
7ae00c35 1573<p>The "ppd-model-number" attribute provides the <tt>cupsModelNumber</tt> value from the PPD file.
3d8365b8 1574
7ae00c35 1575<h4><a name="ppd-name">ppd-name (name(255))</a><span class="info">Deprecated</span></h4>
fa73b229 1576
7ae00c35 1577<p>The "ppd-name" attribute specifies either the PPD filename on the server relative to the model directory or a URI that maps to a specific driver interface in the driver directory. The forward slash (/) is used to delineate directories.
fa73b229 1578
7ae00c35 1579<h4><a name="ppd-natural-language">ppd-natural-language (1setOf naturalLanguage)</a><span class="info">Deprecated</span></h4>
f899b121 1580
7ae00c35 1581<p>The "ppd-natural-language" attribute specifies the language encoding of the PPD file (the LanguageVersion attribute in the PPD file). If the language is unknown or undefined then "en" (English) is assumed.
f899b121 1582
7ae00c35 1583<h4><a name="ppd-product">ppd-product (1setOf text(127))</a><span class="info">Deprecated</span></h4>
b94498cf 1584
7ae00c35 1585<p>The "ppd-product" attribute specifies the Product attribute values in the PPD file.
b94498cf 1586
7ae00c35 1587<h4><a name="ppd-psversion">ppd-psversion (1setOf text(127))</a><span class="info">Deprecated</span></h4>
f899b121 1588
7ae00c35 1589<p>The "ppd-product" attribute specifies the PSVersion attribute values in the PPD file.
f899b121 1590
7ae00c35 1591<h4><a name="ppd-type">ppd-type (type1 keyword)</a><span class="info">Deprecated</span></h4>
3d8365b8 1592
7ae00c35 1593<p>The "ppd-type" attribute specifies the type of driver described by the PPD file:</p>
3d8365b8 1594
1595<ul>
1596
7ae00c35 1597 <li>'fax': A facsimile or multi-function device</li>
3d8365b8 1598
7ae00c35 1599 <li>'pdf': A PDF printer</li>
3d8365b8 1600
7ae00c35 1601 <li>'postscript': A PostScript printer (no filters)</li>
3d8365b8 1602
7ae00c35 1603 <li>'raster': A CUPS raster driver</li>
3d8365b8 1604
7ae00c35 1605 <li>'unknown': An unknown or hybrid driver</li>
3d8365b8 1606
1607</ul>
1608
f899b121 1609
fa73b229 1610<h3 class='title'><a name='PRINTER_ATTRIBUTES'>Printer Attributes</a></h3>
1611
8072030b 1612<h4><a name="auth-info-required">auth-info-required (1setOf type2 keyword)</a><span class="info">CUPS 1.3/macOS 10.5</span></h4>
f7deaa1a 1613
7ae00c35 1614<p>The "auth-info-required" attribute specifies the authentication information that is required for printing a job. The following keywords are recognized:</p>
f7deaa1a 1615
1616<ul>
1617
7ae00c35 1618 <li>'domain': A domain name is required.</li>
f7deaa1a 1619
7ae00c35 1620 <li>'none': No authentication is required - this keyword can only appear by itself.</li>
f7deaa1a 1621
7ae00c35 1622 <li>'password': A password is required.</li>
f7deaa1a 1623
7ae00c35 1624 <li>'username': A username is required.</li>
f7deaa1a 1625
1626</ul>
1627
1628<h4><a name="job-k-limit">job-k-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
fa73b229 1629
7ae00c35 1630<p>The "job-k-limit" attribute specifies the maximum number of kilobytes that may be printed by a user, including banner files. The default value of 0 specifies that there is no limit.
fa73b229 1631
f7deaa1a 1632<h4><a name="job-page-limit">job-page-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
fa73b229 1633
7ae00c35 1634<p>The "job-page-limit" attribute specifies the maximum number of pages that may be printed by a user, including banner files. The default value of 0 specifies that there is no limit.
fa73b229 1635
f7deaa1a 1636<h4><a name="job-quota-period">job-quota-period (integer)</a><span class='info'>CUPS 1.1</span></h4>
fa73b229 1637
7ae00c35 1638<p>The "job-quota-period" attribute specifies the time period used for quota calculations, in seconds. The default value of 0 specifies that the limits apply to all jobs that have been printed by a user that are still known to the system.
fa73b229 1639
8072030b 1640<h4><a name="marker-change-time">marker-change-time (integer)</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
5a738aea 1641
7ae00c35 1642<p>The "marker-change-time" status attribute specifies the "printer-up-time" value when the last change to the marker-colors, marker-levels, marker-message, marker-names, or marker-types attributes was made.</p>
5a738aea 1643
8072030b 1644<h4><a name="marker-colors">marker-colors (1setof name(MAX))</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
5a738aea 1645
7ae00c35 1646<p>The "marker-colors" status attribute specifies the color(s) for each supply in the printer. It is only available when the driver provides supply levels. The color is either 'none' or one or more hex-encoded sRGB colors of the form '#RRGGBB'.</p>
5a738aea 1647
8072030b 1648<h4><a name="marker-high-levels">marker-high-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/macOS 10.6</span></h4>
ed6e7faf 1649
7ae00c35 1650<p>The "marker-high-levels" status attribute specifies the supply levels that indicate a near-full condition. A value of 100 should be used for supplies that are consumed/emptied, e.g. ink cartridges.</p>
ed6e7faf 1651
8072030b 1652<h4><a name="marker-levels">marker-levels (1setof integer(-3:100))</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
5a738aea 1653
7ae00c35 1654<p>The "marker-levels" status attribute specifies the current supply levels for the printer. It is only available when the driver provides supply levels. A value of -1 indicates the level is unavailable, -2 indicates unknown, and -3 indicates the level is unknown but has not yet reached capacity. Values from 0 to 100 indicate the corresponding percentage.</p>
5a738aea 1655
8072030b 1656<h4><a name="marker-low-levels">marker-low-levels (1setof integer(0:100))</a><span class='info'>CUPS 1.4/macOS 10.6</span></h4>
ed6e7faf 1657
7ae00c35 1658<p>The "marker-low-levels" status attribute specifies the supply levels that indicate a near-empty condition. A value of 0 should be used for supplies that are filled, e.g. waste ink tanks.</p>
ed6e7faf 1659
8072030b 1660<h4><a name="marker-message">marker-message (text(MAX))</a><span class='info'>CUPS 1.4/macOS 10.6</span></h4>
75bd9771 1661
7ae00c35 1662<p>The "marker-message" status attribute provides a human-readable status message for the current supply levels, e.g. "12 pages of ink remaining." It is only available when the driver provides supply levels.</p>
75bd9771 1663
8072030b 1664<h4><a name="marker-names">marker-names (1setof name(MAX))</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
5a738aea 1665
7ae00c35 1666<p>The "marker-names" status attribute specifies the name(s) for each supply in the printer. It is only available when the driver provides supply levels.</p>
5a738aea 1667
8072030b 1668<h4><a name="marker-types">marker-types (1setof type3 keyword)</a><span class='info'>CUPS 1.3/macOS 10.5</span></h4>
5a738aea 1669
7ae00c35 1670<p>The "marker-types" status attribute specifies the type(s) of each supply in the printer. It is only available when the driver provides supply levels. The following (RFC 3805) types are currently supported:</p>
5a738aea
MS
1671
1672<ul>
1673
7ae00c35 1674 <li>'toner'</li>
5a738aea 1675
7ae00c35 1676 <li>'waste-toner'</li>
5a738aea 1677
7ae00c35 1678 <li>'ink'</li>
5a738aea 1679
7ae00c35 1680 <li>'ink-cartridge'</li>
5a738aea 1681
7ae00c35 1682 <li>'ink-ribbon'</li>
5a738aea 1683
7ae00c35 1684 <li>'waste-ink'</li>
5a738aea 1685
7ae00c35 1686 <li>'opc'</li>
5a738aea 1687
7ae00c35 1688 <li>'developer'</li>
5a738aea 1689
7ae00c35 1690 <li>'fuser-oil'</li>
5a738aea 1691
7ae00c35 1692 <li>'solid-wax'</li>
5a738aea 1693
7ae00c35 1694 <li>'ribbon-wax'</li>
5a738aea 1695
7ae00c35 1696 <li>'waste-wax'</li>
5a738aea 1697
7ae00c35 1698 <li>'fuser'</li>
5a738aea 1699
7ae00c35 1700 <li>'corona-wire'</li>
5a738aea 1701
7ae00c35 1702 <li>'fuser-oil-wick'</li>
5a738aea 1703
7ae00c35 1704 <li>'cleaner-unit'</li>
5a738aea 1705
7ae00c35 1706 <li>'fuser-cleaning-pad'</li>
5a738aea 1707
7ae00c35 1708 <li>'transfer-unit'</li>
5a738aea 1709
7ae00c35 1710 <li>'toner-cartridge'</li>
5a738aea 1711
7ae00c35 1712 <li>'fuser-oiler'</li>
5a738aea 1713
7ae00c35 1714 <li>'water'</li>
5a738aea 1715
7ae00c35 1716 <li>'waste-water'</li>
5a738aea 1717
7ae00c35 1718 <li>'binding-supply'</li>
5a738aea 1719
7ae00c35 1720 <li>'banding-supply'</li>
5a738aea 1721
7ae00c35 1722 <li>'stiching-wire'</li>
5a738aea 1723
7ae00c35 1724 <li>'shrink-wrap'</li>
5a738aea 1725
7ae00c35 1726 <li>'paper-wrap'</li>
5a738aea 1727
7ae00c35 1728 <li>'staples'</li>
5a738aea 1729
7ae00c35 1730 <li>'inserts'</li>
5a738aea 1731
7ae00c35 1732 <li>'covers'</li>
5a738aea
MS
1733
1734</ul>
1735
7ae00c35 1736<h4><a name="port-monitor">port-monitor" (name(127))</a><span class="info">Deprecated</span></h4>
09a101d6 1737
7ae00c35 1738<p>The "port-monitor" attribute specifies the port monitor to use when printing to this printer. The default port monitor is 'none'.
09a101d6 1739
7ae00c35 1740<h4><a name="port-monitor-supported">port-monitor-supported" (1setOf name(127))</a><span class="info">Deprecated</span></h4>
09a101d6 1741
7ae00c35 1742<p>The "port-monitor-supported" attribute specifies the available port monitors.
09a101d6 1743
7ae00c35 1744<h4><a name="printer-commands">printer-commands (1setOf Type3 keyword)</a><span class='info'>Deprecated</span></h4>
01ce6322 1745
7ae00c35 1746<p>The "printer-commands" attribute specifies the commands that are supported by the CUPS command file filter. The keyword 'none' indicates that no commands are supported.</p>
01ce6322 1747
8072030b 1748<h4><a name="printer-dns-sd-name">printer-dns-sd-name (name(MAX) | noValue)</a><span class='info'>CUPS 1.4/macOS 10.6</span></h4>
d9bca400 1749
7ae00c35 1750<p>The "printer-dns-sd-name" attribute specifies the registered DNS-SD service name for the printer. If the printer is not being shared using this protocol, "printer-dns-sd-name" will have the no-value value.</p>
38e73f87 1751
7ae00c35 1752<h4><a name="printer-id">printer-id (integer(0:65535)</a><span class="info">CUPS 2.2</span></h4>
38e73f87 1753
7ae00c35 1754<p>The "printer-id" status attribute provides a unique integer identifying the printer. It is used when only an IP address and integer are provided for identifying a print queue.</p>
38e73f87 1755
f7deaa1a 1756<h4><a name="printer-type">printer-type (type2 enum)</a></h4>
fa73b229 1757
7ae00c35 1758<p>The "printer-type" status attribute specifies printer type and capability bits for the printer or class. The default value is computed from internal state information and the PPD file for the printer. The following bits are defined:</p>
fa73b229 1759
7ae00c35 1760<div class='table'><table align='center' border='1' width='80%' summary='Printer Type Bits'>
fa73b229 1761<thead>
1762<tr>
1763 <th>Bit</th>
1764 <th>Description</th>
1765</tr>
1766</thead>
1767<tbody>
1768<tr>
1769 <td>0x00000001</td>
1770 <td>Is a printer class.</td>
1771</tr>
1772<tr>
1773 <td>0x00000002</td>
1774 <td>Is a remote destination.</td>
1775</tr>
1776<tr>
1777 <td>0x00000004</td>
1778 <td>Can print in black.</td>
1779</tr>
1780<tr>
1781 <td>0x00000008</td>
1782 <td>Can print in color.</td>
1783</tr>
1784<tr>
1785 <td>0x00000010</td>
1786 <td>Can print on both sides of the page in hardware.</td>
1787</tr>
1788<tr>
1789 <td>0x00000020</td>
1790 <td>Can staple output.</td>
1791</tr>
1792<tr>
1793 <td>0x00000040</td>
1794 <td>Can do fast copies in hardware.</td>
1795</tr>
1796<tr>
1797 <td>0x00000080</td>
1798 <td>Can do fast copy collation in hardware.</td>
1799</tr>
1800<tr>
1801 <td>0x00000100</td>
1802 <td>Can punch output.</td>
1803</tr>
1804<tr>
1805 <td>0x00000200</td>
1806 <td>Can cover output.</td>
1807</tr>
1808<tr>
1809 <td>0x00000400</td>
1810 <td>Can bind output.</td>
1811</tr>
1812<tr>
1813 <td>0x00000800</td>
1814 <td>Can sort output.</td>
1815</tr>
1816<tr>
1817 <td>0x00001000</td>
1818 <td>Can handle media up to US-Legal/A4.</td>
1819</tr>
1820<tr>
1821 <td>0x00002000</td>
1822 <td>Can handle media from US-Legal/A4 to ISO-C/A2.</td>
1823</tr>
1824<tr>
1825 <td>0x00004000</td>
1826 <td>Can handle media larger than ISO-C/A2.</td>
1827</tr>
1828<tr>
1829 <td>0x00008000</td>
1830 <td>Can handle user-defined media sizes.</td>
1831</tr>
1832<tr>
1833 <td>0x00010000</td>
1834 <td>Is an implicit (server-generated) class.</td>
1835</tr>
1836<tr>
1837 <td>0x00020000</td>
1838 <td>Is the a default printer on the network.</td>
1839</tr>
1840<tr>
b19ccc9e 1841 <td>0x00040000</td>
fa73b229 1842 <td>Is a facsimile device.</td>
1843</tr>
1844<tr>
1845 <td>0x00080000</td>
1846 <td>Is rejecting jobs.</td>
1847</tr>
1848<tr>
1849 <td>0x00100000</td>
1850 <td>Delete this queue.</td>
1851</tr>
1852<tr>
1853 <td>0x00200000</td>
1854 <td>Queue is not shared.</td>
1855</tr>
1856<tr>
1857 <td>0x00400000</td>
1858 <td>Queue requires authentication.</td>
1859</tr>
09a101d6 1860<tr>
1861 <td>0x00800000</td>
1862 <td>Queue supports CUPS command files.</td>
1863</tr>
1864<tr>
1865 <td>0x01000000</td>
1866 <td>Queue was automatically discovered and added.</td>
1867</tr>
b9faaae1
MS
1868<tr>
1869 <td>0x02000000</td>
1870 <td>Queue is a scanner with no printing capabilities.</td>
1871</tr>
1872<tr>
1873 <td>0x04000000</td>
1874 <td>Queue is a printer with scanning capabilities.</td>
1875</tr>
7ae00c35
MS
1876<tr>
1877 <td>0x08000000</td>
1878 <td>Queue is a printer with 3D capabilities.</td>
1879</tr>
fa73b229 1880</tbody>
1881</table></div>
1882
1883<h4>printer-type-mask (type2 enum)<span class='info'>CUPS 1.1</span></h4>
1884
7ae00c35 1885<p>The "printer-type-mask" attribute is used to choose printers or classes with the CUPS-Get-Printers and CUPS-Get-Classes operations. The bits are defined identically to the printer-type attribute and default to all 1's.
fa73b229 1886
1887<h4>requesting-user-name-allowed (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
1888
7ae00c35 1889<p>The "requesting-user-name-allowed" attribute lists all of the users that are allowed to access a printer or class. Either this attribute or the "requesting-user-name-denied" attribute will be defined, but not both.
fa73b229 1890
1891<h4>requesting-user-name-denied (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
1892
7ae00c35 1893<p>The "requesting-user-name-denied" attribute lists all of the users that are not allowed to access a printer or class. Either this attribute or the "requesting-user-name-allowed" attribute will be defined, but not both.
fa73b229 1894
1895<h3 class='title'><a name='CLASS_ATTRIBUTES'>Printer Class Attributes</a></h3>
1896
7ae00c35
MS
1897<p>Printer class attributes are placed in the printer-attributes-tag group.</p>
1898
fa73b229 1899<h4>member-names (1setof name(127))</h4>
1900
7ae00c35 1901<p>The "member-names" attribute specifies the "printer-name" attributes for each the member printer and class. Each name corresponds to the same element of the "member-uris" attribute.
fa73b229 1902
1903<h4>member-uris (1setof uri)</h4>
1904
7ae00c35 1905<p>The "member-uris" attribute specifies the "printer-uri-supported" values for each member printer and class. Each URI corresponds to the same element of the "member-names" attribute.
fa73b229 1906
1907</body>
1908</html>