]> git.ipfire.org Git - thirdparty/cups.git/blob - doc/help/spec-ipp.html
Merge changes from CUPS 1.4svn-r7961.
[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>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2</span>
916
917 <dd>The client OPTIONALLY supplies this attribute to
918 select the first printer that is returned.
919
920 <dt>"limit" (integer (1:MAX)):
921
922 <dd>The client OPTIONALLY supplies this attribute limiting the
923 number of printers that 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 <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2</span>
950
951 <dd>The client OPTIONALLY supplies a user name that is used to filter
952 the returned printers.
953
954 </dl>
955
956 <h4>CUPS-Get-Printers Response</h4>
957
958 <p>The following groups of attributes are send as part of the
959 CUPS-Get-Printers Response:
960
961 <p>Group 1: Operation Attributes
962
963 <dl>
964
965 <dt>Status Message:
966
967 <dd>The standard response status message.
968
969 <dt>Natural Language and Character Set:
970
971 <dd>The "attributes-charset" and "attributes-natural-language"
972 attributes as described in section 3.1.4.2 of the IPP Model and
973 Semantics document.
974
975 </dl>
976
977 <p>Group 2: Printer Object Attributes
978
979 <dl>
980
981 <dt>The set of requested attributes and their current values for
982 each printer.
983
984 </dl>
985
986 <h3 class='title'><a name='CUPS_ADD_MODIFY_PRINTER'>CUPS-Add-Modify-Printer Operation</a></h3>
987
988 <p>The CUPS-Add-Modify-Printer operation (0x4003) adds a new printer or
989 modifies an existing printer on the system.
990
991 <h4>CUPS-Add-Modify-Printer Request</h4>
992
993 <p>The following groups of attributes are supplied as part of the
994 CUPS-Add-Modify-Printer request:
995
996 <p>Group 1: Operation Attributes
997
998 <dl>
999
1000 <dt>Natural Language and Character Set:
1001
1002 <dd>The "attributes-charset" and "attributes-natural-language"
1003 attributes as described in section 3.1.4.1 of the IPP Model and
1004 Semantics document.
1005
1006 <dt>"printer-uri" (uri):
1007
1008 <dd>The client MUST supply a URI for the specified printer.
1009
1010 </dl>
1011
1012 <p>Group 2: Printer Object Attributes
1013
1014 <dl>
1015
1016 <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3</span>
1017
1018 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
1019
1020 <dt>"job-sheets-default" (1setOf name(127)): <span
1021 class='info'>CUPS 1.1.7</span>
1022
1023 <dd>The client OPTIONALLY supplies one or two banner page
1024 names that are printed before and after files in a job.
1025 The reserved name "none" is used to specify that no
1026 banner page should be printed.
1027
1028 <dt>"device-uri" (uri):
1029
1030 <dd>The client OPTIONALLY supplies a device URI for the
1031 specified printer.
1032
1033 <dt>"port-monitor" (name(127)):
1034
1035 <dd>The client OPTIONALLY supplies a port monitor name for the
1036 specified printer.
1037
1038 <dt>"ppd-name" (name(127)):
1039
1040 <dd>The client OPTIONALLY supplies a PPD name for the specified
1041 printer.
1042
1043 <dt>"printer-is-accepting-jobs" (boolean):
1044
1045 <dd>The client OPTIONALLY supplies this boolean attribute
1046 indicating whether or not the printer object should accept new jobs.
1047
1048 <dt>"printer-info" (text(127)):
1049
1050 <dd>The client OPTIONALLY supplies this attribute indicating the
1051 printer information string.
1052
1053 <dt>"printer-location" (text(127)):
1054
1055 <dd>The client OPTIONALLY supplies this attribute indicating a
1056 textual location of the printer.
1057
1058 <dt>"printer-more-info" (uri):
1059
1060 <dd>The client OPTIONALLY supplies this attribute indicating a
1061 URI for additional printer information.
1062
1063 <dt>"printer-state" (type2 enum):
1064
1065 <dd>The client OPTIONALLY supplies this attribute indicating the
1066 initial/current state of the printer. Only the "idle" and "stopped"
1067 enumerations are recognized.
1068
1069 <dt>"printer-state-message" (text(MAX)):
1070
1071 <dd>The client OPTIONALLY supplies this attribute indicating a
1072 textual reason for the current printer state.
1073
1074 <dt>"requesting-user-name-allowed" (1setof name(127) | delete)
1075 <br><i>OR</i>
1076 <br>"requesting-user-name-denied" (1setof name(127) | delete):
1077
1078 <dd>The client OPTIONALLY supplies one of these attributes to
1079 specify an access control list for incoming print jobs. To allow
1080 all users access to a printer, use the delete tag for the
1081 attribute value.
1082
1083 </dl>
1084
1085 <p>The CUPS-Add-Modify-Printer request can optionally be followed by a PPD
1086 file or System V interface script to be used for the printer. The
1087 "ppd-name" attribute overrides any file that is attached to the end of
1088 the request with a local CUPS PPD file.
1089
1090 <h4>CUPS-Add-Modify-Printer Response</h4>
1091
1092 <p>The following groups of attributes are send as part of the
1093 CUPS-Add-Modify-Printer Response:
1094
1095 <p>Group 1: Operation Attributes
1096
1097 <dl>
1098
1099 <dt>Status Message:
1100
1101 <dd>The standard response status message.
1102
1103 <dt>Natural Language and Character Set:
1104
1105 <dd>The "attributes-charset" and "attributes-natural-language"
1106 attributes as described in section 3.1.4.2 of the IPP Model and
1107 Semantics document.
1108
1109 </dl>
1110
1111 <h3 class='title'><a name='CUPS_DELETE_PRINTER'>CUPS-Delete-Printer Operation</a></h3>
1112
1113 <p>The CUPS-Delete-Printer operation (0x4004) removes an existing
1114 printer from the system.
1115
1116 <h4>CUPS-Delete-Printer Request</h4>
1117
1118 <p>The following groups of attributes are supplied as part of the
1119 CUPS-Delete-Printer request:
1120
1121 <p>Group 1: Operation Attributes
1122
1123 <dl>
1124
1125 <dt>Natural Language and Character Set:
1126
1127 <dd>The "attributes-charset" and "attributes-natural-language"
1128 attributes as described in section 3.1.4.1 of the IPP Model and
1129 Semantics document.
1130
1131 <dt>"printer-uri" (uri):
1132
1133 <dd>The client MUST supply a URI for the specified printer.
1134
1135 </dl>
1136
1137 <h4>CUPS-Delete-Printer Response</h4>
1138
1139 <p>The following groups of attributes are send as part of the
1140 CUPS-Delete-Printer Response:
1141
1142 <p>Group 1: Operation Attributes
1143
1144 <dl>
1145
1146 <dt>Status Message:
1147
1148 <dd>The standard response status message.
1149
1150 <dt>Natural Language and Character Set:
1151
1152 <dd>The "attributes-charset" and "attributes-natural-language"
1153 attributes as described in section 3.1.4.2 of the IPP Model and
1154 Semantics document.
1155
1156 </dl>
1157
1158 <h3 class='title'><a name='CUPS_GET_CLASSES'>CUPS-Get-Classes Operation</a></h3>
1159
1160 <p>The CUPS-Get-Classes operation (0x4005) returns the printer
1161 attributes for every printer class known to the system. This may
1162 include printer classes that are not served directly by the server.
1163
1164 <h4>CUPS-Get-Classes Request</h4>
1165
1166 <p>The following groups of attributes are supplied as part of the
1167 CUPS-Get-Classes request:
1168
1169 <p>Group 1: Operation Attributes
1170
1171 <dl>
1172
1173 <dt>Natural Language and Character Set:
1174
1175 <dd>The "attributes-charset" and "attributes-natural-language"
1176 attributes as described in section 3.1.4.1 of the IPP Model and
1177 Semantics document.
1178
1179 <dt>"first-printer-name" (name(127)):<span class='info'>CUPS 1.2</span>
1180
1181 <dd>The client OPTIONALLY supplies this attribute to
1182 select the first printer that is returned.
1183
1184 <dt>"limit" (integer (1:MAX)):
1185
1186 <dd>The client OPTIONALLY supplies this attribute limiting the
1187 number of printer classes that are returned.
1188
1189 <dt>"printer-location" (text(127)): <span class='info'>CUPS 1.1.7</span>
1190 <dd>The client OPTIONALLY supplies this attribute to
1191 select which printer classes are returned.
1192
1193 <dt>"printer-type" (type2 enum): <span class='info'>CUPS 1.1.7</span>
1194 <dd>The client OPTIONALLY supplies a printer type enumeration to
1195 select which printer classes are returned.
1196
1197 <dt>"printer-type-mask" (type2 enum): <span class='info'>CUPS 1.1.7</span>
1198 <dd>The client OPTIONALLY supplies a printer type mask
1199 enumeration to select which bits are used in the "printer-type"
1200 attribute.
1201
1202 <dt>"requested-attributes" (1setOf keyword) :
1203
1204 <dd>The client OPTIONALLY supplies a set of attribute names
1205 and/or attribute group names in whose values the requester is
1206 interested. If the client omits this attribute, the server responds as
1207 if this attribute had been supplied with a value of 'all'.
1208
1209 <dt>"requested-user-name" (name(127)) : <span class='info'>CUPS 1.2</span>
1210
1211 <dd>The client OPTIONALLY supplies a user name that is used to filter
1212 the returned printers.
1213
1214 </dl>
1215
1216 <h4>CUPS-Get-Classes Response</h4>
1217
1218 <p>The following groups of attributes are send as part of the
1219 CUPS-Get-Classes Response:
1220
1221 <p>Group 1: Operation Attributes
1222
1223 <dl>
1224
1225 <dt>Status Message:
1226
1227 <dd>The standard response status message.
1228
1229 <dt>Natural Language and Character Set:
1230
1231 <dd>The "attributes-charset" and "attributes-natural-language"
1232 attributes as described in section 3.1.4.2 of the IPP Model and
1233 Semantics document.
1234
1235 </dl>
1236
1237 <p>Group 2: Printer Class Object Attributes
1238
1239 <dl>
1240
1241 <dt>The set of requested attributes and their current values for
1242 each printer class.
1243
1244 </dl>
1245
1246 <h3 class='title'><a name='CUPS_ADD_MODIFY_CLASS'>CUPS-Add-Modify-Class Operation</a></h3>
1247
1248 <p>The CUPS-Add-Modify-Class operation (0x4006) adds a new printer class or
1249 modifies and existing printer class on the system.
1250
1251 <h4>CUPS-Add-Modify-Class Request</h4>
1252
1253 <p>The following groups of attributes are supplied as part of the
1254 CUPS-Add-Modify-Class request:
1255
1256 <p>Group 1: Operation Attributes
1257
1258 <dl>
1259
1260 <dt>Natural Language and Character Set:
1261
1262 <dd>The "attributes-charset" and "attributes-natural-language"
1263 attributes as described in section 3.1.4.1 of the IPP Model and
1264 Semantics document.
1265
1266 <dt>"printer-uri" (uri):
1267
1268 <dd>The client MUST supply a URI for the specified printer class.
1269
1270 </dl>
1271
1272 <p>Group 2: Printer Object Attributes
1273
1274 <dl>
1275
1276 <dt>"auth-info-required" (1setOf type2 keyword):<span class='info'>CUPS 1.3</span>
1277
1278 <dd>The client OPTIONALLY supplies one or more authentication keywords that are required to communicate with the printer/remote queue.
1279
1280 <dt>"member-uris" (1setof uri):
1281
1282 <dd>The client OPTIONALLY supplies the "member-uris" set
1283 specifying the printers and printer classes that are part of the class.
1284
1285 <dt>"printer-is-accepting-jobs" (boolean):
1286
1287 <dd>The client OPTIONALLY supplies this boolean attribute
1288 indicating whether or not the class object should accept new jobs.
1289
1290 <dt>"printer-info" (text(127)):
1291
1292 <dd>The client OPTIONALLY supplies this attribute indicating the
1293 printer information string.
1294
1295 <dt>"printer-location" (text(127)):
1296
1297 <dd>The client OPTIONALLY supplies this attribute indicating a
1298 textual location of the class.
1299
1300 <dt>"printer-more-info" (uri):
1301
1302 <dd>The client OPTIONALLY supplies this attribute indicating a
1303 URI for additional class information.
1304
1305 <dt>"printer-state" (type2 enum):
1306
1307 <dd>The client OPTIONALLY supplies this attribute indicating the
1308 initial/current state of the class. Only the "idle" and "stopped"
1309 enumerations are recognized.
1310
1311 <dt>"printer-state-message" (text(MAX)):
1312
1313 <dd>The client OPTIONALLY supplies this attribute indicating a
1314 textual reason for the current class state.
1315
1316 <dt>"requesting-user-name-allowed" (1setof name(127))
1317 <br><i>OR</i>
1318 <br>"requesting-user-name-denied" (1setof name(127)):
1319
1320 <dd>The client OPTIONALLY supplies one of these attributes to
1321 specify an access control list for incoming print jobs. To allow
1322 all users access to a class, use the delete tag for the
1323 attribute value.
1324
1325 </dl>
1326
1327 <h4>CUPS-Add-Modify-Class Response</h4>
1328
1329 <p>The following groups of attributes are send as part of the CUPS-Add-Modify-Class Response:
1330
1331 <p>Group 1: Operation Attributes
1332
1333 <dl>
1334
1335 <dt>Status Message:
1336
1337 <dd>The standard response status message.
1338
1339 <dt>Natural Language and Character Set:
1340
1341 <dd>The "attributes-charset" and "attributes-natural-language"
1342 attributes as described in section 3.1.4.2 of the IPP Model and
1343 Semantics document.
1344
1345 </dl>
1346
1347 <h3 class='title'><a name='CUPS_DELETE_CLASS'>CUPS-Delete-Class Operation</a></h3>
1348
1349 <p>The CUPS-Delete-Class operation (0x4007) removes an existing printer
1350 class from the system.
1351
1352 <h4>CUPS-Delete-Class Request</h4>
1353
1354 <p>The following groups of attributes are supplied as part of the
1355 CUPS-Delete-Class request:
1356
1357 <p>Group 1: Operation Attributes
1358
1359 <dl>
1360
1361 <dt>Natural Language and Character Set:
1362
1363 <dd>The "attributes-charset" and "attributes-natural-language"
1364 attributes as described in section 3.1.4.1 of the IPP Model and
1365 Semantics document.
1366
1367 <dt>"printer-uri" (uri):
1368
1369 <dd>The client MUST supply a URI for the specified printer class.
1370
1371 </dl>
1372
1373 <h4>CUPS-Delete-Class Response</h4>
1374
1375 <p>The following groups of attributes are send as part of the
1376 CUPS-Delete-Class Response:
1377
1378 <p>Group 1: Operation Attributes
1379
1380 <dl>
1381
1382 <dt>Status Message:
1383
1384 <dd>The standard response status message.
1385
1386 <dt>Natural Language and Character Set:
1387
1388 <dd>The "attributes-charset" and "attributes-natural-language"
1389 attributes as described in section 3.1.4.2 of the IPP Model and
1390 Semantics document.
1391
1392 </dl>
1393
1394 <h3 class='title'><a name='CUPS_ACCEPT_JOBS'>CUPS-Accept-Jobs Operation</a></h3>
1395
1396 <p>The CUPS-Accept-Jobs operation (0x4008) sets the
1397 "printer-is-accepting-jobs" attribute to true for the specified printer
1398 or printer class.
1399
1400 <h4>CUPS-Accept-Jobs Request</h4>
1401
1402 <p>The following groups of attributes are supplied as part of the
1403 CUPS-Accept-Jobs request:
1404
1405 <p>Group 1: Operation Attributes
1406
1407 <dl>
1408
1409 <dt>Natural Language and Character Set:
1410
1411 <dd>The "attributes-charset" and "attributes-natural-language"
1412 attributes as described in section 3.1.4.1 of the IPP Model and
1413 Semantics document.
1414
1415 <dt>"printer-uri" (uri):
1416
1417 <dd>The client MUST supply a URI for the specified printer or printer class.
1418
1419 </dl>
1420
1421 <h4>CUPS-Accept-Jobs Response</h4>
1422
1423 <p>The following groups of attributes are send as part of the
1424 CUPS-Accept-Jobs Response:
1425
1426 <p>Group 1: Operation Attributes
1427
1428 <dl>
1429
1430 <dt>Status Message:
1431
1432 <dd>The standard response status message.
1433
1434 <dt>Natural Language and Character Set:
1435
1436 <dd>The "attributes-charset" and "attributes-natural-language"
1437 attributes as described in section 3.1.4.2 of the IPP Model and
1438 Semantics document.
1439
1440 </dl>
1441
1442 <h3 class='title'><a name='CUPS_REJECT_JOBS'>CUPS-Reject-Jobs Operation</a></h3>
1443
1444 <p>The CUPS-Reject-Jobs operation (0x4009) sets
1445 the"printer-is-accepting-jobs" attribute to false for the specified
1446 printer or printer class.
1447
1448 <h4>CUPS-Reject-Jobs Request</h4>
1449
1450 <p>The following groups of attributes are supplied as part of the
1451 CUPS-Reject-Jobs request:
1452
1453 <p>Group 1: Operation Attributes
1454
1455 <dl>
1456
1457 <dt>Natural Language and Character Set:
1458
1459 <dd>The "attributes-charset" and "attributes-natural-language"
1460 attributes as described in section 3.1.4.1 of the IPP Model and
1461 Semantics document.
1462
1463 <dt>"printer-uri" (uri):
1464
1465 <dd>The client MUST supply a URI for the specified printer or printer class.
1466
1467 </dl>
1468
1469 <p>Group 2: Printer Object Attributes
1470
1471 <dl>
1472
1473 <dt>"printer-state-message" (text(MAX)):
1474
1475 <dd>The client OPTIONALLY supplies this attribute indicating a
1476 textual reason for the current printer state.
1477
1478 </dl>
1479
1480 <h4>CUPS-Reject-Jobs Response</h4>
1481
1482 <p>The following groups of attributes are send as part of the
1483 CUPS-Reject-Jobs Response:
1484
1485 <p>Group 1: Operation Attributes
1486
1487 <dl>
1488
1489 <dt>Status Message:
1490
1491 <dd>The standard response status message.
1492
1493 <dt>Natural Language and Character Set:
1494
1495 <dd>The "attributes-charset" and "attributes-natural-language"
1496 attributes as described in section 3.1.4.2 of the IPP Model and
1497 Semantics document.
1498
1499 </dl>
1500
1501 <h3 class='title'><a name='CUPS_SET_DEFAULT'>CUPS-Set-Default Operation</a></h3>
1502
1503 <p>The CUPS-Set-Default operation (0x400A) sets the default printer
1504 destination for all clients when a resource name of "/printers" is
1505 specified.
1506
1507 <h4>CUPS-Set-Default Request</h4>
1508
1509 <p>The following groups of attributes are supplied as part of the
1510 CUPS-Set-Default request:
1511
1512 <p>Group 1: Operation Attributes
1513
1514 <dl>
1515
1516 <dt>Natural Language and Character Set:
1517
1518 <dd>The "attributes-charset" and "attributes-natural-language"
1519 attributes as described in section 3.1.4.1 of the IPP Model and
1520 Semantics document.
1521
1522 <dt>"printer-uri" (uri):
1523
1524 <dd>The client MUST supply a URI for the specified printer or
1525 printer class.
1526
1527 </dl>
1528
1529 <h4>CUPS-Set-Default Response</h4>
1530
1531 <p>The following groups of attributes are send as part of the
1532 CUPS-Set-Default Response:
1533
1534 <p>Group 1: Operation Attributes
1535
1536 <dl>
1537
1538 <dt>Status Message:
1539
1540 <dd>The standard response status message.
1541
1542 <dt>Natural Language and Character Set:
1543
1544 <dd>The "attributes-charset" and "attributes-natural-language"
1545 attributes as described in section 3.1.4.2 of the IPP Model and
1546 Semantics document.
1547
1548 </dl>
1549
1550 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_GET_DEVICES'>CUPS-Get-Devices Operation</a></h3>
1551
1552 <p>The CUPS-Get-Devices operation (0x400B) returns all of the
1553 supported device-uri's for the server.</p>
1554
1555 <h4>CUPS-Get-Devices Request</h4>
1556
1557 <p>The following groups of attributes are supplied as part of the
1558 CUPS-Get-Devices request:
1559
1560 <p>Group 1: Operation Attributes
1561
1562 <dl>
1563
1564 <dt>Natural Language and Character Set:
1565
1566 <dd>The "attributes-charset" and "attributes-natural-language"
1567 attributes as described in section 3.1.4.1 of the IPP Model and
1568 Semantics document.
1569
1570 <dt>"device-class" (type1 keyword):
1571
1572 <dd>The client OPTIONALLY supplies a device class keyword to select
1573 which devices are returned.
1574
1575 <dt>"exclude-schemes" (1setOf name) :<span class='info'>CUPS 1.4</span>
1576
1577 <dd>The client OPTIONALLY supplies a set of scheme names that the
1578 requestor does not want to discover. If the client omits this attribute,
1579 the server responds with devices of all schemes.
1580
1581 <dt>"limit" (integer (1:MAX)):
1582
1583 <dd>The client OPTIONALLY supplies this attribute limiting the number of
1584 devices that are returned.
1585
1586 <dt>"requested-attributes" (1setOf keyword) :
1587
1588 <dd>The client OPTIONALLY supplies a set of attribute names and/or
1589 attribute group names in whose values the requester is interested. If
1590 the client omits this attribute, the server responds as if this
1591 attribute had been supplied with a value of 'all'.
1592
1593 <dt>"timeout" (integer (1:MAX)) :<span class='info'>CUPS 1.4</span>
1594
1595 <dd>The client OPTIONALLY supplies this attribute limiting the number of
1596 devices that are returned.
1597
1598 </dl>
1599
1600 <h4>CUPS-Get-Devices Response</h4>
1601
1602 <p>The following groups of attributes are send as part of the
1603 CUPS-Get-Devices Response:
1604
1605 <p>Group 1: Operation Attributes
1606
1607 <dl>
1608
1609 <dt>Status Message:
1610
1611 <dd>The standard response status message.
1612
1613 <dt>Natural Language and Character Set:
1614
1615 <dd>The "attributes-charset" and "attributes-natural-language"
1616 attributes as described in section 3.1.4.2 of the IPP Model and
1617 Semantics document.
1618
1619 </dl>
1620
1621 <p>Group 2: Device Object Attributes
1622
1623 <dl>
1624
1625 <dt>The set of requested attributes and their current values for
1626 each device.
1627
1628 </dl>
1629
1630 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_GET_PPDS'>CUPS-Get-PPDs Operation</a></h3>
1631
1632 <p>The CUPS-Get-PPDs operation (0x400C) returns all of the
1633 locally available PPD files on the system.</p>
1634
1635 <h4>CUPS-Get-PPDs Request</h4>
1636
1637 <p>The following groups of attributes are supplied as part of the
1638 CUPS-Get-PPDs request:
1639
1640 <p>Group 1: Operation Attributes
1641
1642 <dl>
1643
1644 <dt>Natural Language and Character Set:
1645
1646 <dd>The "attributes-charset" and "attributes-natural-language"
1647 attributes as described in section 3.1.4.1 of the IPP Model and
1648 Semantics document.
1649
1650 <dt>"limit" (integer (1:MAX)):
1651
1652 <dd>The client OPTIONALLY supplies this attribute limiting the number of PPDs that are returned.
1653
1654 <dt>"ppd-make" (text(127)):
1655
1656 <dd>The client OPTIONALLY supplies a printer manufacturer to select which PPDs are returned.
1657
1658 <dt>"ppd-make-and-model" (text(127)):<span class='info'>CUPS 1.3</span>
1659
1660 <dd>The client OPTIONALLY supplies a make and model to select which PPDs are returned.
1661
1662 <dt>"ppd-model-number" (integer):<span class='info'>CUPS 1.3</span>
1663
1664 <dd>The client OPTIONALLY supplies a model number to select which PPDs are returned.
1665
1666 <dt>"ppd-natural-language" (naturalLanguage):<span class='info'>CUPS 1.3</span>
1667
1668 <dd>The client OPTIONALLY supplies a language to select which PPDs are returned.
1669
1670 <dt>"ppd-product" (text(127)):<span class='info'>CUPS 1.3</span>
1671
1672 <dd>The client OPTIONALLY supplies a PostScript product string to select which PPDs are returned.
1673
1674 <dt>"ppd-psversion" (text(127)):<span class='info'>CUPS 1.3</span>
1675
1676 <dd>The client OPTIONALLY supplies a PostScript version string to select which PPDs are returned.
1677
1678 <dt>"ppd-type" (type1 keyword):<span class='info'>CUPS 1.3</span>
1679
1680 <dd>The client OPTIONALLY supplies a driver type to select which PPDs are returned.
1681
1682 <dt>"requested-attributes" (1setOf keyword) :
1683
1684 <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.
1685
1686 </dl>
1687
1688 <h4>CUPS-Get-PPDs Response</h4>
1689
1690 <p>The following groups of attributes are send as part of the
1691 CUPS-Get-PPDs Response:
1692
1693 <p>Group 1: Operation Attributes
1694
1695 <dl>
1696
1697 <dt>Status Message:
1698
1699 <dd>The standard response status message.
1700
1701 <dt>Natural Language and Character Set:
1702
1703 <dd>The "attributes-charset" and "attributes-natural-language"
1704 attributes as described in section 3.1.4.2 of the IPP Model and
1705 Semantics document.
1706
1707 </dl>
1708
1709 <p>Group 2: PPD Attributes
1710
1711 <dl>
1712
1713 <dt>The set of requested attributes and their current values for each
1714 PPD file.
1715
1716 </dl>
1717
1718 <h3 class='title'><span class='info'>CUPS 1.1</span><a name='CUPS_MOVE_JOB'>CUPS-Move-Job Operation</a></h3>
1719
1720 <p>The CUPS-Move-Job operation (0x400D) moves an active print job
1721 to a different printer.</p>
1722
1723 <h4>CUPS-Move-Job Request</h4>
1724
1725 <p>The following groups of attributes are supplied as part of the
1726 CUPS-Move-Job request:
1727
1728 <p>Group 1: Operation Attributes
1729
1730 <dl>
1731
1732 <dt>Natural Language and Character Set:
1733
1734 <dd>The "attributes-charset" and "attributes-natural-language"
1735 attributes as described in section 3.1.4.1 of the IPP Model and
1736 Semantics document.
1737
1738 <dt>"printer-uri" (uri) and "job-id" (integer)
1739 <br><i>OR</i>
1740 <br>"job-uri":
1741
1742 <dd>The client MUST supply a URI for the specified printer and
1743 a job ID number, or the job URI.
1744
1745 </dl>
1746
1747 <p>Group 2: Job Template Attributes
1748
1749 <dl>
1750
1751 <dt>"job-printer-uri" (uri)
1752
1753 <dd>The client MUST supply a URI for a printer on the same server.
1754
1755 </dl>
1756
1757 <h4>CUPS-Move-Job Response</h4>
1758
1759 <p>The following groups of attributes are send as part of the
1760 CUPS-Move-Job Response:
1761
1762 <p>Group 1: Operation Attributes
1763
1764 <dl>
1765
1766 <dt>Status Message:
1767
1768 <dd>The standard response status message.
1769
1770 <dt>Natural Language and Character Set:
1771
1772 <dd>The "attributes-charset" and "attributes-natural-language"
1773 attributes as described in section 3.1.4.2 of the IPP Model and
1774 Semantics document.
1775
1776 </dl>
1777
1778 <h3 class='title'><span class='info'>CUPS 1.2</span><a name='CUPS_AUTHENTICATE_JOB'>CUPS-Authenticate-Job Operation</a></h3>
1779
1780 <p>The CUPS-Authenticate-Job operation (0x400E) authenticate a
1781 print job for printing. Typically this is used when printing to a
1782 remote server. The authentication information is passed in the
1783 HTTP request.</p>
1784
1785 <h4>CUPS-Authenticate-Job Request</h4>
1786
1787 <p>The following groups of attributes are supplied as part of the
1788 CUPS-Authenticate-Job request:
1789
1790 <p>Group 1: Operation Attributes
1791
1792 <dl>
1793
1794 <dt>Natural Language and Character Set:
1795
1796 <dd>The "attributes-charset" and "attributes-natural-language"
1797 attributes as described in section 3.1.4.1 of the IPP Model and
1798 Semantics document.
1799
1800 <dt>"printer-uri" (uri) and "job-id" (integer)
1801 <br><i>OR</i>
1802 <br>"job-uri":
1803
1804 <dd>The client MUST supply a URI for the specified printer and
1805 a job ID number, or the job URI.
1806
1807 </dl>
1808
1809 <p>Group 2: Job Attributes
1810
1811 <dl>
1812
1813 <dt>"auth-info" (1setOf text(MAX)):<span class='info'>CUPS 1.3</span>
1814
1815 <dd>The client OPTIONALLY supplies one or more authentication values as specified by the "auth-info-required" attribute.
1816
1817 </dl>
1818
1819 <h4>CUPS-Authenticate-Job Response</h4>
1820
1821 <p>The following groups of attributes are send as part of the
1822 CUPS-Authenticate-Job Response:
1823
1824 <p>Group 1: Operation Attributes
1825
1826 <dl>
1827
1828 <dt>Status Message:
1829
1830 <dd>The standard response status message.
1831
1832 <dt>Natural Language and Character Set:
1833
1834 <dd>The "attributes-charset" and "attributes-natural-language"
1835 attributes as described in section 3.1.4.2 of the IPP Model and
1836 Semantics document.
1837
1838 </dl>
1839
1840 <p>Group 2: Unsupported Attributes (status=client-eror-attributes-or-values-not-supported)
1841
1842 <dl>
1843
1844 <dt>auth-info-required (1setOf Type2 keyword)
1845
1846 <dd>The required authentication information.
1847
1848 </dl
1849
1850 <h3 class='title'><span class='info'>CUPS 1.3</span><a name='CUPS_GET_PPD'>CUPS-Get-PPD Operation</a></h3>
1851
1852 <p>The CUPS-Get-PPD operation (0x400F) gets a PPD file from the
1853 server. The PPD file can be specified using a <tt>ppd-name</tt>
1854 returned by <a href='#CUPS_GET_PPDS'><tt>CUPS-Get-PPDs</tt></a>
1855 or using the <tt>printer-uri</tt> for a queue.</p>
1856
1857 <p>If the PPD file is found, <tt>successful-ok</tt> is returned with
1858 the PPD file following the response data.</p>
1859
1860 <p>If the PPD file cannot be served by the local server because
1861 the <tt>printer-uri</tt> attribute points to an external printer,
1862 a <tt>cups-see-other</tt> status is returned with the correct
1863 URI to use.</p>
1864
1865 <p>If the PPD file does not exist, <tt>client-error-not-found</tt> is
1866 returned.</p>
1867
1868 <h4>CUPS-Get-PPD Request</h4>
1869
1870 <p>The following group of attributes is supplied as part of the
1871 CUPS-Get-PPD request:
1872
1873 <p>Group 1: Operation Attributes
1874
1875 <dl>
1876
1877 <dt>Natural Language and Character Set:
1878
1879 <dd>The "attributes-charset" and "attributes-natural-language"
1880 attributes as described in section 3.1.4.1 of the IPP Model and
1881 Semantics document.
1882
1883 <dt>"printer-uri" (uri)
1884 <br><i>OR</i>
1885 <br>"ppd-name" (name(255)):
1886
1887 <dd>The client MUST supply a printer URI or PPD name.
1888
1889 </dl>
1890
1891 <h4>CUPS-Get-PPD Response</h4>
1892
1893 <p>The following group of attributes is sent as part of the
1894 CUPS-Get-PPD Response:
1895
1896 <p>Group 1: Operation Attributes
1897
1898 <dl>
1899
1900 <dt>Status Message:
1901
1902 <dd>The standard response status message.
1903
1904 <dt>Natural Language and Character Set:
1905
1906 <dd>The "attributes-charset" and "attributes-natural-language"
1907 attributes as described in section 3.1.4.2 of the IPP Model and
1908 Semantics document.
1909
1910 <dt>"printer-uri" (uri):
1911
1912 <dd>The printer that provides the actual PPD file when
1913 the status code is cups-see-other (0x280)
1914
1915 </dl>
1916
1917 <p>If the status code is <tt>successful-ok</tt>, the PPD file follows
1918 the end of the IPP response.</p>
1919
1920 <h3 class='title'><span class='info'>CUPS 1.4</span><a name='CUPS_GET_DOCUMENT'>CUPS-Get-Document Operation</a></h3>
1921
1922 <p>The CUPS-Get-Document operation (0x4027) gets a document file from a
1923 job on the server. The document file is specified using the
1924 <tt>document-number</tt> and either the <tt>job-uri</tt> or <tt>printer-uri</tt>
1925 and <tt>job-id</tt> identifying the job.</p>
1926
1927 <p>If the document file is found, <tt>successful-ok</tt> is returned with
1928 the document file following the response data.</p>
1929
1930 <p>If the document file does not exist, <tt>client-error-not-found</tt> is
1931 returned.</p>
1932
1933 <p>If the requesting user does not have access to the document file,
1934 <tt>client-error-not-authorized</tt> is returned.
1935
1936 <h4>CUPS-Get-Document Request</h4>
1937
1938 <p>The following group of attributes is supplied as part of the
1939 CUPS-Get-Document request:
1940
1941 <p>Group 1: Operation Attributes
1942
1943 <dl>
1944
1945 <dt>Natural Language and Character Set:
1946
1947 <dd>The "attributes-charset" and "attributes-natural-language"
1948 attributes as described in section 3.1.4.1 of the IPP Model and
1949 Semantics document.
1950
1951 <dt>"printer-uri" (uri) and "job-id" (integer)
1952 <br><i>OR</i>
1953 <br>"job-uri" (uri):
1954
1955 <dd>The client MUST supply a printer URI and job ID or job URI.
1956
1957 <dt>"document-number" (integer(1:MAX)):
1958
1959 <dd>The client MUST supply a document number to retrieve. The
1960 <tt>document-count</tt> attribute for the job defines the maximum
1961 document number that can be specified. In the case of jobs with
1962 banners (<tt>job-sheets</tt> is not "none"), document number 1
1963 will typically contain the start banner and document number N
1964 will typically contain the end banner.
1965
1966 </dl>
1967
1968 <h4>CUPS-Get-Document Response</h4>
1969
1970 <p>The following group of attributes is sent as part of the
1971 CUPS-Get-Document Response:
1972
1973 <p>Group 1: Operation Attributes
1974
1975 <dl>
1976
1977 <dt>Status Message:
1978
1979 <dd>The standard response status message.
1980
1981 <dt>Natural Language and Character Set:
1982
1983 <dd>The "attributes-charset" and "attributes-natural-language"
1984 attributes as described in section 3.1.4.2 of the IPP Model and
1985 Semantics document.
1986
1987 <dt>"document-format" (mimeType):
1988
1989 <dd>The format of the document file.
1990
1991 <dt>"document-number" (integer(1:MAX)):
1992
1993 <dd>The requested document number.
1994
1995 <dt>"document-name" (name(MAX)):
1996
1997 <dd>The name that was supplied with the document, if any.
1998
1999 </dl>
2000
2001 <p>If the status code is <tt>successful-ok</tt>, the document file follows
2002 the end of the IPP response.</p>
2003
2004
2005 <h2 class='title'><a name='ATTRIBUTES'>Attributes</a></h2>
2006
2007 <p>CUPS provides many extension attributes to support multiple
2008 devices, PPD files, standard job filters, printers, and printer
2009 classes.</p>
2010
2011 <h3 class='title'><a name='DEVICE_ATTRIBUTES'>Device Attributes</a></h3>
2012
2013 <p>Device attributes are returned by the CUPS-Get-Devices
2014 operation and enumerate all of the available hardware devices and
2015 network protocols that are supported by the server.</p>
2016
2017 <h4><a name="device-class">device-class (type2 keyword)</a></h4>
2018
2019 <p>The device-class attribute specifies the class of device and can be
2020 one of the following:
2021
2022 <ul>
2023
2024 <li>"file" - a disk file.
2025
2026 <li>"direct" - a parallel or fixed-rate serial data port,
2027 currently used for Centronics, IEEE-1284, and USB printer
2028 ports.
2029
2030 <li>"serial" - a variable-rate serial port.
2031
2032 <li>"network" - a network connection, typically via AppSocket,
2033 HTTP, IPP, LPD, or SMB/CIFS protocols.
2034
2035 </ul>
2036
2037 <h4><a name="device-id">device-id (text(127))</a><span class="info">CUPS 1.2</span></h4>
2038
2039 <p>The device-id attribute specifies the IEEE-1284 device ID
2040 string for the device.</p>
2041
2042 <h4><a name="device-info">device-info (text(127))</a></h4>
2043
2044 <p>The device-info attribute specifies a human-readable string describing
2045 the device, e.g. "Parallel Port #1".
2046
2047 <h4><a name="device-location">device-location (text(127))</a><span class="info">CUPS 1.4</span></h4>
2048
2049 <p>The device-location attribute specifies the physical location of the
2050 printer.
2051
2052 <h4><a name="device-make-and-model">device-make-and-model (text(127))</a></h4>
2053
2054 <p>The device-make-and-model attribute specifies a device
2055 identification string provided by the printer connected to the device.
2056 If the device or printer does not support identification then this
2057 attribute contains the string "unknown".
2058
2059 <h4><a name="device-uri">device-uri (uri)</a></h4>
2060
2061 <p>The device-uri attribute specifies a unique identifier for the
2062 device. The actual format of the device-uri string depends on the value
2063 of the device-class attribute:
2064
2065 <ul>
2066
2067 <li>"file" - The device-uri will be of the form
2068 "file:///path/to/filename".
2069
2070 <li>"direct" - The device-uri will be of the form
2071 "scheme:/dev/filename" or "scheme://vendor/identifier",
2072 where scheme may be "parallel" or "usb" in the current
2073 implementation.
2074
2075 <li>"serial" - The device-uri will be of the form
2076 "serial:/dev/filename?baud=value+parity=value+flow=value".
2077 The baud value is the data rate in bits per second; the
2078 supported values depend on the underlying hardware.
2079 The parity value can be one of "none", "even", or "odd".
2080 The flow value can be one of "none", "soft" (XON/XOFF
2081 handshaking), "hard" or "rts/cts" (RTS/CTS handshaking),
2082 or "dtrdsr" (DTR/DSR handshaking).
2083
2084 <p>The URI returned by CUPS-Get-Devices will contain the
2085 maximum baud rate supported by the device and the best
2086 type of flow control available ("soft" or "hard").
2087
2088 <li>"network" - The device-uri will be of the form
2089 "scheme://[username:password@]hostname[:port]/[resource]",
2090 where scheme may be "http", "https", "ipp", "lpd", "smb", or
2091 "socket" in the current implementation.
2092
2093 <p>The URI returned by CUPS-Get-Devices will only contain
2094 the scheme name ("scheme"). It is up to the client
2095 application to add the appropriate host and other
2096 information when adding a new printer.
2097
2098 <p>The URI returned by Get-Printer-Attributes and
2099 CUPS-Get-Printers has any username and password information
2100 stripped; the information is still stored and used by the
2101 server internally to perform any needed authentication.
2102
2103 </ul>
2104
2105 <h3 class='title'><a name='JOB_TEMPLATE_ATTRIBUTES'>Job Template Attributes</a></h3>
2106
2107 <h4><a name="auth-info">auth-info (1setOf text(MAX))</a><span class="info">CUPS 1.3</span></h4>
2108
2109 <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.
2110
2111 <h4><a name="blackplot">blackplot (boolean)</a></h4>
2112
2113 <p>The blackplot attribute specifies whether HP-GL/2 plot files should be
2114 rendered entirely in black ink (blackplot=true) or using the colors and shades
2115 specified in the file (blackplot=false). The default value is false.
2116
2117 <h4><a name="brightness">brightness (integer(0:200))</a><span class="info">Deprecated</span></h4>
2118
2119 <p>The brightness attribute specifies the overall brightness of the printed
2120 output in percent. A brightness of 100 is normal, while 200 is twice as
2121 bright and 50 is half as bright. The default value is 100.
2122
2123 <p>Brightness is applied to the Cyan, Magenta, Yellow, and Black values using
2124 the function "f(x) = brightness / 100 * x".
2125
2126 <blockquote><b>Note:</b>
2127
2128 <p>This attribute is deprecated and will be removed from a future CUPS
2129 release.</p>
2130
2131 </blockquote>
2132
2133 <h4><a name="columns">columns (integer(1:4))</a></h4>
2134
2135 <p>The columns attribute specifies the number of columns to generate when
2136 printing text files. The default value is 1.
2137
2138 <h4><a name="cpi">cpi (type2 enum)</a></h4>
2139
2140 <p>The cpi attribute specifies the number of characters per inch when
2141 printing text files. Only the values 10, 12, and 17 are currently
2142 supported. The default value is 10.
2143
2144 <h4><a name="document-count">document-count (integer(1:MAX))</a></h4>
2145
2146 <p>The document-count attribute specifies the number of documents that
2147 are present in the job.
2148
2149 <h4><a name="fitplot">fitplot (boolean)</a></h4>
2150
2151 <p>The fitplot attribute specifies whether to scale HP-GL/2 plot files to
2152 fit on the selected media (fitplot=true) or use the physical scale specified
2153 in the plot file (fitplot=false). The default value is false.
2154
2155 <h4><a name="gamma">gamma (integer(1:10000))</a><span class="info">Deprecated</span></h4>
2156
2157 <p>The gamma attribute specifies the luminance correction for the output.
2158 A value of 1000 specifies no correction, while values of 2000 and 500 will
2159 generate lighter and darker output, respectively. The default value is
2160 1000.
2161
2162 <p>Gamma is applied to the Red, Green, and Blue values (or luminance for
2163 grayscale output) using the function "f(x) = x<sup>(1000/gamma)</sup>".
2164
2165 <blockquote><b>Note:</b>
2166
2167 <p>This attribute is deprecated and will be removed from a future CUPS
2168 release.</p>
2169
2170 </blockquote>
2171
2172 <h4><a name="hue">hue (integer(-180:180))</a><span class="info">Deprecated</span></h4>
2173
2174 <p>The hue attribute specifies a color hue rotation when printing image
2175 files. The default value is 0.
2176
2177 <blockquote><b>Note:</b>
2178
2179 <p>This attribute is deprecated and will be removed from a future CUPS
2180 release.</p>
2181
2182 </blockquote>
2183
2184 <h4><a name="job-billing">job-billing (text(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2185
2186 <p>The job-billing attribute provides a text value to associate with a job
2187 for billing purposes.
2188
2189 <h4><a name="job-hold-until">job-hold-until (keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2190
2191 <p>The job-hold-until attribute specifies a hold time. In addition to the
2192 standard IPP/1.1 keyword names, CUPS supports name values of the form
2193 "HH:MM" and "HH:MM:SS" that specify a hold time. The hold time is in
2194 Universal Coordinated Time (UTC) and <i>not</i> in the local time zone. If the
2195 specified time is less than the current time, the job is held until the
2196 next day.
2197
2198 <h4><a name="job-media-progress">job-media-progress (integer(0:100))</a><span class='info'>CUPS 1.4</span></h4>
2199
2200 <p>The job-media-progress attribute specifies the percentage of completion of
2201 the current page. It is only valid when the job-state attribute has the
2202 "processing" value (5).</p>
2203
2204 <h4><a name="job-printer-state-message">job-printer-state-message (text(MAX))</a><span class='info'>CUPS 1.3</span></h4>
2205
2206 <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>
2207
2208 <h4><a name="job-printer-state-reasons">job-printer-state-reasons (1setOf type2 keyword)</a><span class='info'>CUPS 1.3</span></h4>
2209
2210 <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>
2211
2212 <h4><a name="job-sheets">job-sheets (1setof type3 keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2213
2214 <p>The job-sheets attribute specifies one or two banner files that are printed
2215 before and after a job. The reserved value of "none" disables banner printing.
2216 The default value is stored in the job-sheets-default attribute.
2217
2218 <p>If only one value is supplied, the banner file is printed before the job.
2219 If two values are supplied, the first value is used as the starting banner
2220 file and the second as the ending banner file.
2221
2222 <h4><a name="job-originating-host-name">job-originating-host-name (name(MAX))</a></h4>
2223
2224 <p><i>(CUPS 1.1.5 and higher)</i>
2225
2226 <p>The job-originating-host-name attribute specifies the host
2227 from which the job was queued. The value will be the hostname or
2228 IP address of the client depending on whether hostname
2229 resolution is enabled. The localhost address (127.0.0.1) is
2230 <b>always</b> resolved to the name "localhost".
2231
2232 <p>This attribute is read-only.
2233
2234 <h4><a name="lpi">lpi (type2 enum)</a></h4>
2235
2236 <p>The lpi attribute specifies the number of lines per inch when
2237 printing text files. Only the values 6 and 8 are currently supported.
2238 The default value is 6.
2239
2240 <h4><a name="mirror">mirror (boolean)</a></h4>
2241
2242 <p>The mirror attribute specifies whether pages are mirrored on
2243 their X axis, which is useful for printing transfer images on
2244 special media. The default value is false.
2245
2246 <h4><a name="natural-scaling">natural-scaling (integer(1:1000))</a><span class='info'>CUPS 1.1.9</span></h4>
2247 <p>The natural-scaling attribute specifies the scaling of image files with
2248 respect to the natural image size. A value of 100 specifies that the image
2249 file should exactly the natural size, while 50 is half the natural size
2250 and 200 is twice the natural size. The default value is 100.
2251
2252 <p>The ppi option can be used to override the natural resolution of the
2253 image, which controls the natural size.
2254
2255 <h4><a name="number-up-layout">number-up-layout (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
2256 <p>The number-up-layout attribute specifies the order each input
2257 page is placed on each output page. The following keywords are
2258 presently defined:
2259
2260 <ul>
2261
2262 <li><CODE>btlr</CODE> - Bottom to top, left to right</li>
2263
2264 <li><CODE>btrl</CODE> - Bottom to top, right to left</li>
2265
2266 <li><CODE>lrbt</CODE> - Left to right, bottom to top</li>
2267
2268 <li><CODE>lrtb</CODE> - Left to right, top to bottom (default)</li>
2269
2270 <li><CODE>rlbt</CODE> - Right to left, bottom to top</li>
2271
2272 <li><CODE>rltb</CODE> - Right to left, top to bottom</li>
2273
2274 <li><CODE>tblr</CODE> - Top to bottom, left to right</li>
2275
2276 <li><CODE>tbrl</CODE> - Top to bottom, right to left</li>
2277
2278 </ul>
2279
2280 <h4><a name="page-border">page-border (type2 keyword)</a><span class='info'>CUPS 1.1.15</span></h4>
2281 <p>The page-border attribute specifies whether a border is
2282 draw around each page. The following keywords are presently
2283 defined:
2284
2285 <ul>
2286
2287 <li><CODE>double</CODE> - Two hairline borders are drawn</li>
2288
2289 <li><CODE>double-thick</CODE> - Two 1pt borders are drawn</li>
2290
2291 <li><CODE>none</CODE> - No border is drawn (default)</li>
2292
2293 <li><CODE>single</CODE> - A single hairline border is drawn</li>
2294
2295 <li><CODE>single-thick</CODE> - A single 1pt border is drawn</li>
2296
2297 </ul>
2298
2299 <h4><a name="page-bottom">page-bottom (integer(0:MAX))</a></h4>
2300
2301 <p>The page-bottom attribute specifies the bottom margin in points (72 points
2302 equals 1 inch). The default value is the device physical margin.
2303
2304 <h4><a name="page-label">page-label (text(MAX))</a><span class='info'>CUPS 1.1.7</span></h4>
2305 <p>The page-label attribute provides a text value to place in
2306 the header and footer on each page. If a classification level is
2307 set on the server, then this classification is printed before
2308 the page label.
2309
2310 <h4><a name="page-left">page-left (integer(0:MAX))</a></h4>
2311
2312 <p>The page-left attribute specifies the left margin in points (72 points
2313 equals 1 inch). The default value is the device physical margin.
2314
2315 <h4><a name="page-right">page-right (integer(0:MAX))</a></h4>
2316
2317 <p>The page-right attribute specifies the right margin in points (72 points
2318 equals 1 inch). The default value is the device physical margin.
2319
2320 <h4><a name="page-set">page-set (type2 keyword)</a></h4>
2321
2322 <p>The page-set attribute specifies which pages to print in a file. The
2323 supported keywords are "all", "even", and "odd". The default value is
2324 "all".
2325
2326 <h4><a name="page-top">page-top (integer(0:MAX))</a></h4>
2327
2328 <p>The page-top attribute specifies the top margin in points (72 points
2329 equals 1 inch). The default value is the device physical margin.
2330
2331 <h4><a name="penwidth">penwidth (integer(0:MAX))</a></h4>
2332
2333 <p>The penwidth attribute specifies the default pen width in micrometers
2334 when printing HP-GL/2 plot files. The default value is 1000 (1 millimeter).
2335
2336 <h4><a name="position">position (type2 keyword)</a></h4>
2337
2338 <p>The position attribute specifies the location of image files on the
2339 media. The following keyword values are recognized:
2340
2341 <ul>
2342
2343 <li><CODE>center</CODE> - Center the image on the page (default)
2344
2345 <li><CODE>top</CODE> - Print the image centered at the top of the page
2346
2347 <li><CODE>left</CODE> - Print the image centered on the left of page
2348
2349 <li><CODE>right</CODE> - Print the image centered on the right of the page
2350
2351 <li><CODE>top-left</CODE> - Print the image at the top left corner of
2352 the page
2353
2354 <li><CODE>top-right</CODE> - Print the image at the top right corner of
2355 the page
2356
2357 <li><CODE>bottom</CODE> - Print the image centered at the bottom of
2358 the page
2359
2360 <li><CODE>bottom-left</CODE> - Print the image at the bottom left
2361 corner of the page
2362
2363 <li><CODE>bottom-right</CODE> - Print the image at the bottom right
2364 corner of the page
2365
2366 </ul>
2367
2368 <h4><a name="ppi">ppi (integer(1:MAX))</a></h4>
2369
2370 <p>The ppi attribute specifies the resolution of an image file in pixels
2371 per inch. The default value is the resolution included with the file or
2372 128 if no resolution information is available.
2373
2374 <h4><a name="prettyprint">prettyprint (boolean)</a></h4>
2375
2376 <p>The prettyprint attribute specifies whether text files should be printed
2377 with a shaded header and keyword highlighting (prettyprint=true) or without
2378 additional formatting (prettyprint=false). The default value is false.
2379
2380 <h4><a name="saturation">saturation (integer(0:200))</a><span class="info">Deprecated</span></h4>
2381
2382 <p>The saturation attribute specifies the color saturation when
2383 printing image files. A saturation of 100 is normal, while values of 50
2384 and 200 will be half and twice as colorful, respectively. The default
2385 value is 100.
2386
2387 <blockquote><b>Note:</b>
2388
2389 <p>This attribute is deprecated and will be removed from a future CUPS
2390 release.</p>
2391
2392 </blockquote>
2393
2394 <h4><a name="scaling">scaling (integer(1:1000))</a></h4>
2395
2396 <p>The scaling attribute specifies the scaling of image files with
2397 respect to the selected media. A value of 100 specifies that the image
2398 file should fit 100% of the page, or as much as possible given the
2399 image dimensions. The default value is unspecified.
2400
2401 <p>The scaling attribute overrides the ppi attribute if specified.
2402
2403 <h4><a name="wrap">wrap (boolean)</a></h4>
2404
2405 <p>The wrap attribute specifies whether long lines should be wrapped
2406 (wrap=true) or not (wrap=false) when printing text files. The default
2407 value is true.
2408
2409 <h3 class='title'><a name='PPD_ATTRIBUTES'>PPD Attributes</a></h3>
2410
2411 <h4><a name="ppd-device-id">ppd-device-id (text(127))</a></h4>
2412
2413 <p>The ppd-device-id attribute specifies the IEEE-1284 device ID
2414 string for the device described by the PPD file.</p>
2415
2416 <h4><a name="ppd-make">ppd-make (text(127))</a></h4>
2417
2418 <p>The ppd-make attribute specifies the manufacturer of the printer
2419 (the Manufacturer attribute in the PPD file). If the manufacturer
2420 is not specified in the PPD file then an educated guess is made using
2421 the NickName attribute in the PPD file.
2422
2423 <h4><a name="ppd-make-and-model">ppd-make-and-model (text(127))</a></h4>
2424
2425 <p>The ppd-make-and-model attribute specifies the manufacturer and model
2426 name of the PPD file (the NickName attribute in the PPD file). If the
2427 make and model is not specified in the PPD file then the ModelName or
2428 ShortNickName attributes are used instead.
2429
2430 <h4><a name="ppd-model-number">ppd-model-number (integer)</a><span class="info">CUPS 1.3</span></h4>
2431
2432 <p>The ppd-model-number attribute provides the <tt>cupsModelNumber</tt> value from the PPD file.
2433
2434 <h4><a name="ppd-name">ppd-name (name(255))</a></h4>
2435
2436 <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.
2437
2438 <h4><a name="ppd-natural-language">ppd-natural-language (1setOf naturalLanguage)</a></h4>
2439
2440 <p>The ppd-natural-language attribute specifies the language encoding
2441 of the PPD file (the LanguageVersion attribute in the PPD file). If the
2442 language is unknown or undefined then "en" (English) is assumed.
2443
2444 <h4><a name="ppd-product">ppd-product (1setOf text(127))</a></h4>
2445
2446 <p>The ppd-product attribute specifies the Product attribute values in the PPD file.
2447
2448 <h4><a name="ppd-psversion">ppd-psversion (1setOf text(127))</a><span class="info">CUPS 1.3</span></h4>
2449
2450 <p>The ppd-product attribute specifies the PSVersion attribute values in the PPD file.
2451
2452 <h4><a name="ppd-type">ppd-type (type1 keyword)</a><span class="info">CUPS 1.3</span></h4>
2453
2454 <p>The ppd-type attribute specifies the type of driver described by the PPD file:</p>
2455
2456 <ul>
2457
2458 <li><tt>fax</tt> - A facsimile or multi-function device</li>
2459
2460 <li><tt>pdf</tt> - A PDF printer</li>
2461
2462 <li><tt>postscript</tt> - A PostScript printer (no filters)</li>
2463
2464 <li><tt>raster</tt> - A CUPS raster driver</li>
2465
2466 <li><tt>unknown</tt> - An unknown or hybrid driver</li>
2467
2468 </ul>
2469
2470
2471 <h3 class='title'><a name='PRINTER_ATTRIBUTES'>Printer Attributes</a></h3>
2472
2473 <h4><a name="auth-info-required">auth-info-required (1setOf type2 keyword)</a><span class="info">CUPS 1.3</span></h4>
2474
2475 <p>The auth-info-required attribute specifies the authentication information that is required for printing a job. The following keywords are recognized:</p>
2476
2477 <ul>
2478
2479 <li><tt>domain</tt> - A domain name is required.</li>
2480
2481 <li><tt>none</tt> - No authentication is required - this keyword can only appear by itself.</li>
2482
2483 <li><tt>password</tt> - A password is required.</li>
2484
2485 <li><tt>username</tt> - A username is required.</li>
2486
2487 </ul>
2488
2489 <h4><a name="job-k-limit">job-k-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
2490
2491 <p>The job-k-limit attribute specifies the maximum number of kilobytes that
2492 may be printed by a user, including banner files. The default value of 0
2493 specifies that there is no limit.
2494
2495 <h4><a name="job-page-limit">job-page-limit (integer)</a><span class='info'>CUPS 1.1</span></h4>
2496
2497 <p>The job-page-limit attribute specifies the maximum number of pages that
2498 may be printed by a user, including banner files. The default value of 0
2499 specifies that there is no limit.
2500
2501 <h4><a name="job-quota-period">job-quota-period (integer)</a><span class='info'>CUPS 1.1</span></h4>
2502
2503 <p>The job-quota-period attribute specifies the time period used for quota
2504 calculations, in seconds. The default value of 0 specifies that the limits
2505 apply to all jobs that have been printed by a user that are still known to
2506 the system.
2507
2508 <h4><a name="job-sheets-supported">job-sheets-supported (1setof type3 keyword | name(MAX))</a><span class='info'>CUPS 1.1</span></h4>
2509
2510 <p>The job-sheets-supported attribute specifies the available banner files.
2511 There will always be at least one banner file available called "none".
2512
2513 <h4><a name="marker-change-time">marker-change-time (integer)</a></h4>
2514
2515 <p>The marker-change-time attribute specifies the printer-up-time value when
2516 the last change to the marker-colors, marker-levels, marker-message,
2517 marker-names, or marker-types attributes was made.</p>
2518
2519 <h4><a name="marker-colors">marker-colors (1setof name(MAX))</a></h4>
2520
2521 <p>The marker-colors attribute specifies the color(s) for each supply in the
2522 printer. It is only available when the driver provides supply levels. The
2523 color is either "none" or one or more hex-encoded sRGB colors of the form
2524 "#RRGGBB".</p>
2525
2526 <h4><a name="marker-levels">marker-levels (1setof integer(-1:100))</a></h4>
2527
2528 <p>The marker-levels attribute specifies the current supply levels for the
2529 printer. It is only available when the driver provides supply levels. A
2530 value of -1 indicates the level is unknown, while values from 0 to 100
2531 indicate the corresponding percentage.</p>
2532
2533 <h4><a name="marker-message">marker-message (text(MAX))</a></h4>
2534
2535 <p>The marker-message attribute provides a human-readable status message
2536 for the current supply levels, e.g. "12 pages of ink remaining." It is only
2537 available when the driver provides supply levels.</p>
2538
2539 <h4><a name="marker-names">marker-names (1setof name(MAX))</a></h4>
2540
2541 <p>The marker-names attribute specifies the name(s) for each supply in the
2542 printer. It is only available when the driver provides supply levels.</p>
2543
2544 <h4><a name="marker-types">marker-types (1setof type3 keyword)</a></h4>
2545
2546 <p>The marker-types attribute specifies the type(s) of each supply in the
2547 printer. It is only available when the driver provides supply levels. The
2548 following (RFC 3805) types are currently supported:</p>
2549
2550 <ul>
2551
2552 <li><tt>toner</tt></li>
2553
2554 <li><tt>wasteToner</tt></li>
2555
2556 <li><tt>ink</tt></li>
2557
2558 <li><tt>inkCartridge</tt></li>
2559
2560 <li><tt>inkRibbon</tt></li>
2561
2562 <li><tt>wasteInk</tt></li>
2563
2564 <li><tt>opc</tt></li>
2565
2566 <li><tt>developer</tt></li>
2567
2568 <li><tt>fuserOil</tt></li>
2569
2570 <li><tt>solidWax</tt></li>
2571
2572 <li><tt>ribbonWax</tt></li>
2573
2574 <li><tt>wasteWax</tt></li>
2575
2576 <li><tt>fuser</tt></li>
2577
2578 <li><tt>coronaWire</tt></li>
2579
2580 <li><tt>fuserOilWick</tt></li>
2581
2582 <li><tt>cleanerUnit</tt></li>
2583
2584 <li><tt>fuserCleaningPad</tt></li>
2585
2586 <li><tt>transferUnit</tt></li>
2587
2588 <li><tt>tonerCartridge</tt></li>
2589
2590 <li><tt>fuserOiler</tt></li>
2591
2592 <li><tt>water</tt></li>
2593
2594 <li><tt>wasteWater</tt></li>
2595
2596 <li><tt>bindingSupply</tt></li>
2597
2598 <li><tt>bandingSupply</tt></li>
2599
2600 <li><tt>stichingWire</tt></li>
2601
2602 <li><tt>shrinkWrap</tt></li>
2603
2604 <li><tt>paperWrap</tt></li>
2605
2606 <li><tt>staples</tt></li>
2607
2608 <li><tt>inserts</tt></li>
2609
2610 <li><tt>covers</tt></li>
2611
2612 </ul>
2613
2614 <h4><a name="port-monitor">port-monitor" (name(127))</a></h4>
2615
2616 <p>The port-monitor attribute specifies the port monitor to use when printing
2617 to this printer. The default port monitor is "none".
2618
2619 <h4><a name="port-monitor-supported">port-monitor-supported" (1setOf name(127))</a></h4>
2620
2621 <p>The port-monitor-supported attribute specifies the available port monitors.
2622
2623 <h4><a name="printer-commands">printer-commands (1setOf Type3 keyword)</a><span class='info'>CUPS 1.4</span></h4>
2624
2625 <p>The printer-commands attribute specifies the commands that are supported
2626 by the CUPS command file filter. The keyword "none" indicates that no commands
2627 are supported.</p>
2628
2629 <h4><a name="printer-dns-sd-name">printer-dns-sd-name (name(MAX) | noValue)</a><span class='info'>CUPS 1.4</span></h4>
2630
2631 <p>The printer-dns-sd-name attribute specifies the registered DNS-SD service
2632 name for the printer. If the printer is not being shared using this protocol,
2633 printer-dns-sd-name will have the noValue value.</p>
2634
2635 <h4><a name="printer-type">printer-type (type2 enum)</a></h4>
2636
2637 <p>The printer-type attribute specifies printer type and
2638 capability bits for the printer or class. The default value is
2639 computed from internal state information and the PPD file for the
2640 printer. The following bits are defined:</p>
2641
2642 <div class='table'><table align='center' border='1' width='80%'
2643 summary='Printer Type Bits'>
2644 <thead>
2645 <tr>
2646 <th>Bit</th>
2647 <th>Description</th>
2648 </tr>
2649 </thead>
2650 <tbody>
2651 <tr>
2652 <td>0x00000001</td>
2653 <td>Is a printer class.</td>
2654 </tr>
2655 <tr>
2656 <td>0x00000002</td>
2657 <td>Is a remote destination.</td>
2658 </tr>
2659 <tr>
2660 <td>0x00000004</td>
2661 <td>Can print in black.</td>
2662 </tr>
2663 <tr>
2664 <td>0x00000008</td>
2665 <td>Can print in color.</td>
2666 </tr>
2667 <tr>
2668 <td>0x00000010</td>
2669 <td>Can print on both sides of the page in hardware.</td>
2670 </tr>
2671 <tr>
2672 <td>0x00000020</td>
2673 <td>Can staple output.</td>
2674 </tr>
2675 <tr>
2676 <td>0x00000040</td>
2677 <td>Can do fast copies in hardware.</td>
2678 </tr>
2679 <tr>
2680 <td>0x00000080</td>
2681 <td>Can do fast copy collation in hardware.</td>
2682 </tr>
2683 <tr>
2684 <td>0x00000100</td>
2685 <td>Can punch output.</td>
2686 </tr>
2687 <tr>
2688 <td>0x00000200</td>
2689 <td>Can cover output.</td>
2690 </tr>
2691 <tr>
2692 <td>0x00000400</td>
2693 <td>Can bind output.</td>
2694 </tr>
2695 <tr>
2696 <td>0x00000800</td>
2697 <td>Can sort output.</td>
2698 </tr>
2699 <tr>
2700 <td>0x00001000</td>
2701 <td>Can handle media up to US-Legal/A4.</td>
2702 </tr>
2703 <tr>
2704 <td>0x00002000</td>
2705 <td>Can handle media from US-Legal/A4 to ISO-C/A2.</td>
2706 </tr>
2707 <tr>
2708 <td>0x00004000</td>
2709 <td>Can handle media larger than ISO-C/A2.</td>
2710 </tr>
2711 <tr>
2712 <td>0x00008000</td>
2713 <td>Can handle user-defined media sizes.</td>
2714 </tr>
2715 <tr>
2716 <td>0x00010000</td>
2717 <td>Is an implicit (server-generated) class.</td>
2718 </tr>
2719 <tr>
2720 <td>0x00020000</td>
2721 <td>Is the a default printer on the network.</td>
2722 </tr>
2723 <tr>
2724 <td>0x00040000</td>
2725 <td>Is a facsimile device.</td>
2726 </tr>
2727 <tr>
2728 <td>0x00080000</td>
2729 <td>Is rejecting jobs.</td>
2730 </tr>
2731 <tr>
2732 <td>0x00100000</td>
2733 <td>Delete this queue.</td>
2734 </tr>
2735 <tr>
2736 <td>0x00200000</td>
2737 <td>Queue is not shared.</td>
2738 </tr>
2739 <tr>
2740 <td>0x00400000</td>
2741 <td>Queue requires authentication.</td>
2742 </tr>
2743 <tr>
2744 <td>0x00800000</td>
2745 <td>Queue supports CUPS command files.</td>
2746 </tr>
2747 <tr>
2748 <td>0x01000000</td>
2749 <td>Queue was automatically discovered and added.</td>
2750 </tr>
2751 </tbody>
2752 </table></div>
2753
2754 <h4>printer-type-mask (type2 enum)<span class='info'>CUPS 1.1</span></h4>
2755
2756 <p>The printer-type-mask attribute is used to choose printers or classes with
2757 the CUPS-Get-Printers and CUPS-Get-Classes operations. The bits are defined
2758 identically to the printer-type attribute and default to all 1's.
2759
2760 <h4>requesting-user-name-allowed (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
2761
2762 <p>The requesting-user-name-allowed attribute lists all of the users that are
2763 allowed to access a printer or class. Either this attribute or the
2764 requesting-user-name-denied attribute will be defined, but not both.
2765
2766 <h4>requesting-user-name-denied (1setof name(127))<span class='info'>CUPS 1.1</span></h4>
2767
2768 <p>The requesting-user-name-denied attribute lists all of the users that are
2769 not allowed to access a printer or class. Either this attribute or the
2770 requesting-user-name-allowed attribute will be defined, but not both.
2771
2772 <h3 class='title'><a name='CLASS_ATTRIBUTES'>Printer Class Attributes</a></h3>
2773
2774 <h4>member-names (1setof name(127))</h4>
2775
2776 <p>The member-names attribute specifies each of the printer-name attributes of
2777 the member printers and classes. Each name corresponds to the same element of
2778 the member-uris attribute.
2779
2780 <h4>member-uris (1setof uri)</h4>
2781
2782 <p>The member-uris attribute specifies each of the printer-uri attributes of
2783 the member printers and classes. Each URI corresponds to the same element of
2784 the member-names attribute.
2785
2786 </body>
2787 </html>