Ancillary Outputs are post-processing steps applied to assembled documents after the document is rendered. They are applied on a request to generate documents (and apply to all documents generated as part of the request) or as part of a DocumentSet object to apply the instructions to each specific document generated as part of the request.
PostProcess is invoked to apply watermarks and barcodes, merge, and encrypt by placing the resulting DocSet into a PostProcess request and adding the AncillaryOutputOption elements with Watermark, Barcode, and SetEncryption nodes.
The AncillaryOutputOptions are submitted in the Generate and PostProcess operations to apply to all documents generated. They are submitted as part of the DocumentSet in the Generate and PostProcess operations to apply on a document-by-document basis. To apply multiple post-processing events to a document or document set, you must submit a unique AncillaryOutputOptions object on the request (so that a single request might contain multiple AncillaryOutputOptions objects. In addition to submitting post-processing instructions on a request that also generates documents (described above), you can use the PostProcess operation to submit a document using DocumentSet that has already been assembled.