]> git.ipfire.org Git - thirdparty/cups.git/blob - doc/help/spec-ipp.html
e9e05fac5250cdb6fe0ee4830531d91f89aebaa9
[thirdparty/cups.git] / doc / help / spec-ipp.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
2 <html>
3 <!-- SECTION: Specifications -->
4 <head>
5 <title>CUPS Implementation of IPP</title>
6 <meta name='keywords' content='Programming, Internet Printing Protocol'>
7 </head>
8 <body>
9 <!--
10 "$Id$"
11
12 CUPS IPP specification for the Common UNIX Printing System (CUPS).
13
14 Copyright 2007-2008 by Apple Inc.
15 Copyright 1997-2007 by Easy Software Products.
16
17 These coded instructions, statements, and computer programs are the
18 property of Apple Inc. and are protected by Federal copyright
19 law. Distribution and use rights are outlined in the file "LICENSE.txt"
20 which should have been included with this file. If this file is
21 file is missing or damaged, see the license at "http://www.cups.org/".
22 -->
23
24 <h2 class='title'><a name='INTRODUCTION'>Introduction</a></h2>
25
26 <p>CUPS implements IPP/1.1 and the operations and attributes
27 defined in the "IPP: Job and Printer Set Operations", "IPP/1.1:
28 Output-bin Attribute Extension", and "IPP/1.1: finishings
29 'fold',' trim', and 'bale' attribute values extension"
30 specifications.</p>
31
32 <p>CUPS also provides 16 new operations and many new attributes
33 to support multiple IPP printers and printer classes on a single
34 host.</p>
35
36 <h3 class='title'><a name='IPP_URIS'>IPP URIs</a></h3>
37
38 <p>CUPS supports the "http", "https", and "ipp" schemes. The
39 following resource names are used:</p>
40
41 <dl>
42
43 <dt><tt>scheme://hostname:port/</tt></dt>
44
45 <dd>Can be used for all "get" operations and for server
46 subscriptions.</dd>
47
48 <dt><tt>scheme://hostname:port/admin/</tt></dt>
49
50 <dd>Used for all administrative operations.</dd>
51
52 <dt><tt>scheme://hostname:port/classes/name</tt></dt>
53
54 <dd>Specifies a printer class.</dd>
55
56 <dt><tt>scheme://hostname:port/jobs/id</tt></dt>
57
58 <dd>Specifies a job.</dd>
59
60 <dt><tt>scheme://hostname:port/printers/name</tt></dt>
61
62 <dd>Specifies a printer.</dd>
63
64 </dl>
65
66 <p>So a typical printer URI would be
67 "ipp://foo.bar.com/printers/LaserJet". In addition, the CUPS
68 server also supports normal browser access via
69 "http://hostname:port/" and "https://hostname:port/".</p>
70
71 <h3 class='title'><a name='IPP_OPERATIONS'>CUPS IPP Operations</a></h3>
72
73 <p>CUPS provides 16 extension operations in addition to most of the
74 standard IPP and registered extension operations:
75
76 <div class='table'><table align='center' border='1' width='80%'
77 summary='Supported Operations'>
78 <thead>
79 <tr>
80 <TH VALIGN="TOP">Operation Name</th>
81 <TH VALIGN="TOP">CUPS</th>
82 <TH VALIGN="TOP">Code</th>
83 <TH VALIGN="TOP">Brief Description</th>
84 </tr>
85 </thead>
86 <tbody>
87 <tr>
88 <td><a href='#PRINT_JOB'>Print-Job</a></td>
89 <td>1.0</td>
90 <td>0x0002</td>
91 <td>Print a file.</td>
92 </tr>
93 <tr>
94 <td>Validate-Job</td>
95 <td>1.0</td>
96 <td>0x0004</td>
97 <td>Validate job attributes.</td>
98 </tr>
99 <tr>
100 <td><a href='#CREATE_JOB'>Create-Job</a></td>
101 <td>1.1</td>
102 <td>0x0005</td>
103 <td>Create a print job.</td>
104 </tr>
105 <tr>
106 <td>Send-Document</td>
107 <td>1.1</td>
108 <td>0x0006</td>
109 <td>Send a file for a print job.</td>
110 </tr>
111 <tr>
112 <td><a href='#CANCEL_JOB'>Cancel-Job</a></td>
113 <td>1.0</td>
114 <td>0x0008</td>
115 <td>Cancel a print job.</td>
116 </tr>
117 <tr>
118 <td>Get-Job-Attributes</td>
119 <td>1.0</td>
120 <td>0x0009</td>
121 <td>Get job attributes.</td>
122 </tr>
123 <tr>
124 <td>Get-Jobs</td>
125 <td>1.0</td>
126 <td>0x000A</td>
127 <td>Get all jobs.</td>
128 </tr>
129 <tr>
130 <td>Get-Printer-Attributes</td>
131 <td>1.0</td>
132 <td>0x000B</td>
133 <td>Get printer attributes.</td>
134 </tr>
135 <tr>
136 <td>Hold-Job</td>
137 <td>1.1</td>
138 <td>0x000C</td>
139 <td>Hold a job for printing.</td>
140 </tr>
141 <tr>
142 <td>Release-Job</td>
143 <td>1.1</td>
144 <td>0x000D</td>
145 <td>Release a job for printing.</td>
146 </tr>
147 <tr>
148 <td>Restart-Job</td>
149 <td>1.1</td>
150 <td>0x000E</td>
151 <td>Restarts a print job.</td>
152 </tr>
153 <tr>
154 <td>Pause-Printer</td>
155 <td>1.0</td>
156 <td>0x0010</td>
157 <td>Pause printing on a printer.</td>
158 </tr>
159 <tr>
160 <td>Resume-Printer</td>
161 <td>1.0</td>
162 <td>0x0011</td>
163 <td>Resume printing on a printer.</td>
164 </tr>
165 <tr>
166 <td><a href='#PURGE_JOBS'>Purge-Jobs</a></td>
167 <td>1.0</td>
168 <td>0x0012</td>
169 <td>Purge all jobs.</td>
170 </tr>
171 <tr>
172 <td><a href='#SET_JOB_ATTRIBUTES'>Set-Job-Attributes</a></td>
173 <td>1.1</td>
174 <td>0x0014</td>
175 <td>Set attributes for a pending or held job.</td>
176 </tr>
177 <tr>
178 <td><a href='#CREATE_PRINTER_SUBSCRIPTION'>Create-Printer-Subscription</a></td>
179 <td>1.2</td>
180 <td>0x0016</td>
181 <td>Creates a subscription associated with a printer or the server.</td>
182 </tr>
183 <tr>
184 <td>Create-Job-Subscription</td>
185 <td>1.2</td>
186 <td>0x0017</td>
187 <td>Creates a subscription associated with a job.</td>
188 </tr>
189 <tr>
190 <td>Get-Subscription-Attributes</td>
191 <td>1.2</td>
192 <td>0x0018</td>
193 <td>Gets the attributes for a subscription.</td>
194 </tr>
195 <tr>
196 <td>Get-Subscriptions</td>
197 <td>1.2</td>
198 <td>0x0019</td>
199 <td>Gets the attributes for zero or more subscriptions.</td>
200 </tr>
201 <tr>
202 <td>Renew-Subscription</td>
203 <td>1.2</td>
204 <td>0x001A</td>
205 <td>Renews a subscription.</td>
206 </tr>
207 <tr>
208 <td>Cancel-Subscription</td>
209 <td>1.2</td>
210 <td>0x001B</td>
211 <td>Cancels a subscription.</td>
212 </tr>
213 <tr>
214 <td>Get-Notifications</td>
215 <td>1.2</td>
216 <td>0x001C</td>
217 <td>Get notification events for <tt>ippget</tt> subscriptions.</td>
218 </tr>
219 <tr>
220 <td>Enable-Printer</td>
221 <td>1.2</td>
222 <td>0x0022</td>
223 <td>Accepts jobs on a printer.</td>
224 </tr>
225 <tr>
226 <td>Disable-Printer</td>
227 <td>1.2</td>
228 <td>0x0023</td>
229 <td>Rejects jobs on a printer.</td>
230 </tr>
231 <tr>
232 <td><a href='#CUPS_GET_DEFAULT'>CUPS-Get-Default</a></td>
233 <td>1.0</td>
234 <td>0x4001</td>
235 <td>Get the default destination.</td>
236 </tr>
237 <tr>
238 <td><a href='#CUPS_GET_PRINTERS'>CUPS-Get-Printers</a></td>
239 <td>1.0</td>
240 <td>0x4002</td>
241 <td>Get all of the available printers.</td>
242 </tr>
243 <tr>
244 <td><a href='#CUPS_ADD_MODIFY_PRINTER'>CUPS-Add-Modify-Printer</a></td>
245 <td>1.0</td>
246 <td>0x4003</td>
247 <td>Add or modify a printer.</td>
248 </tr>
249 <tr>
250 <td><a href='#CUPS_DELETE_PRINTER'>CUPS-Delete-Printer</a></td>
251 <td>1.0</td>
252 <td>0x4004</td>
253 <td>Delete a printer.</td>
254 </tr>
255 <tr>
256 <td><a href='#CUPS_GET_CLASSES'>CUPS-Get-Classes</a></td>
257 <td>1.0</td>
258 <td>0x4005</td>
259 <td>Get all of the available printer classes.</td>
260 </tr>
261 <tr>
262 <td><a href='#CUPS_ADD_MODIFY_CLASS'>CUPS-Add-Modify-Class</a></td>
263 <td>1.0</td>
264 <td>0x4006</td>
265 <td>Add or modify a printer class.</td>
266 </tr>
267 <tr>
268 <td><a href='#CUPS_DELETE_CLASS'>CUPS-Delete-Class</a></td>
269 <td>1.0</td>
270 <td>0x4007</td>
271 <td>Delete a printer class.</td>
272 </tr>
273 <tr>
274 <td><a href='#CUPS_ACCEPT_JOBS'>CUPS-Accept-Jobs</a></td>
275 <td>1.0</td>
276 <td>0x4008</td>
277 <td>Accept jobs on a printer or printer class.</td>
278 </tr>
279 <tr>
280 <td><a href='#CUPS_REJECT_JOBS'>CUPS-Reject-Jobs</a></td>
281 <td>1.0</td>
282 <td>0x4009</td>
283 <td>Reject jobs on a printer or printer class.</td>
284 </tr>
285 <tr>
286 <td><a href='#CUPS_SET_DEFAULT'>CUPS-Set-Default</a></td>
287 <td>1.0</td>
288 <td>0x400A</td>
289 <td>Set the default destination.</td>
290 </tr>
291 <tr>
292 <td><a href='#CUPS_GET_DEVICES'>CUPS-Get-Devices</a></td>
293 <td>1.1</td>
294 <td>0x400B</td>
295 <td>Get all of the available devices.</td>
296 </tr>
297 <tr>
298 <td><a href='#CUPS_GET_PPDS'>CUPS-Get-PPDs</a></td>
299 <td>1.1</td>
300 <td>0x400C</td>
301 <td>Get all of the available PPDs.</td>
302 </tr>
303 <tr>
304 <td><a href='#CUPS_MOVE_JOB'>CUPS-Move-Job</a></td>
305 <td>1.1</td>
306 <td>0x400D</td>
307 <td>Move a job to a different printer.</td>
308 </tr>
309 <tr>
310 <td><a href='#CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job</a></td>
311 <td>1.2</td>
312 <td>0x400E</td>
313 <td>Authenticate a job for printing.</td>
314 </tr>
315 <tr>
316 <td><a href='#CUPS_GET_PPD'>CUPS-Get-PPD</a></td>
317 <td>1.3</td>
318 <td>0x400F</td>
319 <td>Get a PPD file.</td>
320 </tr>
321 <tr>
322 <td><a href='#CUPS_GET_DOCUMENT'>CUPS-Get-Document</a></td>
323 <td>1.4</td>
324 <td>0x4027</td>
325 <td>Get a document file from a job.</td>
326 </tr>
327 </tbody>
328 </table></div>
329
330 <h2 class='title'><a name='OPERATIONS'>Operations</a></h2>
331
332 <p>The following sections describe the operations supported by CUPS.
333 In the interest of brevity, operations which use only the standard
334 IPP attributes are not described.
335
336 <h3 class='title'><a name='PRINT_JOB'>Print-Job Operation</a></h3>
337
338 <p>The Print-Job operation (0x0002) prints a file.
339
340 <h4>Print-Job Request</h4>
341
342 <p>The following groups of attributes are supplied as part of the
343 Print-Job request:
344
345 <p>Group 1: Operation Attributes
346
347 <dl>
348
349 <dt>Natural Language and Character Set:
350
351 <dd>The "attributes-charset" and "attributes-natural-language"
352 attributes as described in section 3.1.4.1 of the IPP Model and
353 Semantics document.
354
355 <dt>"printer-uri" (uri):
356
357 <dd>The client MUST supply a URI for the specified printer.
358
359 </dl>
360
361 <p>Group 2: Job Template Attributes
362
363 <dl>
364
365 <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3</span>
366
367 <dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
368
369 <dt>"job-billing" (text(MAX)):<span class='info'>CUPS 1.1</span>
370
371 <dd>The client OPTIONALLY supplies a billing string that is logged
372 with the page accounting information.
373
374 <dt>"job-sheets" (1setof type3 keyword | name(MAX)):<span class='info'>CUPS 1.1</span>
375
376 <dd>The client OPTIONALLY supplies one or two banner pages that
377 are printed before and after any files in the print job. The
378 name of "none" is reserved to indicate that no banner page
379 should be printed. If the client does not specify this
380 attribute then the value of the "job-sheets-default" printer
381 object attribute is used.
382
383 <blockquote><b>Note:</b> Standard IPP only allows
384 specification of a single job-sheets attribute
385 value.</blockquote>
386
387 <dt>"media" (1setof type3 keyword | name(MAX)):
388
389 <dd>The client OPTIONALLY supplies one or more media attributes
390 specifying the size, type, source, and color of the output
391 media. If the client does not specify this attribute then the
392 value of the "media-default" printer object attribute is used.
393
394 <blockquote><b>Note:</b> Standard IPP only allows
395 specification of a single media attribute
396 value.</blockquote>
397
398 <dt>Other Job Template Attributes
399
400 </dl>
401
402 <p>The Print-Job request is followed by a file to be printed.
403
404 <h4>Print-Job Response</h4>
405
406 <p>The following groups of attributes are send as part of the Print-Job
407 Response:
408
409 <p>Group 1: Operation Attributes
410
411 <dl>
412
413 <dt>Status Message:
414
415 <dd>The standard response status message.
416
417 <dt>Natural Language and Character Set:
418
419 <dd>The "attributes-charset" and "attributes-natural-language"
420 attributes as described in section 3.1.4.2 of the IPP Model and
421 Semantics document.
422
423 </dl>
424
425 <p>Group 2: Job Attributes
426
427 <dl>
428
429 <dt>Standard Job Attributes
430
431 </dl>
432
433 <p>Group 3: Unsupported Attributes (status=client-eror-attributes-or-values-not-supported)
434
435 <dl>
436
437 <dt>auth-info-required (1setOf Type2 keyword)
438
439 <dd>The required authentication information.
440
441 </dl
442
443 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CREATE_JOB'>Create-Job Operation</a></h3>
444
445 <p>The Create-Job operation (0x0005) creates a new, empty print job.
446
447 <h4>Create-Job Request</h4>
448
449 <p>The following groups of attributes are supplied as part of the
450 Create-Job request:
451
452 <p>Group 1: Operation Attributes
453
454 <dl>
455
456 <dt>Natural Language and Character Set:
457
458 <dd>The "attributes-charset" and "attributes-natural-language"
459 attributes as described in section 3.1.4.1 of the IPP Model and
460 Semantics document.
461
462 <dt>"printer-uri" (uri):
463
464 <dd>The client MUST supply a URI for the specified printer.
465
466 </dl>
467
468 <p>Group 2: Job Template Attributes
469
470 <dl>
471
472 <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3</span>
473
474 <dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
475
476 <dt>"job-billing" (text(MAX)):<span class='info'>CUPS 1.1</span>
477
478 <dd>The client OPTIONALLY supplies a billing string that is logged
479 with the page accounting information.
480
481 <dt>"job-sheets" (1setof type3 keyword | name(MAX)):<span class='info'>CUPS 1.1</span>
482
483 <dd>The client OPTIONALLY supplies one or two banner pages that
484 are printed before and after any files in the print job. The
485 name of "none" is reserved to indicate that no banner page
486 should be printed. If the client does not specify this
487 attribute then the value of the "job-sheets-default" printer
488 object attribute is used.
489
490 <blockquote><b>Note:</b> Standard IPP only allows
491 specification of a single job-sheets attribute
492 value.</blockquote>
493
494 <dt>"media" (1setof type3 keyword | name(MAX)):
495
496 <dd>The client OPTIONALLY supplies one or more media attributes
497 specifying the size, type, source, and color of the output
498 media. If the client does not specify this attribute then the
499 value of the "media-default" printer object attribute is used.
500
501 <blockquote><b>Note:</b> Standard IPP only allows
502 specification of a single media attribute
503 value.</blockquote>
504
505 <dt>Standard Job Template Attributes
506
507 </dl>
508
509 <h4>Create-Job Response</h4>
510
511 <p>The following groups of attributes are send as part of the
512 Create-Job Response:
513
514 <p>Group 1: Operation Attributes
515
516 <dl>
517
518 <dt>Status Message:
519
520 <dd>The standard response status message.
521
522 <dt>Natural Language and Character Set:
523
524 <dd>The "attributes-charset" and "attributes-natural-language"
525 attributes as described in section 3.1.4.2 of the IPP Model and
526 Semantics document.
527
528 </dl>
529
530 <p>Group 2: Job Attributes
531
532 <dl>
533
534 <dt>Standard Job Attributes
535
536 </dl>
537
538 <p>Group 3: Unsupported Attributes (status=client-eror-attributes-or-values-not-supported)
539
540 <dl>
541
542 <dt>auth-info-required (1setOf Type2 keyword)
543
544 <dd>The required authentication information.
545
546 </dl
547
548 <h3 class='title'><a name='CANCEL_JOB'>Set-Job-Attributes Operation</a></h3>
549
550 <p>The Cancel-Job operation (0x0008) cancels the specified job. CUPS 1.4 adds
551 a new <tt>purge-job (boolean)</tt> attribute that allows you to purge both
552 active and completed jobs, removing all history and document files for the
553 job as well.
554
555 <h4>Cancel-Job Request</h4>
556
557 <p>The following groups of attributes are supplied as part of the
558 Set-Job-Attributes request:
559
560 <p>Group 1: Operation Attributes
561
562 <dl>
563
564 <dt>Natural Language and Character Set:
565
566 <dd>The "attributes-charset" and "attributes-natural-language"
567 attributes as described in section 3.1.4.1 of the IPP Model and
568 Semantics document.
569
570 <dt>"printer-uri" (uri) and "job-id" (integer)
571 <br><i>OR</i>
572 <br>"job-uri":
573
574 <dd>The client MUST supply a URI for the specified printer and
575 a job ID number, or the job URI.
576
577 <dt><span class="info">CUPS 1.4</span>"purge-job" (boolean):
578
579 <dd>The client OPTIONALLY supplies this attribute. When true,
580 all job files (history and document) are purged. The default
581 is false, leading to the standard IPP behavior.
582
583 </dl>
584
585 <h4>Cancel-Job Response</h4>
586
587 <p>The following groups of attributes are send as part of the Cancel-Job
588 Response:
589
590 <p>Group 1: Operation Attributes
591
592 <dl>
593
594 <dt>Status Message:
595
596 <dd>The standard response status message.
597
598 <dt>Natural Language and Character Set:
599
600 <dd>The "attributes-charset" and "attributes-natural-language"
601 attributes as described in section 3.1.4.2 of the IPP Model and
602 Semantics document.
603
604 </dl>
605
606 <h3 class='title'><a name='PURGE_JOBS'>Purge-Jobs Operation</a></h3>
607
608 <p>The Purge-Jobs operation (0x0012) cancels all of the jobs on a
609 given destination and optionally removes all history and document
610 files for the jobs as well.
611
612 <h4>Purge-Jobs Request</h4>
613
614 <p>The following groups of attributes are supplied as part of the
615 Purge-Jobs request:
616
617 <p>Group 1: Operation Attributes
618
619 <dl>
620
621 <dt>Natural Language and Character Set:
622
623 <dd>The "attributes-charset" and "attributes-natural-language"
624 attributes as described in section 3.1.4.1 of the IPP Model and
625 Semantics document.
626
627 <dt>"printer-uri" (uri):
628
629 <dd>The client MUST supply a URI for the specified printer or
630 "ipp://.../printers" for all printers and classes.
631
632 <dt><span class="info">CUPS 1.2</span>"purge-jobs" (boolean):
633
634 <dd>The client OPTIONALLY supplies this attribute to specify
635 whether the jobs are purged (true) or just canceled (false).
636 The default is true.
637
638 </dl>
639
640 <h4>Purge-Jobs Response</h4>
641
642 <p>The following groups of attributes are send as part of the Purge-Jobs
643 Response:
644
645 <p>Group 1: Operation Attributes
646
647 <dl>
648
649 <dt>Status Message:
650
651 <dd>The standard response status message.
652
653 <dt>Natural Language and Character Set:
654
655 <dd>The "attributes-charset" and "attributes-natural-language"
656 attributes as described in section 3.1.4.2 of the IPP Model and
657 Semantics document.
658
659 </dl>
660
661 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='SET_JOB_ATTRIBUTES'>Set-Job-Attributes Operation</a></h3>
662
663 <p>The Set-Job-Attributes operation (0x0014) changes the attributes of
664 an active (not completed) job.
665
666 <h4>Set-Job-Attributes Request</h4>
667
668 <p>The following groups of attributes are supplied as part of the
669 Set-Job-Attributes request:
670
671 <p>Group 1: Operation Attributes
672
673 <dl>
674
675 <dt>Natural Language and Character Set:
676
677 <dd>The "attributes-charset" and "attributes-natural-language"
678 attributes as described in section 3.1.4.1 of the IPP Model and
679 Semantics document.
680
681 <dt>"printer-uri" (uri) and "job-id" (integer)
682 <br><i>OR</i>
683 <br>"job-uri":
684
685 <dd>The client MUST supply a URI for the specified printer and
686 a job ID number, or the job URI.
687
688 </dl>
689
690 <p>Group 2: Job Template Attributes
691
692 <dl>
693
694 <dt>"job-sheets" (1setof type3 keyword | name(MAX)):<span class='info'>CUPS 1.1</span>
695
696 <dd>The client OPTIONALLY supplies one or two banner pages that
697 are printed before and after any files in the print job. The
698 name of "none" is reserved to indicate that no banner page
699 should be printed. If the client does not specify this
700 attribute then the value of the "job-sheets-default" printer
701 object attribute is used.
702
703 <blockquote><b>Note:</b> Standard IPP only allows
704 specification of a single job-sheets attribute
705 value.</blockquote>
706
707 <dt>"media" (1setof type3 keyword | name(MAX)):
708
709 <dd>The client OPTIONALLY supplies one or more media attributes
710 specifying the size, type, source, and color of the output
711 media. If the client does not specify this attribute then the
712 value of the "media-default" printer object attribute is used.
713
714 <blockquote><b>Note:</b> Standard IPP only allows
715 specification of a single media attribute
716 value.</blockquote>
717
718 <dt>Other Job Template Attributes
719
720 </dl>
721
722 <h4>Set-Job-Attributes Response</h4>
723
724 <p>The following groups of attributes are send as part of the Set-Job-Attributes
725 Response:
726
727 <p>Group 1: Operation Attributes
728
729 <dl>
730
731 <dt>Status Message:
732
733 <dd>The standard response status message.
734
735 <dt>Natural Language and Character Set:
736
737 <dd>The "attributes-charset" and "attributes-natural-language"
738 attributes as described in section 3.1.4.2 of the IPP Model and
739 Semantics document.
740
741 </dl>
742
743 <h3 class='title'><span class='info'>CUPS 1.2</span><a
744 name='CREATE_PRINTER_SUBSCRIPTION'>Create-Printer-Subscription</a></h3>
745
746 <p>The Create-Printer-Subscription operation (0x0016) creates a
747 subscription for printer or server event notifications. CUPS
748 provides several additional events in addition to the standard
749 events in the IPP notifications specification.</p>
750
751 <h4>Create-Printer-Subscription Request</h4>
752
753 <p>The following groups of attributes are supplied as part of the
754 request:</p>
755
756 <p>Group 1: Operation Attributes</p>
757
758 <dl>
759
760 <dt>Natural Language and Character Set:
761
762 <dd>The "attributes-charset" and "attributes-natural-language"
763 attributes as described in section 3.1.4.1 of the IPP Model and
764 Semantics document.
765
766 <dt>"printer-uri" (uri):
767
768 <dd>The printer
769 (<tt>ipp://server/printers/printername</tt>), class
770 (<tt>ipp://server/classes/classname</tt>), or server
771 (<tt>ipp://server/</tt>) URI for event notifications.
772
773 <dt>"notify-events" (1setOf keyword):
774
775 <dd>The events to monitor. In addition to the standard
776 events, CUPS adds the following keywords:
777 <ul>
778
779 <li><tt>printer-added</tt> - Get notified
780 whenever a printer or class is added</li>
781
782 <li><tt>printer-deleted</tt> - Get notified
783 whenever a printer or class is deleted</li>
784
785 <li><tt>printer-modified</tt> - Get notified
786 whenever a printer or class is modified</li>
787
788 <li><tt>server-audit</tt> - Get notified when a
789 security condition occurs</li>
790
791 <li><tt>server-restarted</tt> - Get notified when
792 the server is restarted</li>
793
794 <li><tt>server-started</tt> - Get notified when
795 the server is started</li>
796
797 <li><tt>server-stopped</tt> - Get notified when
798 the server is stopped</li>
799
800 </ul>
801
802 </dl>
803
804 <h4>Create-Printer-Subscription Response</h4>
805
806 <p>The following groups of attributes are send as part of the
807 response:</p>
808
809 <p>Group 1: Operation Attributes</p>
810
811 <dl>
812
813 <dt>Status Message:
814
815 <dd>The standard response status message.
816
817 <dt>Natural Language and Character Set:
818
819 <dd>The "attributes-charset" and "attributes-natural-language"
820 attributes as described in section 3.1.4.2 of the IPP Model and
821 Semantics document.
822
823 </dl>
824
825 <p>Group 2: Subscription Object Attributes</p>
826
827 <dl>
828
829 <dt>"subscription-id" (integer):
830
831 <dd>The subscription number.
832
833 </dl>
834
835 <h3 class='title'><a name='CUPS_GET_DEFAULT'>CUPS-Get-Default Operation</a></h3>
836
837 <p>The CUPS-Get-Default operation (0x4001) returns the default printer
838 URI and attributes.
839
840 <h4>CUPS-Get-Default Request</h4>
841
842 <p>The following groups of attributes are supplied as part of the
843 CUPS-Get-Default request:
844
845 <p>Group 1: Operation Attributes
846
847 <dl>
848
849 <dt>Natural Language and Character Set:
850
851 <dd>The "attributes-charset" and "attributes-natural-language"
852 attributes as described in section 3.1.4.1 of the IPP Model and
853 Semantics document.
854
855 <dt>"requested-attributes" (1setOf keyword) :
856
857 <dd>The client OPTIONALLY supplies a set of attribute names
858 and/or attribute group names in whose values the requester is
859 interested. If the client omits this attribute, the server
860 responds as if this attribute had been supplied with a value of
861 'all'.
862
863 </dl>
864
865 <h4>CUPS-Get-Default Response</h4>
866
867 <p>The following groups of attributes are send as part of the
868 CUPS-Get-Default Response:
869
870 <p>Group 1: Operation Attributes
871
872 <dl>
873
874 <dt>Status Message:
875
876 <dd>The standard response status message.
877
878 <dt>Natural Language and Character Set:
879
880 <dd>The "attributes-charset" and "attributes-natural-language"
881 attributes as described in section 3.1.4.2 of the IPP Model and
882 Semantics document.
883
884 </dl>
885
886 <p>Group 2: Printer Object Attributes
887
888 <dl>
889
890 <dt>The set of requested attributes and their current values.
891
892 </dl>
893
894 <h3 class='title'><a name='CUPS_GET_PRINTERS'>CUPS-Get-Printers Operation</a></h3>
895
896 <p>The CUPS-Get-Printers operation (0x4002) returns the printer
897 attributes for every printer known to the system. This may include
898 printers that are not served directly by the server.
899
900 <h4>CUPS-Get-Printers Request</h4>
901
902 <p>The following groups of attributes are supplied as part of the
903 CUPS-Get-Printers request:
904
905 <p>Group 1: Operation Attributes
906
907 <dl>
908
909 <dt>Natural Language and Character Set:
910
911 <dd>The "attributes-charset" and "attributes-natural-language"
912 attributes as described in section 3.1.4.1 of the IPP Model and
913 Semantics document.
914
915 <dt>"limit" (integer (1:MAX)):
916
917 <dd>The client OPTIONALLY supplies this attribute limiting the
918 number of printers that are returned.
919
920 <dt>"printer-info" (text(127)):<span class='info'>CUPS 1.1</span>
921
922 <dd>The client OPTIONALLY supplies this attribute to
923 select which printers are returned.
924
925 <dt>"printer-location" (text(127)): <span class='info'>CUPS 1.1.7</span>
926
927 <dd>The client OPTIONALLY supplies this attribute to
928 select which printers are returned.
929
930 <dt>"printer-type" (type2 enum): <span class='info'>CUPS 1.1.7</span>
931
932 <dd>The client OPTIONALLY supplies a printer type enumeration to
933 select which printers are returned.
934
935 <dt>"printer-type-mask" (type2 enum): <span class='info'>CUPS 1.1.7</span>
936
937 <dd>The client OPTIONALLY supplies a printer type mask
938 enumeration to select which bits are used in the "printer-type"
939 attribute.
940
941 <dt>"requested-attributes" (1setOf keyword) :
942
943 <dd>The client OPTIONALLY supplies a set of attribute names
944 and/or attribute group names in whose values the requester is
945 interested. If the client omits this attribute, the server
946 responds as if this attribute had been supplied with a value of
947 'all'.
948
949 </dl>
950
951 <h4>CUPS-Get-Printers Response</h4>
952
953 <p>The following groups of attributes are send as part of the
954 CUPS-Get-Printers Response:
955
956 <p>Group 1: Operation Attributes
957
958 <dl>
959
960 <dt>Status Message:
961
962 <dd>The standard response status message.
963
964 <dt>Natural Language and Character Set:
965
966 <dd>The "attributes-charset" and "attributes-natural-language"
967 attributes as described in section 3.1.4.2 of the IPP Model and
968 Semantics document.
969
970 </dl>
971
972 <p>Group 2: Printer Object Attributes
973
974 <dl>
975
976 <dt>The set of requested attributes and their current values for
977 each printer.
978
979 </dl>
980
981 <h3 class='title'><a name='CUPS_ADD_MODIFY_PRINTER'>CUPS-Add-Modify-Printer Operation</a></h3>
982
983 <p>The CUPS-Add-Modify-Printer operation (0x4003) adds a new printer or
984 modifies an existing printer on the system.
985
986 <h4>CUPS-Add-Modify-Printer Request</h4>
987
988 <p>The following groups of attributes are supplied as part of the
989 CUPS-Add-Modify-Printer request:
990
991 <p>Group 1: Operation Attributes
992
993 <dl>
994
995 <dt>Natural Language and Character Set:
996
997 <dd>The "attributes-charset" and "attributes-natural-language"
998 attributes as described in section 3.1.4.1 of the IPP Model and
999 Semantics document.
1000
1001 <dt>"printer-uri" (uri):
1002
1003 <dd>The client MUST supply a URI for the specified printer.
1004
1005 </dl>
1006
1007 <p>Group 2: Printer Object Attributes
1008
1009 <dl>
1010
1011 <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3</span>
1012
1013 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
1014
1015 <dt>"job-sheets-default" (1setOf name(127)): <span
1016 class='info'>CUPS 1.1.7</span>
1017
1018 <dd>The client OPTIONALLY supplies one or two banner page
1019 names that are printed before and after files in a job.
1020 The reserved name "none" is used to specify that no
1021 banner page should be printed.
1022
1023 <dt>"device-uri" (uri):
1024
1025 <dd>The client OPTIONALLY supplies a device URI for the
1026 specified printer.
1027
1028 <dt>"port-monitor" (name(127)):
1029
1030 <dd>The client OPTIONALLY supplies a port monitor name for the
1031 specified printer.
1032
1033 <dt>"ppd-name" (name(127)):
1034
1035 <dd>The client OPTIONALLY supplies a PPD name for the specified
1036 printer.
1037
1038 <dt>"printer-is-accepting-jobs" (boolean):
1039
1040 <dd>The client OPTIONALLY supplies this boolean attribute
1041 indicating whether or not the printer object should accept new jobs.
1042
1043 <dt>"printer-info" (text(127)):
1044
1045 <dd>The client OPTIONALLY supplies this attribute indicating the
1046 printer information string.
1047
1048 <dt>"printer-location" (text(127)):
1049
1050 <dd>The client OPTIONALLY supplies this attribute indicating a
1051 textual location of the printer.
1052
1053 <dt>"printer-more-info" (uri):
1054
1055 <dd>The client OPTIONALLY supplies this attribute indicating a
1056 URI for additional printer information.
1057
1058 <dt>"printer-state" (type2 enum):
1059
1060 <dd>The client OPTIONALLY supplies this attribute indicating the
1061 initial/current state of the printer. Only the "idle" and "stopped"
1062 enumerations are recognized.
1063
1064 <dt>"printer-state-message" (text(MAX)):
1065
1066 <dd>The client OPTIONALLY supplies this attribute indicating a
1067 textual reason for the current printer state.
1068
1069 <dt>"requesting-user-name-allowed" (1setof name(127) | delete)
1070 <br><i>OR</i>
1071 <br>"requesting-user-name-denied" (1setof name(127) | delete):
1072
1073 <dd>The client OPTIONALLY supplies one of these attributes to
1074 specify an access control list for incoming print jobs. To allow
1075 all users access to a printer, use the delete tag for the
1076 attribute value.
1077
1078 </dl>
1079
1080 <p>The CUPS-Add-Modify-Printer request can optionally be followed by a PPD
1081 file or System V interface script to be used for the printer. The
1082 "ppd-name" attribute overrides any file that is attached to the end of
1083 the request with a local CUPS PPD file.
1084
1085 <h4>CUPS-Add-Modify-Printer Response</h4>
1086
1087 <p>The following groups of attributes are send as part of the
1088 CUPS-Add-Modify-Printer Response:
1089
1090 <p>Group 1: Operation Attributes
1091
1092 <dl>
1093
1094 <dt>Status Message:
1095
1096 <dd>The standard response status message.
1097
1098 <dt>Natural Language and Character Set:
1099
1100 <dd>The "attributes-charset" and "attributes-natural-language"
1101 attributes as described in section 3.1.4.2 of the IPP Model and
1102 Semantics document.
1103
1104 </dl>
1105
1106 <h3 class='title'><a name='CUPS_DELETE_PRINTER'>CUPS-Delete-Printer Operation</a></h3>
1107
1108 <p>The CUPS-Delete-Printer operation (0x4004) removes an existing
1109 printer from the system.
1110
1111 <h4>CUPS-Delete-Printer Request</h4>
1112
1113 <p>The following groups of attributes are supplied as part of the
1114 CUPS-Delete-Printer request:
1115
1116 <p>Group 1: Operation Attributes
1117
1118 <dl>
1119
1120 <dt>Natural Language and Character Set:
1121
1122 <dd>The "attributes-charset" and "attributes-natural-language"
1123 attributes as described in section 3.1.4.1 of the IPP Model and
1124 Semantics document.
1125
1126 <dt>"printer-uri" (uri):
1127
1128 <dd>The client MUST supply a URI for the specified printer.
1129
1130 </dl>
1131
1132 <h4>CUPS-Delete-Printer Response</h4>
1133
1134 <p>The following groups of attributes are send as part of the
1135 CUPS-Delete-Printer Response:
1136
1137 <p>Group 1: Operation Attributes
1138
1139 <dl>
1140
1141 <dt>Status Message:
1142
1143 <dd>The standard response status message.
1144
1145 <dt>Natural Language and Character Set:
1146
1147 <dd>The "attributes-charset" and "attributes-natural-language"
1148 attributes as described in section 3.1.4.2 of the IPP Model and
1149 Semantics document.
1150
1151 </dl>
1152
1153 <h3 class='title'><a name='CUPS_GET_CLASSES'>CUPS-Get-Classes Operation</a></h3>
1154
1155 <p>The CUPS-Get-Classes operation (0x4005) returns the printer
1156 attributes for every printer class known to the system. This may
1157 include printer classes that are not served directly by the server.
1158
1159 <h4>CUPS-Get-Classes Request</h4>
1160
1161 <p>The following groups of attributes are supplied as part of the
1162 CUPS-Get-Classes request:
1163
1164 <p>Group 1: Operation Attributes
1165
1166 <dl>
1167
1168 <dt>Natural Language and Character Set:
1169
1170 <dd>The "attributes-charset" and "attributes-natural-language"
1171 attributes as described in section 3.1.4.1 of the IPP Model and
1172 Semantics document.
1173
1174 <dt>"limit" (integer (1:MAX)):
1175
1176 <dd>The client OPTIONALLY supplies this attribute limiting the
1177 number of printer classes that are returned.
1178
1179 <dt>"printer-info" (text(127)): <span class='info'>CUPS 1.1.7</span>
1180 <dd>The client OPTIONALLY supplies this attribute to
1181 select which printer classes are returned.
1182
1183 <dt>"printer-location" (text(127)): <span class='info'>CUPS 1.1.7</span>
1184 <dd>The client OPTIONALLY supplies this attribute to
1185 select which printer classes are returned.
1186
1187 <dt>"printer-type" (type2 enum): <span class='info'>CUPS 1.1.7</span>
1188 <dd>The client OPTIONALLY supplies a printer type enumeration to
1189 select which printer classes are returned.
1190
1191 <dt>"printer-type-mask" (type2 enum): <span class='info'>CUPS 1.1.7</span>
1192 <dd>The client OPTIONALLY supplies a printer type mask
1193 enumeration to select which bits are used in the "printer-type"
1194 attribute.
1195
1196 <dt>"requested-attributes" (1setOf keyword) :
1197
1198 <dd>The client OPTIONALLY supplies a set of attribute names
1199 and/or attribute group names in whose values the requester is
1200 interested. If the client omits this attribute, the server responds as
1201 if this attribute had been supplied with a value of 'all'.
1202
1203 </dl>
1204
1205 <h4>CUPS-Get-Classes Response</h4>
1206
1207 <p>The following groups of attributes are send as part of the
1208 CUPS-Get-Classes Response:
1209
1210 <p>Group 1: Operation Attributes
1211
1212 <dl>
1213
1214 <dt>Status Message:
1215
1216 <dd>The standard response status message.
1217
1218 <dt>Natural Language and Character Set:
1219
1220 <dd>The "attributes-charset" and "attributes-natural-language"
1221 attributes as described in section 3.1.4.2 of the IPP Model and
1222 Semantics document.
1223
1224 </dl>
1225
1226 <p>Group 2: Printer Class Object Attributes
1227
1228 <dl>
1229
1230 <dt>The set of requested attributes and their current values for
1231 each printer class.
1232
1233 </dl>
1234
1235 <h3 class='title'><a name='CUPS_ADD_MODIFY_CLASS'>CUPS-Add-Modify-Class Operation</a></h3>
1236
1237 <p>The CUPS-Add-Modify-Class operation (0x4006) adds a new printer class or
1238 modifies and existing printer class on the system.
1239
1240 <h4>CUPS-Add-Modify-Class Request</h4>
1241
1242 <p>The following groups of attributes are supplied as part of the
1243 CUPS-Add-Modify-Class request:
1244
1245 <p>Group 1: Operation Attributes
1246
1247 <dl>
1248
1249 <dt>Natural Language and Character Set:
1250
1251 <dd>The "attributes-charset" and "attributes-natural-language"
1252 attributes as described in section 3.1.4.1 of the IPP Model and
1253 Semantics document.
1254
1255 <dt>"printer-uri" (uri):
1256
1257 <dd>The client MUST supply a URI for the specified printer class.
1258
1259 </dl>
1260
1261 <p>Group 2: Printer Object Attributes
1262
1263 <dl>
1264
1265 <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3</span>
1266
1267 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
1268
1269 <dt>"member-uris" (1setof uri):
1270
1271 <dd>The client OPTIONALLY supplies the "member-uris" set
1272 specifying the printers and printer classes that are part of the class.
1273
1274 <dt>"printer-is-accepting-jobs" (boolean):
1275
1276 <dd>The client OPTIONALLY supplies this boolean attribute
1277 indicating whether or not the class object should accept new jobs.
1278
1279 <dt>"printer-info" (text(127)):
1280
1281 <dd>The client OPTIONALLY supplies this attribute indicating the
1282 printer information string.
1283
1284 <dt>"printer-location" (text(127)):
1285
1286 <dd>The client OPTIONALLY supplies this attribute indicating a
1287 textual location of the class.
1288
1289 <dt>"printer-more-info" (uri):
1290
1291 <dd>The client OPTIONALLY supplies this attribute indicating a
1292 URI for additional class information.
1293
1294 <dt>"printer-state" (type2 enum):
1295
1296 <dd>The client OPTIONALLY supplies this attribute indicating the
1297 initial/current state of the class. Only the "idle" and "stopped"
1298 enumerations are recognized.
1299
1300 <dt>"printer-state-message" (text(MAX)):
1301
1302 <dd>The client OPTIONALLY supplies this attribute indicating a
1303 textual reason for the current class state.
1304
1305 <dt>"requesting-user-name-allowed" (1setof name(127))
1306 <br><i>OR</i>
1307 <br>"requesting-user-name-denied" (1setof name(127)):
1308
1309 <dd>The client OPTIONALLY supplies one of these attributes to
1310 specify an access control list for incoming print jobs. To allow
1311 all users access to a class, use the delete tag for the
1312 attribute value.
1313
1314 </dl>
1315
1316 <h4>CUPS-Add-Modify-Class Response</h4>
1317
1318 <p>The following groups of attributes are send as part of the CUPS-Add-Modify-Class Response:
1319
1320 <p>Group 1: Operation Attributes
1321
1322 <dl>
1323
1324 <dt>Status Message:
1325
1326 <dd>The standard response status message.
1327
1328 <dt>Natural Language and Character Set:
1329
1330 <dd>The "attributes-charset" and "attributes-natural-language"
1331 attributes as described in section 3.1.4.2 of the IPP Model and
1332 Semantics document.
1333
1334 </dl>
1335
1336 <h3 class='title'><a name='CUPS_DELETE_CLASS'>CUPS-Delete-Class Operation</a></h3>
1337
1338 <p>The CUPS-Delete-Class operation (0x4007) removes an existing printer
1339 class from the system.
1340
1341 <h4>CUPS-Delete-Class Request</h4>
1342
1343 <p>The following groups of attributes are supplied as part of the
1344 CUPS-Delete-Class request:
1345
1346 <p>Group 1: Operation Attributes
1347
1348 <dl>
1349
1350 <dt>Natural Language and Character Set:
1351
1352 <dd>The "attributes-charset" and "attributes-natural-language"
1353 attributes as described in section 3.1.4.1 of the IPP Model and
1354 Semantics document.
1355
1356 <dt>"printer-uri" (uri):
1357
1358 <dd>The client MUST supply a URI for the specified printer class.
1359
1360 </dl>
1361
1362 <h4>CUPS-Delete-Class Response</h4>
1363
1364 <p>The following groups of attributes are send as part of the
1365 CUPS-Delete-Class Response:
1366
1367 <p>Group 1: Operation Attributes
1368
1369 <dl>
1370
1371 <dt>Status Message:
1372
1373 <dd>The standard response status message.
1374
1375 <dt>Natural Language and Character Set:
1376
1377 <dd>The "attributes-charset" and "attributes-natural-language"
1378 attributes as described in section 3.1.4.2 of the IPP Model and
1379 Semantics document.
1380
1381 </dl>
1382
1383 <h3 class='title'><a name='CUPS_ACCEPT_JOBS'>CUPS-Accept-Jobs Operation</a></h3>
1384
1385 <p>The CUPS-Accept-Jobs operation (0x4008) sets the
1386 "printer-is-accepting-jobs" attribute to true for the specified printer
1387 or printer class.
1388
1389 <h4>CUPS-Accept-Jobs Request</h4>
1390
1391 <p>The following groups of attributes are supplied as part of the
1392 CUPS-Accept-Jobs request:
1393
1394 <p>Group 1: Operation Attributes
1395
1396 <dl>
1397
1398 <dt>Natural Language and Character Set:
1399
1400 <dd>The "attributes-charset" and "attributes-natural-language"
1401 attributes as described in section 3.1.4.1 of the IPP Model and
1402 Semantics document.
1403
1404 <dt>"printer-uri" (uri):
1405
1406 <dd>The client MUST supply a URI for the specified printer or printer class.
1407
1408 </dl>
1409
1410 <h4>CUPS-Accept-Jobs Response</h4>
1411
1412 <p>The following groups of attributes are send as part of the
1413 CUPS-Accept-Jobs Response:
1414
1415 <p>Group 1: Operation Attributes
1416
1417 <dl>
1418
1419 <dt>Status Message:
1420
1421 <dd>The standard response status message.
1422
1423 <dt>Natural Language and Character Set:
1424
1425 <dd>The "attributes-charset" and "attributes-natural-language"
1426 attributes as described in section 3.1.4.2 of the IPP Model and
1427 Semantics document.
1428
1429 </dl>
1430
1431 <h3 class='title'><a name='CUPS_REJECT_JOBS'>CUPS-Reject-Jobs Operation</a></h3>
1432
1433 <p>The CUPS-Reject-Jobs operation (0x4009) sets
1434 the"printer-is-accepting-jobs" attribute to false for the specified
1435 printer or printer class.
1436
1437 <h4>CUPS-Reject-Jobs Request</h4>
1438
1439 <p>The following groups of attributes are supplied as part of the
1440 CUPS-Reject-Jobs request:
1441
1442 <p>Group 1: Operation Attributes
1443
1444 <dl>
1445
1446 <dt>Natural Language and Character Set:
1447
1448 <dd>The "attributes-charset" and "attributes-natural-language"
1449 attributes as described in section 3.1.4.1 of the IPP Model and
1450 Semantics document.
1451
1452 <dt>"printer-uri" (uri):
1453
1454 <dd>The client MUST supply a URI for the specified printer or printer class.
1455
1456 </dl>
1457
1458 <p>Group 2: Printer Object Attributes
1459
1460 <dl>
1461
1462 <dt>"printer-state-message" (text(MAX)):
1463
1464 <dd>The client OPTIONALLY supplies this attribute indicating a
1465 textual reason for the current printer state.
1466
1467 </dl>
1468
1469 <h4>CUPS-Reject-Jobs Response</h4>
1470
1471 <p>The following groups of attributes are send as part of the
1472 CUPS-Reject-Jobs Response:
1473
1474 <p>Group 1: Operation Attributes
1475
1476 <dl>
1477
1478 <dt>Status Message:
1479
1480 <dd>The standard response status message.
1481
1482 <dt>Natural Language and Character Set:
1483
1484 <dd>The "attributes-charset" and "attributes-natural-language"
1485 attributes as described in section 3.1.4.2 of the IPP Model and
1486 Semantics document.
1487
1488 </dl>
1489
1490 <h3 class='title'><a name='CUPS_SET_DEFAULT'>CUPS-Set-Default Operation</a></h3>
1491
1492 <p>The CUPS-Set-Default operation (0x400A) sets the default printer
1493 destination for all clients when a resource name of "/printers" is
1494 specified.
1495
1496 <h4>CUPS-Set-Default Request</h4>
1497
1498 <p>The following groups of attributes are supplied as part of the
1499 CUPS-Set-Default request:
1500
1501 <p>Group 1: Operation Attributes
1502
1503 <dl>
1504
1505 <dt>Natural Language and Character Set:
1506
1507 <dd>The "attributes-charset" and "attributes-natural-language"
1508 attributes as described in section 3.1.4.1 of the IPP Model and
1509 Semantics document.
1510
1511 <dt>"printer-uri" (uri):
1512
1513 <dd>The client MUST supply a URI for the specified printer or
1514 printer class.
1515
1516 </dl>
1517
1518 <h4>CUPS-Set-Default Response</h4>
1519
1520 <p>The following groups of attributes are send as part of the
1521 CUPS-Set-Default Response:
1522
1523 <p>Group 1: Operation Attributes
1524
1525 <dl>
1526
1527 <dt>Status Message:
1528
1529 <dd>The standard response status message.
1530
1531 <dt>Natural Language and Character Set:
1532
1533 <dd>The "attributes-charset" and "attributes-natural-language"
1534 attributes as described in section 3.1.4.2 of the IPP Model and
1535 Semantics document.
1536
1537 </dl>
1538
1539 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_GET_DEVICES'>CUPS-Get-Devices Operation</a></h3>
1540
1541 <p>The CUPS-Get-Devices operation (0x400B) returns all of the
1542 supported device-uri's for the server.</p>
1543
1544 <h4>CUPS-Get-Devices Request</h4>
1545
1546 <p>The following groups of attributes are supplied as part of the
1547 CUPS-Get-Devices request:
1548
1549 <p>Group 1: Operation Attributes
1550
1551 <dl>
1552
1553 <dt>Natural Language and Character Set:
1554
1555 <dd>The "attributes-charset" and "attributes-natural-language"
1556 attributes as described in section 3.1.4.1 of the IPP Model and
1557 Semantics document.
1558
1559 <dt>"device-class" (type1 keyword):
1560
1561 <dd>The client OPTIONALLY supplies a device class keyword to select
1562 which devices are returned.
1563
1564 <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4</span>
1565
1566 <dd>The client OPTIONALLY supplies a set of scheme names that the
1567 requestor does not want to discover. If the client omits this attribute,
1568 the server responds with devices of all schemes.
1569
1570 <dt>"limit" (integer (1:MAX)):
1571
1572 <dd>The client OPTIONALLY supplies this attribute limiting the number of
1573 devices that are returned.
1574
1575 <dt>"requested-attributes" (1setOf keyword) :
1576
1577 <dd>The client OPTIONALLY supplies a set of attribute names and/or
1578 attribute group names in whose values the requester is interested. If
1579 the client omits this attribute, the server responds as if this
1580 attribute had been supplied with a value of 'all'.
1581
1582 <dt>"timeout" (integer (1:MAX)) :<span class='info'>CUPS 1.4</span>
1583
1584 <dd>The client OPTIONALLY supplies this attribute limiting the number of
1585 devices that are returned.
1586
1587 </dl>
1588
1589 <h4>CUPS-Get-Devices Response</h4>
1590
1591 <p>The following groups of attributes are send as part of the
1592 CUPS-Get-Devices Response:
1593
1594 <p>Group 1: Operation Attributes
1595
1596 <dl>
1597
1598 <dt>Status Message:
1599
1600 <dd>The standard response status message.
1601
1602 <dt>Natural Language and Character Set:
1603
1604 <dd>The "attributes-charset" and "attributes-natural-language"
1605 attributes as described in section 3.1.4.2 of the IPP Model and
1606 Semantics document.
1607
1608 </dl>
1609
1610 <p>Group 2: Device Object Attributes
1611
1612 <dl>
1613
1614 <dt>The set of requested attributes and their current values for
1615 each device.
1616
1617 </dl>
1618
1619 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_GET_PPDS'>CUPS-Get-PPDs Operation</a></h3>
1620
1621 <p>The CUPS-Get-PPDs operation (0x400C) returns all of the
1622 locally available PPD files on the system.</p>
1623
1624 <h4>CUPS-Get-PPDs Request</h4>
1625
1626 <p>The following groups of attributes are supplied as part of the
1627 CUPS-Get-PPDs request:
1628
1629 <p>Group 1: Operation Attributes
1630
1631 <dl>
1632
1633 <dt>Natural Language and Character Set:
1634
1635 <dd>The "attributes-charset" and "attributes-natural-language"
1636 attributes as described in section 3.1.4.1 of the IPP Model and
1637 Semantics document.
1638
1639 <dt>"limit" (integer (1:MAX)):
1640
1641 <dd>The client OPTIONALLY supplies this attribute limiting the number of PPDs that are returned.
1642
1643 <dt>"ppd-make" (text(127)):
1644
1645 <dd>The client OPTIONALLY supplies a printer manufacturer to select which PPDs are returned.
1646
1647 <dt>"ppd-make-and-model" (text(127)):<span class='info'>CUPS 1.3</span>
1648
1649 <dd>The client OPTIONALLY supplies a make and model to select which PPDs are returned.
1650
1651 <dt>"ppd-model-number" (integer):<span class='info'>CUPS 1.3</span>
1652
1653 <dd>The client OPTIONALLY supplies a model number to select which PPDs are returned.
1654
1655 <dt>"ppd-natural-language" (naturalLanguage):<span class='info'>CUPS 1.3</span>
1656
1657 <dd>The client OPTIONALLY supplies a language to select which PPDs are returned.
1658
1659 <dt>"ppd-product" (text(127)):<span class='info'>CUPS 1.3</span>
1660
1661 <dd>The client OPTIONALLY supplies a PostScript product string to select which PPDs are returned.
1662
1663 <dt>"ppd-psversion" (text(127)):<span class='info'>CUPS 1.3</span>
1664
1665 <dd>The client OPTIONALLY supplies a PostScript version string to select which PPDs are returned.
1666
1667 <dt>"ppd-type" (type1 keyword):<span class='info'>CUPS 1.3</span>
1668
1669 <dd>The client OPTIONALLY supplies a driver type to select which PPDs are returned.
1670
1671 <dt>"requested-attributes" (1setOf keyword) :
1672
1673 <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.
1674
1675 </dl>
1676
1677 <h4>CUPS-Get-PPDs Response</h4>
1678
1679 <p>The following groups of attributes are send as part of the
1680 CUPS-Get-PPDs Response:
1681
1682 <p>Group 1: Operation Attributes
1683
1684 <dl>
1685
1686 <dt>Status Message:
1687
1688 <dd>The standard response status message.
1689
1690 <dt>Natural Language and Character Set:
1691
1692 <dd>The "attributes-charset" and "attributes-natural-language"
1693 attributes as described in section 3.1.4.2 of the IPP Model and
1694 Semantics document.
1695
1696 </dl>
1697
1698 <p>Group 2: PPD Attributes
1699
1700 <dl>
1701
1702 <dt>The set of requested attributes and their current values for each
1703 PPD file.
1704
1705 </dl>
1706
1707 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_MOVE_JOB'>CUPS-Move-Job Operation</a></h3>
1708
1709 <p>The CUPS-Move-Job operation (0x400D) moves an active print job
1710 to a different printer.</p>
1711
1712 <h4>CUPS-Move-Job Request</h4>
1713
1714 <p>The following groups of attributes are supplied as part of the
1715 CUPS-Move-Job request:
1716
1717 <p>Group 1: Operation Attributes
1718
1719 <dl>
1720
1721 <dt>Natural Language and Character Set:
1722
1723 <dd>The "attributes-charset" and "attributes-natural-language"
1724 attributes as described in section 3.1.4.1 of the IPP Model and
1725 Semantics document.
1726
1727 <dt>"printer-uri" (uri) and "job-id" (integer)
1728 <br><i>OR</i>
1729 <br>"job-uri":
1730
1731 <dd>The client MUST supply a URI for the specified printer and
1732 a job ID number, or the job URI.
1733
1734 </dl>
1735
1736 <p>Group 2: Job Template Attributes
1737
1738 <dl>
1739
1740 <dt>"job-printer-uri" (uri)
1741
1742 <dd>The client MUST supply a URI for a printer on the same server.
1743
1744 </dl>
1745
1746 <h4>CUPS-Move-Job Response</h4>
1747
1748 <p>The following groups of attributes are send as part of the
1749 CUPS-Move-Job Response:
1750
1751 <p>Group 1: Operation Attributes
1752
1753 <dl>
1754
1755 <dt>Status Message:
1756
1757 <dd>The standard response status message.
1758
1759 <dt>Natural Language and Character Set:
1760
1761 <dd>The "attributes-charset" and "attributes-natural-language"
1762 attributes as described in section 3.1.4.2 of the IPP Model and
1763 Semantics document.
1764
1765 </dl>
1766
1767 <h3 class='title'><span class='info'>CUPS 1.2</span><a name='CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job Operation</a></h3>
1768
1769 <p>The CUPS-Authenticate-Job operation (0x400E) authenticate a
1770 print job for printing. Typically this is used when printing to a
1771 remote server. The authentication information is passed in the
1772 HTTP request.</p>
1773
1774 <h4>CUPS-Authenticate-Job Request</h4>
1775
1776 <p>The following groups of attributes are supplied as part of the
1777 CUPS-Authenticate-Job request:
1778
1779 <p>Group 1: Operation Attributes
1780
1781 <dl>
1782
1783 <dt>Natural Language and Character Set:
1784
1785 <dd>The "attributes-charset" and "attributes-natural-language"
1786 attributes as described in section 3.1.4.1 of the IPP Model and
1787 Semantics document.
1788
1789 <dt>"printer-uri" (uri) and "job-id" (integer)
1790 <br><i>OR</i>
1791 <br>"job-uri":
1792
1793 <dd>The client MUST supply a URI for the specified printer and
1794 a job ID number, or the job URI.
1795
1796 </dl>
1797
1798 <p>Group 2: Job Attributes
1799
1800 <dl>
1801
1802 <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3</span>
1803
1804 <dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
1805
1806 </dl>
1807
1808 <h4>CUPS-Authenticate-Job Response</h4>
1809
1810 <p>The following groups of attributes are send as part of the
1811 CUPS-Authenticate-Job Response:
1812
1813 <p>Group 1: Operation Attributes
1814
1815 <dl>
1816
1817 <dt>Status Message:
1818
1819 <dd>The standard response status message.
1820
1821 <dt>Natural Language and Character Set:
1822
1823 <dd>The "attributes-charset" and "attributes-natural-language"
1824 attributes as described in section 3.1.4.2 of the IPP Model and
1825 Semantics document.
1826
1827 </dl>
1828
1829 <p>Group 2: Unsupported Attributes (status=client-eror-attributes-or-values-not-supported)
1830
1831 <dl>
1832
1833 <dt>auth-info-required (1setOf Type2 keyword)
1834
1835 <dd>The required authentication information.
1836
1837 </dl
1838
1839 <h3 class='title'><span class='info'>CUPS 1.3</span><a name='CUPS_GET_PPD'>CUPS-Get-PPD Operation</a></h3>
1840
1841 <p>The CUPS-Get-PPD operation (0x400F) gets a PPD file from the
1842 server. The PPD file can be specified using a <tt>ppd-name</tt>
1843 returned by <a href='#CUPS_GET_PPDS'><tt>CUPS-Get-PPDs</tt></a>
1844 or using the <tt>printer-uri</tt> for a queue.</p>
1845
1846 <p>If the PPD file is found, <tt>successful-ok</tt> is returned with
1847 the PPD file following the response data.</p>
1848
1849 <p>If the PPD file cannot be served by the local server because
1850 the <tt>printer-uri</tt> attribute points to an external printer,
1851 a <tt>cups-see-other</tt> status is returned with the correct
1852 URI to use.</p>
1853
1854 <p>If the PPD file does not exist, <tt>client-error-not-found</tt> is
1855 returned.</p>
1856
1857 <h4>CUPS-Get-PPD Request</h4>
1858
1859 <p>The following group of attributes is supplied as part of the
1860 CUPS-Get-PPD request:
1861
1862 <p>Group 1: Operation Attributes
1863
1864 <dl>
1865
1866 <dt>Natural Language and Character Set:
1867
1868 <dd>The "attributes-charset" and "attributes-natural-language"
1869 attributes as described in section 3.1.4.1 of the IPP Model and
1870 Semantics document.
1871
1872 <dt>"printer-uri" (uri)
1873 <br><i>OR</i>
1874 <br>"ppd-name" (name(255)):
1875
1876 <dd>The client MUST supply a printer URI or PPD name.
1877
1878 </dl>
1879
1880 <h4>CUPS-Get-PPD Response</h4>
1881
1882 <p>The following group of attributes is sent as part of the
1883 CUPS-Get-PPD Response:
1884
1885 <p>Group 1: Operation Attributes
1886
1887 <dl>
1888
1889 <dt>Status Message:
1890
1891 <dd>The standard response status message.
1892
1893 <dt>Natural Language and Character Set:
1894
1895 <dd>The "attributes-charset" and "attributes-natural-language"
1896 attributes as described in section 3.1.4.2 of the IPP Model and
1897 Semantics document.
1898
1899 <dt>"printer-uri" (uri):
1900
1901 <dd>The printer that provides the actual PPD file when
1902 the status code is cups-see-other (0x280)
1903
1904 </dl>
1905
1906 <p>If the status code is <tt>successful-ok</tt>, the PPD file follows
1907 the end of the IPP response.</p>
1908
1909 <h3 class='title'><span class='info'>CUPS 1.4</span><a name='CUPS_GET_DOCUMENT'>CUPS-Get-Document Operation</a></h3>
1910
1911 <p>The CUPS-Get-Document operation (0x4027) gets a document file from a
1912 job on the server. The document file is specified using the
1913 <tt>document-number</tt> and either the <tt>job-uri</tt> or <tt>printer-uri</tt>
1914 and <tt>job-id</tt> identifying the job.</p>
1915
1916 <p>If the document file is found, <tt>successful-ok</tt> is returned with
1917 the document file following the response data.</p>
1918
1919 <p>If the document file does not exist, <tt>client-error-not-found</tt> is
1920 returned.</p>
1921
1922 <p>If the requesting user does not have access to the document file,
1923 <tt>client-error-not-authorized</tt> is returned.
1924
1925 <h4>CUPS-Get-Document Request</h4>
1926
1927 <p>The following group of attributes is supplied as part of the
1928 CUPS-Get-Document request:
1929
1930 <p>Group 1: Operation Attributes
1931
1932 <dl>
1933
1934 <dt>Natural Language and Character Set:
1935
1936 <dd>The "attributes-charset" and "attributes-natural-language"
1937 attributes as described in section 3.1.4.1 of the IPP Model and
1938 Semantics document.
1939
1940 <dt>"printer-uri" (uri) and "job-id" (integer)
1941 <br><i>OR</i>
1942 <br>"job-uri" (uri):
1943
1944 <dd>The client MUST supply a printer URI and job ID or job URI.
1945
1946 <dt>"document-number" (integer(1:MAX)):
1947
1948 <dd>The client MUST supply a document number to retrieve. The
1949 <tt>document-count</tt> attribute for the job defines the maximum
1950 document number that can be specified. In the case of jobs with
1951 banners (<tt>job-sheets</tt> is not "none"), document number 1
1952 will typically contain the start banner and document number N
1953 will typically contain the end banner.
1954
1955 </dl>
1956
1957 <h4>CUPS-Get-Document Response</h4>
1958
1959 <p>The following group of attributes is sent as part of the
1960 CUPS-Get-Document Response:
1961
1962 <p>Group 1: Operation Attributes
1963
1964 <dl>
1965
1966 <dt>Status Message:
1967
1968 <dd>The standard response status message.
1969
1970 <dt>Natural Language and Character Set:
1971
1972 <dd>The "attributes-charset" and "attributes-natural-language"
1973 attributes as described in section 3.1.4.2 of the IPP Model and
1974 Semantics document.
1975
1976 <dt>"document-format" (mimeType):
1977
1978 <dd>The format of the document file.
1979
1980 <dt>"document-number" (integer(1:MAX)):
1981
1982 <dd>The requested document number.
1983
1984 <dt>"document-name" (name(MAX)):
1985
1986 <dd>The name that was supplied with the document, if any.
1987
1988 </dl>
1989
1990 <p>If the status code is <tt>successful-ok</tt>, the document file follows
1991 the end of the IPP response.</p>
1992
1993
1994 <h2 class='title'><a name='ATTRIBUTES'>Attributes</a></h2>
1995
1996 <p>CUPS provides many extension attributes to support multiple
1997 devices, PPD files, standard job filters, printers, and printer
1998 classes.</p>
1999
2000 <h3 class='title'><a name='DEVICE_ATTRIBUTES'>Device Attributes</a></h3>
2001
2002 <p>Device attributes are returned by the CUPS-Get-Devices
2003 operation and enumerate all of the available hardware devices and
2004 network protocols that are supported by the server.</p>
2005
2006 <h4><a name="device-class">device-class (type2 keyword)</a></h4>
2007
2008 <p>The device-class attribute specifies the class of device and can be
2009 one of the following:
2010
2011 <ul>
2012
2013 <li>"file" - a disk file.
2014
2015 <li>"direct" - a parallel or fixed-rate serial data port,
2016 currently used for Centronics, IEEE-1284, and USB printer
2017 ports.
2018
2019 <li>"serial" - a variable-rate serial port.
2020
2021 <li>"network" - a network connection, typically via AppSocket,
2022 HTTP, IPP, LPD, or SMB/CIFS protocols.
2023
2024 </ul>
2025
2026 <h4><a name="device-id">device-id (text(127))</a><span class="info">CUPS 1.2</span></h4>
2027
2028 <p>The device-id attribute specifies the IEEE-1284 device ID
2029 string for the device.</p>
2030
2031 <h4><a name="device-info">device-info (text(127))</a></h4>
2032
2033 <p>The device-info attribute specifies a human-readable string describing
2034 the device, e.g. "Parallel Port #1".
2035
2036 <h4><a name="device-location">device-location (text(127))</a><span class="info">CUPS 1.4</span></h4>
2037
2038 <p>The device-location attribute specifies the physical location of the
2039 printer.
2040
2041 <h4><a name="device-make-and-model">device-make-and-model (text(127))</a></h4>
2042
2043 <p>The device-make-and-model attribute specifies a device
2044 identification string provided by the printer connected to the device.
2045 If the device or printer does not support identification then this
2046 attribute contains the string "unknown".
2047
2048 <h4><a name="device-uri">device-uri (uri)</a></h4>
2049
2050 <p>The device-uri attribute specifies a unique identifier for the
2051 device. The actual format of the device-uri string depends on the value
2052 of the device-class attribute:
2053
2054 <ul>
2055
2056 <li>"file" - The device-uri will be of the form
2057 "file:///path/to/filename".
2058
2059 <li>"direct" - The device-uri will be of the form
2060 "scheme:/dev/filename" or "scheme://vendor/identifier",
2061 where scheme may be "parallel" or "usb" in the current
2062 implementation.
2063
2064 <li>"serial" - The device-uri will be of the form
2065 "serial:/dev/filename?baud=value+parity=value+flow=value".
2066 The baud value is the data rate in bits per second; the
2067 supported values depend on the underlying hardware.
2068 The parity value can be one of "none", "even", or "odd".
2069 The flow value can be one of "none", "soft" (XON/XOFF
2070 handshaking), "hard" or "rts/cts" (RTS/CTS handshaking),
2071 or "dtrdsr" (DTR/DSR handshaking).
2072
2073 <p>The URI returned by CUPS-Get-Devices will contain the
2074 maximum baud rate supported by the device and the best
2075 type of flow control available ("soft" or "hard").
2076
2077 <li>"network" - The device-uri will be of the form
2078 "scheme://[username:password@]hostname[:port]/[resource]",
2079 where scheme may be "http", "https", "ipp", "lpd", "smb", or
2080 "socket" in the current implementation.
2081
2082 <p>The URI returned by CUPS-Get-Devices will only contain
2083 the scheme name ("scheme"). It is up to the client
2084 application to add the appropriate host and other
2085 information when adding a new printer.
2086
2087 <p>The URI returned by Get-Printer-Attributes and
2088 CUPS-Get-Printers has any username and password information
2089 stripped; the information is still stored and used by the
2090 server internally to perform any needed authentication.
2091
2092 </ul>
2093
2094 <h3 class='title'><a name='JOB_TEMPLATE_ATTRIBUTES'>Job Template Attributes</a></h3>
2095
2096 <h4><a name="auth-info">auth-info (1setOf text(MAX))</a><span class="info">CUPS 1.3</span></h4>
2097
2098 <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.
2099
2100 <h4><a name="blackplot">blackplot (boolean)</a></h4>
2101
2102 <p>The blackplot attribute specifies whether HP-GL/2 plot files should be
2103 rendered entirely in black ink (blackplot=true) or using the colors and shades
2104 specified in the file (blackplot=false). The default value is false.
2105
2106 <h4><a name="brightness">brightness (integer(0:200))</a><span class="info">Deprecated</span></h4>
2107
2108 <p>The brightness attribute specifies the overall brightness of the printed
2109 output in percent. A brightness of 100 is normal, while 200 is twice as
2110 bright and 50 is half as bright. The default value is 100.
2111
2112 <p>Brightness is applied to the Cyan, Magenta, Yellow, and Black values using
2113 the function "f(x) = brightness / 100 * x".
2114
2115 <blockquote><b>Note:</b>
2116
2117 <p>This attribute is deprecated and will be removed from a future CUPS
2118 release.</p>
2119
2120 </blockquote>
2121
2122 <h4><a name="columns">columns (integer(1:4))</a></h4>
2123
2124 <p>The columns attribute specifies the number of columns to generate when
2125 printing text files. The default value is 1.
2126
2127 <h4><a name="cpi">cpi (type2 enum)</a></h4>
2128
2129 <p>The cpi attribute specifies the number of characters per inch when
2130 printing text files. Only the values 10, 12, and 17 are currently
2131 supported. The default value is 10.
2132
2133 <h4><a name="document-count">document-count (integer(1:MAX))</a></h4>
2134
2135 <p>The document-count attribute specifies the number of documents that
2136 are present in the job.
2137
2138 <h4><a name="fitplot">fitplot (boolean)</a></h4>
2139
2140 <p>The fitplot attribute specifies whether to scale HP-GL/2 plot files to
2141 fit on the selected media (fitplot=true) or use the physical scale specified
2142 in the plot file (fitplot=false). The default value is false.
2143
2144 <h4><a name="gamma">gamma (integer(1:10000))</a><span class="info">Deprecated</span></h4>
2145
2146 <p>The gamma attribute specifies the luminance correction for the output.
2147 A value of 1000 specifies no correction, while values of 2000 and 500 will
2148 generate lighter and darker output, respectively. The default value is
2149 1000.
2150
2151 <p>Gamma is applied to the Red, Green, and Blue values (or luminance for
2152 grayscale output) using the function "f(x) = x<sup>(1000/gamma)</sup>".
2153
2154 <blockquote><b>Note:</b>
2155
2156 <p>This attribute is deprecated and will be removed from a future CUPS
2157 release.</p>
2158
2159 </blockquote>
2160
2161 <h4><a name="hue">hue (integer(-180:180))</a><span class="info">Deprecated</span></h4>
2162
2163 <p>The hue attribute specifies a color hue rotation when printing image
2164 files. The default value is 0.
2165
2166 <blockquote><b>Note:</b>
2167
2168 <p>This attribute is deprecated and will be removed from a future CUPS
2169 release.</p>
2170
2171 </blockquote>
2172
2173 <h4><a name="job-billing">job-billing (text(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2174
2175 <p>The job-billing attribute provides a text value to associate with a job
2176 for billing purposes.
2177
2178 <h4><a name="job-hold-until">job-hold-until (keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2179
2180 <p>The job-hold-until attribute specifies a hold time. In addition to the
2181 standard IPP/1.1 keyword names, CUPS supports name values of the form
2182 "HH:MM" and "HH:MM:SS" that specify a hold time. The hold time is in
2183 Universal Coordinated Time (UTC) and <i>not</i> in the local time zone. If the
2184 specified time is less than the current time, the job is held until the
2185 next day.
2186
2187 <h4><a name="job-media-progress">job-media-progress (integer(0:100))</a><span class='info'>CUPS 1.4</span></h4>
2188
2189 <p>The job-media-progress attribute specifies the percentage of completion of
2190 the current page. It is only valid when the job-state attribute has the
2191 "processing" value (5).</p>
2192
2193 <h4><a name="job-printer-state-message">job-printer-state-message (text(MAX))</a><span class='info'>CUPS 1.3</span></h4>
2194
2195 <p>The job-printer-state-message attribute provides the last known value of the printer-state-message attribute for the printer that processed (or is processing) the job.</p>
2196
2197 <h4><a name="job-printer-state-reasons">job-printer-state-reasons (1setOf type2 keyword)</a><span class='info'>CUPS 1.3</span></h4>
2198
2199 <p>The job-printer-state-reasons attribute provides the last known value of the printer-state-reasons attribute for the printer that processed (or is processing) the job.</p>
2200
2201 <h4><a name="job-sheets">job-sheets (1setof type3 keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2202
2203 <p>The job-sheets attribute specifies one or two banner files that are printed
2204 before and after a job. The reserved value of "none" disables banner printing.
2205 The default value is stored in the job-sheets-default attribute.
2206
2207 <p>If only one value is supplied, the banner file is printed before the job.
2208 If two values are supplied, the first value is used as the starting banner
2209 file and the second as the ending banner file.
2210
2211 <h4><a name="job-originating-host-name">job-originating-host-name (name(MAX))</a></h4>
2212
2213 <p><i>(CUPS 1.1.5 and higher)</i>
2214
2215 <p>The job-originating-host-name attribute specifies the host
2216 from which the job was queued. The value will be the hostname or
2217 IP address of the client depending on whether hostname
2218 resolution is enabled. The localhost address (127.0.0.1) is
2219 <b>always</b> resolved to the name "localhost".
2220
2221 <p>This attribute is read-only.
2222
2223 <h4><a name="lpi">lpi (type2 enum)</a></h4>
2224
2225 <p>The lpi attribute specifies the number of lines per inch when
2226 printing text files. Only the values 6 and 8 are currently supported.
2227 The default value is 6.
2228
2229 <h4><a name="mirror">mirror (boolean)</a></h4>
2230
2231 <p>The mirror attribute specifies whether pages are mirrored on
2232 their X axis, which is useful for printing transfer images on
2233 special media. The default value is false.
2234
2235 <h4><a name="natural-scaling">natural-scaling (integer(1:1000))</a><span class='info'>CUPS 1.1.9</span></h4>
2236 <p>The natural-scaling attribute specifies the scaling of image files with
2237 respect to the natural image size. A value of 100 specifies that the image
2238 file should exactly the natural size, while 50 is half the natural size
2239 and 200 is twice the natural size. The default value is 100.
2240
2241 <p>The ppi option can be used to override the natural resolution of the
2242 image, which controls the natural size.
2243
2244 <h4><a name="number-up-layout">number-up-layout (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
2245 <p>The number-up-layout attribute specifies the order each input
2246 page is placed on each output page. The following keywords are
2247 presently defined:
2248
2249 <ul>
2250
2251 <li><CODE>btlr</CODE> - Bottom to top, left to right</li>
2252
2253 <li><CODE>btrl</CODE> - Bottom to top, right to left</li>
2254
2255 <li><CODE>lrbt</CODE> - Left to right, bottom to top</li>
2256
2257 <li><CODE>lrtb</CODE> - Left to right, top to bottom (default)</li>
2258
2259 <li><CODE>rlbt</CODE> - Right to left, bottom to top</li>
2260
2261 <li><CODE>rltb</CODE> - Right to left, top to bottom</li>
2262
2263 <li><CODE>tblr</CODE> - Top to bottom, left to right</li>
2264
2265 <li><CODE>tbrl</CODE> - Top to bottom, right to left</li>
2266
2267 </ul>
2268
2269 <h4><a name="page-border">page-border (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
2270 <p>The page-border attribute specifies whether a border is
2271 draw around each page. The following keywords are presently
2272 defined:
2273
2274 <ul>
2275
2276 <li><CODE>double</CODE> - Two hairline borders are drawn</li>
2277
2278 <li><CODE>double-thick</CODE> - Two 1pt borders are drawn</li>
2279
2280 <li><CODE>none</CODE> - No border is drawn (default)</li>
2281
2282 <li><CODE>single</CODE> - A single hairline border is drawn</li>
2283
2284 <li><CODE>single-thick</CODE> - A single 1pt border is drawn</li>
2285
2286 </ul>
2287
2288 <h4><a name="page-bottom">page-bottom (integer(0:MAX))</a></h4>
2289
2290 <p>The page-bottom attribute specifies the bottom margin in points (72 points
2291 equals 1 inch). The default value is the device physical margin.
2292
2293 <h4><a name="page-label">page-label (text(MAX))</a><span class='info'>CUPS 1.1.7</span></h4>
2294 <p>The page-label attribute provides a text value to place in
2295 the header and footer on each page. If a classification level is
2296 set on the server, then this classification is printed before
2297 the page label.
2298
2299 <h4><a name="page-left">page-left (integer(0:MAX))</a></h4>
2300
2301 <p>The page-left attribute specifies the left margin in points (72 points
2302 equals 1 inch). The default value is the device physical margin.
2303
2304 <h4><a name="page-right">page-right (integer(0:MAX))</a></h4>
2305
2306 <p>The page-right attribute specifies the right margin in points (72 points
2307 equals 1 inch). The default value is the device physical margin.
2308
2309 <h4><a name="page-set">page-set (type2 keyword)</a></h4>
2310
2311 <p>The page-set attribute specifies which pages to print in a file. The
2312 supported keywords are "all", "even", and "odd". The default value is
2313 "all".
2314
2315 <h4><a name="page-top">page-top (integer(0:MAX))</a></h4>
2316
2317 <p>The page-top attribute specifies the top margin in points (72 points
2318 equals 1 inch). The default value is the device physical margin.
2319
2320 <h4><a name="penwidth">penwidth (integer(0:MAX))</a></h4>
2321
2322 <p>The penwidth attribute specifies the default pen width in micrometers
2323 when printing HP-GL/2 plot files. The default value is 1000 (1 millimeter).
2324
2325 <h4><a name="position">position (type2 keyword)</a></h4>
2326
2327 <p>The position attribute specifies the location of image files on the
2328 media. The following keyword values are recognized:
2329
2330 <ul>
2331
2332 <li><CODE>center</CODE> - Center the image on the page (default)
2333
2334 <li><CODE>top</CODE> - Print the image centered at the top of the page
2335
2336 <li><CODE>left</CODE> - Print the image centered on the left of page
2337
2338 <li><CODE>right</CODE> - Print the image centered on the right of the page
2339
2340 <li><CODE>top-left</CODE> - Print the image at the top left corner of
2341 the page
2342
2343 <li><CODE>top-right</CODE> - Print the image at the top right corner of
2344 the page
2345
2346 <li><CODE>bottom</CODE> - Print the image centered at the bottom of
2347 the page
2348
2349 <li><CODE>bottom-left</CODE> - Print the image at the bottom left
2350 corner of the page
2351
2352 <li><CODE>bottom-right</CODE> - Print the image at the bottom right
2353 corner of the page
2354
2355 </ul>
2356
2357 <h4><a name="ppi">ppi (integer(1:MAX))</a></h4>
2358
2359 <p>The ppi attribute specifies the resolution of an image file in pixels
2360 per inch. The default value is the resolution included with the file or
2361 128 if no resolution information is available.
2362
2363 <h4><a name="prettyprint">prettyprint (boolean)</a></h4>
2364
2365 <p>The prettyprint attribute specifies whether text files should be printed
2366 with a shaded header and keyword highlighting (prettyprint=true) or without
2367 additional formatting (prettyprint=false). The default value is false.
2368
2369 <h4><a name="saturation">saturation (integer(0:200))</a><span class="info">Deprecated</span></h4>
2370
2371 <p>The saturation attribute specifies the color saturation when
2372 printing image files. A saturation of 100 is normal, while values of 50
2373 and 200 will be half and twice as colorful, respectively. The default
2374 value is 100.
2375
2376 <blockquote><b>Note:</b>
2377
2378 <p>This attribute is deprecated and will be removed from a future CUPS
2379 release.</p>
2380
2381 </blockquote>
2382
2383 <h4><a name="scaling">scaling (integer(1:1000))</a></h4>
2384
2385 <p>The scaling attribute specifies the scaling of image files with
2386 respect to the selected media. A value of 100 specifies that the image
2387 file should fit 100% of the page, or as much as possible given the
2388 image dimensions. The default value is unspecified.
2389
2390 <p>The scaling attribute overrides the ppi attribute if specified.
2391
2392 <h4><a name="wrap">wrap (boolean)</a></h4>
2393
2394 <p>The wrap attribute specifies whether long lines should be wrapped
2395 (wrap=true) or not (wrap=false) when printing text files. The default
2396 value is true.
2397
2398 <h3 class='title'><a name='PPD_ATTRIBUTES'>PPD Attributes</a></h3>
2399
2400 <h4><a name="ppd-device-id">ppd-device-id (text(127))</a></h4>
2401
2402 <p>The ppd-device-id attribute specifies the IEEE-1284 device ID
2403 string for the device described by the PPD file.</p>
2404
2405 <h4><a name="ppd-make">ppd-make (text(127))</a></h4>
2406
2407 <p>The ppd-make attribute specifies the manufacturer of the printer
2408 (the Manufacturer attribute in the PPD file). If the manufacturer
2409 is not specified in the PPD file then an educated guess is made using
2410 the NickName attribute in the PPD file.
2411
2412 <h4><a name="ppd-make-and-model">ppd-make-and-model (text(127))</a></h4>
2413
2414 <p>The ppd-make-and-model attribute specifies the manufacturer and model
2415 name of the PPD file (the NickName attribute in the PPD file). If the
2416 make and model is not specified in the PPD file then the ModelName or
2417 ShortNickName attributes are used instead.
2418
2419 <h4><a name="ppd-model-number">ppd-model-number (integer)</a><span class="info">CUPS 1.3</span></h4>
2420
2421 <p>The ppd-model-number attribute provides the <tt>cupsModelNumber</tt> value from the PPD file.
2422
2423 <h4><a name="ppd-name">ppd-name (name(255))</a></h4>
2424
2425 <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.
2426
2427 <h4><a name="ppd-natural-language">ppd-natural-language (1setOf naturalLanguage)</a></h4>
2428
2429 <p>The ppd-natural-language attribute specifies the language encoding
2430 of the PPD file (the LanguageVersion attribute in the PPD file). If the
2431 language is unknown or undefined then "en" (English) is assumed.
2432
2433 <h4><a name="ppd-product">ppd-product (1setOf text(127))</a></h4>
2434
2435 <p>The ppd-product attribute specifies the Product attribute values in the PPD file.
2436
2437 <h4><a name="ppd-psversion">ppd-psversion (1setOf text(127))</a><span class="info">CUPS 1.3</span></h4>
2438
2439 <p>The ppd-product attribute specifies the PSVersion attribute values in the PPD file.
2440
2441 <h4><a name="ppd-type">ppd-type (type1 keyword)</a><span class="info">CUPS 1.3</span></h4>
2442
2443 <p>The ppd-type attribute specifies the type of driver described by the PPD file:</p>
2444
2445 <ul>
2446
2447 <li><tt>fax</tt> - A facsimile or multi-function device</li>
2448
2449 <li><tt>pdf</tt> - A PDF printer</li>
2450
2451 <li><tt>postscript</tt> - A PostScript printer (no filters)</li>
2452
2453 <li><tt>raster</tt> - A CUPS raster driver</li>
2454
2455 <li><tt>unknown</tt> - An unknown or hybrid driver</li>
2456
2457 </ul>
2458
2459
2460 <h3 class='title'><a name='PRINTER_ATTRIBUTES'>Printer Attributes</a></h3>
2461
2462 <h4><a name="auth-info-required">auth-info-required (1setOf type2 keyword)</a><span class="info">CUPS 1.3</span></h4>
2463
2464 <p>The auth-info-required attribute specifies the authentication information that is required for printing a job. The following keywords are recognized:</p>
2465
2466 <ul>
2467
2468 <li><tt>domain</tt> - A domain name is required.</li>
2469
2470 <li><tt>none</tt> - No authentication is required - this keyword can only appear by itself.</li>
2471
2472 <li><tt>password</tt> - A password is required.</li>
2473
2474 <li><tt>username</tt> - A username is required.</li>
2475
2476 </ul>
2477
2478 <h4><a name="job-k-limit">job-k-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
2479
2480 <p>The job-k-limit attribute specifies the maximum number of kilobytes that
2481 may be printed by a user, including banner files. The default value of 0
2482 specifies that there is no limit.
2483
2484 <h4><a name="job-page-limit">job-page-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
2485
2486 <p>The job-page-limit attribute specifies the maximum number of pages that
2487 may be printed by a user, including banner files. The default value of 0
2488 specifies that there is no limit.
2489
2490 <h4><a name="job-quota-period">job-quota-period (integer)</a><span class='info'>CUPS 1.1</span></h4>
2491
2492 <p>The job-quota-period attribute specifies the time period used for quota
2493 calculations, in seconds. The default value of 0 specifies that the limits
2494 apply to all jobs that have been printed by a user that are still known to
2495 the system.
2496
2497 <h4><a name="job-sheets-supported">job-sheets-supported (1setof type3 keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2498
2499 <p>The job-sheets-supported attribute specifies the available banner files.
2500 There will always be at least one banner file available called "none".
2501
2502 <h4><a name="marker-change-time">marker-change-time (integer)</a></h4>
2503
2504 <p>The marker-change-time attribute specifies the printer-up-time value when
2505 the last change to the marker-colors, marker-levels, marker-message,
2506 marker-names, or marker-types attributes was made.</p>
2507
2508 <h4><a name="marker-colors">marker-colors (1setof name(MAX))</a></h4>
2509
2510 <p>The marker-colors attribute specifies the color(s) for each supply in the
2511 printer. It is only available when the driver provides supply levels. The
2512 color is either "none" or one or more hex-encoded sRGB colors of the form
2513 "#RRGGBB".</p>
2514
2515 <h4><a name="marker-levels">marker-levels (1setof integer(-1:100))</a></h4>
2516
2517 <p>The marker-levels attribute specifies the current supply levels for the
2518 printer. It is only available when the driver provides supply levels. A
2519 value of -1 indicates the level is unknown, while values from 0 to 100
2520 indicate the corresponding percentage.</p>
2521
2522 <h4><a name="marker-message">marker-message (text(MAX))</a></h4>
2523
2524 <p>The marker-message attribute provides a human-readable status message
2525 for the current supply levels, e.g. "12 pages of ink remaining." It is only
2526 available when the driver provides supply levels.</p>
2527
2528 <h4><a name="marker-names">marker-names (1setof name(MAX))</a></h4>
2529
2530 <p>The marker-names attribute specifies the name(s) for each supply in the
2531 printer. It is only available when the driver provides supply levels.</p>
2532
2533 <h4><a name="marker-types">marker-types (1setof type3 keyword)</a></h4>
2534
2535 <p>The marker-types attribute specifies the type(s) of each supply in the
2536 printer. It is only available when the driver provides supply levels. The
2537 following (RFC 3805) types are currently supported:</p>
2538
2539 <ul>
2540
2541 <li><tt>toner</tt></li>
2542
2543 <li><tt>wasteToner</tt></li>
2544
2545 <li><tt>ink</tt></li>
2546
2547 <li><tt>inkCartridge</tt></li>
2548
2549 <li><tt>inkRibbon</tt></li>
2550
2551 <li><tt>wasteInk</tt></li>
2552
2553 <li><tt>opc</tt></li>
2554
2555 <li><tt>developer</tt></li>
2556
2557 <li><tt>fuserOil</tt></li>
2558
2559 <li><tt>solidWax</tt></li>
2560
2561 <li><tt>ribbonWax</tt></li>
2562
2563 <li><tt>wasteWax</tt></li>
2564
2565 <li><tt>fuser</tt></li>
2566
2567 <li><tt>coronaWire</tt></li>
2568
2569 <li><tt>fuserOilWick</tt></li>
2570
2571 <li><tt>cleanerUnit</tt></li>
2572
2573 <li><tt>fuserCleaningPad</tt></li>
2574
2575 <li><tt>transferUnit</tt></li>
2576
2577 <li><tt>tonerCartridge</tt></li>
2578
2579 <li><tt>fuserOiler</tt></li>
2580
2581 <li><tt>water</tt></li>
2582
2583 <li><tt>wasteWater</tt></li>
2584
2585 <li><tt>bindingSupply</tt></li>
2586
2587 <li><tt>bandingSupply</tt></li>
2588
2589 <li><tt>stichingWire</tt></li>
2590
2591 <li><tt>shrinkWrap</tt></li>
2592
2593 <li><tt>paperWrap</tt></li>
2594
2595 <li><tt>staples</tt></li>
2596
2597 <li><tt>inserts</tt></li>
2598
2599 <li><tt>covers</tt></li>
2600
2601 </ul>
2602
2603 <h4><a name="port-monitor">port-monitor" (name(127))</a></h4>
2604
2605 <p>The port-monitor attribute specifies the port monitor to use when printing
2606 to this printer. The default port monitor is "none".
2607
2608 <h4><a name="port-monitor-supported">port-monitor-supported" (1setOf name(127))</a></h4>
2609
2610 <p>The port-monitor-supported attribute specifies the available port monitors.
2611
2612 <h4><a name="printer-commands">printer-commands (1setOf Type3 keyword)</a><span class='info'>CUPS 1.4</span></h4>
2613
2614 <p>The printer-commands attribute specifies the commands that are supported
2615 by the CUPS command file filter. The keyword "none" indicates that no commands
2616 are supported.</p>
2617
2618 <h4><a name="printer-dns-sd-name">printer-dns-sd-name (name(MAX) | noValue)</a><span class='info'>CUPS 1.4</span></h4>
2619
2620 <p>The printer-dns-sd-name attribute specifies the registered DNS-SD service
2621 name for the printer. If the printer is not being shared using this protocol,
2622 printer-dns-sd-name will have the noValue value.</p>
2623
2624 <h4><a name="printer-type">printer-type (type2 enum)</a></h4>
2625
2626 <p>The printer-type attribute specifies printer type and
2627 capability bits for the printer or class. The default value is
2628 computed from internal state information and the PPD file for the
2629 printer. The following bits are defined:</p>
2630
2631 <div class='table'><table align='center' border='1' width='80%'
2632 summary='Printer Type Bits'>
2633 <thead>
2634 <tr>
2635 <th>Bit</th>
2636 <th>Description</th>
2637 </tr>
2638 </thead>
2639 <tbody>
2640 <tr>
2641 <td>0x00000001</td>
2642 <td>Is a printer class.</td>
2643 </tr>
2644 <tr>
2645 <td>0x00000002</td>
2646 <td>Is a remote destination.</td>
2647 </tr>
2648 <tr>
2649 <td>0x00000004</td>
2650 <td>Can print in black.</td>
2651 </tr>
2652 <tr>
2653 <td>0x00000008</td>
2654 <td>Can print in color.</td>
2655 </tr>
2656 <tr>
2657 <td>0x00000010</td>
2658 <td>Can print on both sides of the page in hardware.</td>
2659 </tr>
2660 <tr>
2661 <td>0x00000020</td>
2662 <td>Can staple output.</td>
2663 </tr>
2664 <tr>
2665 <td>0x00000040</td>
2666 <td>Can do fast copies in hardware.</td>
2667 </tr>
2668 <tr>
2669 <td>0x00000080</td>
2670 <td>Can do fast copy collation in hardware.</td>
2671 </tr>
2672 <tr>
2673 <td>0x00000100</td>
2674 <td>Can punch output.</td>
2675 </tr>
2676 <tr>
2677 <td>0x00000200</td>
2678 <td>Can cover output.</td>
2679 </tr>
2680 <tr>
2681 <td>0x00000400</td>
2682 <td>Can bind output.</td>
2683 </tr>
2684 <tr>
2685 <td>0x00000800</td>
2686 <td>Can sort output.</td>
2687 </tr>
2688 <tr>
2689 <td>0x00001000</td>
2690 <td>Can handle media up to US-Legal/A4.</td>
2691 </tr>
2692 <tr>
2693 <td>0x00002000</td>
2694 <td>Can handle media from US-Legal/A4 to ISO-C/A2.</td>
2695 </tr>
2696 <tr>
2697 <td>0x00004000</td>
2698 <td>Can handle media larger than ISO-C/A2.</td>
2699 </tr>
2700 <tr>
2701 <td>0x00008000</td>
2702 <td>Can handle user-defined media sizes.</td>
2703 </tr>
2704 <tr>
2705 <td>0x00010000</td>
2706 <td>Is an implicit (server-generated) class.</td>
2707 </tr>
2708 <tr>
2709 <td>0x00020000</td>
2710 <td>Is the a default printer on the network.</td>
2711 </tr>
2712 <tr>
2713 <td>0x00040000<td>
2714 <td>Is a facsimile device.</td>
2715 </tr>
2716 <tr>
2717 <td>0x00080000</td>
2718 <td>Is rejecting jobs.</td>
2719 </tr>
2720 <tr>
2721 <td>0x00100000</td>
2722 <td>Delete this queue.</td>
2723 </tr>
2724 <tr>
2725 <td>0x00200000</td>
2726 <td>Queue is not shared.</td>
2727 </tr>
2728 <tr>
2729 <td>0x00400000</td>
2730 <td>Queue requires authentication.</td>
2731 </tr>
2732 <tr>
2733 <td>0x00800000</td>
2734 <td>Queue supports CUPS command files.</td>
2735 </tr>
2736 <tr>
2737 <td>0x01000000</td>
2738 <td>Queue was automatically discovered and added.</td>
2739 </tr>
2740 </tbody>
2741 </table></div>
2742
2743 <h4>printer-type-mask (type2 enum)<span class='info'>CUPS 1.1</span></h4>
2744
2745 <p>The printer-type-mask attribute is used to choose printers or classes with
2746 the CUPS-Get-Printers and CUPS-Get-Classes operations. The bits are defined
2747 identically to the printer-type attribute and default to all 1's.
2748
2749 <h4>requesting-user-name-allowed (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
2750
2751 <p>The requesting-user-name-allowed attribute lists all of the users that are
2752 allowed to access a printer or class. Either this attribute or the
2753 requesting-user-name-denied attribute will be defined, but not both.
2754
2755 <h4>requesting-user-name-denied (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
2756
2757 <p>The requesting-user-name-denied attribute lists all of the users that are
2758 not allowed to access a printer or class. Either this attribute or the
2759 requesting-user-name-allowed attribute will be defined, but not both.
2760
2761 <h3 class='title'><a name='CLASS_ATTRIBUTES'>Printer Class Attributes</a></h3>
2762
2763 <h4>member-names (1setof name(127))</h4>
2764
2765 <p>The member-names attribute specifies each of the printer-name attributes of
2766 the member printers and classes. Each name corresponds to the same element of
2767 the member-uris attribute.
2768
2769 <h4>member-uris (1setof uri)</h4>
2770
2771 <p>The member-uris attribute specifies each of the printer-uri attributes of
2772 the member printers and classes. Each URI corresponds to the same element of
2773 the member-names attribute.
2774
2775 </body>
2776 </html>