Template Components

Document Context

Reference for the meta namespace - system-generated values like correlationId, documentId, and batchId that every render makes available to templates, separate from your payload.

Every render makes a small set of system-generated values available to your template under the meta namespace. These are not part of your payload. They describe the render itself: which document, which request, who asked for it.


Referencing Them

Use dot notation, the same as any payload field:

{{meta.correlationId}}

A typical use is a reference line in a footer:

{
  "type": "footer",
  "subText": "Ref: {{meta.correlationId}}"
}

Nested values work as you would expect:

{{meta.customColumns.SalesRep}}

Available Fields

FieldDescription
meta.correlationIdThe unique identifier REFRACT assigns to this render. Appears in the audit trail, the archive, and every verification artifact for this document.
meta.documentIdYour identifier for the document, as supplied on the request.
meta.docTypeThe document type, for example Invoice.
meta.payloadIdYour identifier for the payload used in this render.
meta.batchIdThe batch this document belongs to. Present only for batch operations.
meta.generatedByThe user or service principal that requested the render.
meta.userGroupThe audience group applied to this render, which also determines redaction rules.
meta.customColumnsAn object of your own key-value pairs, passed through from the request. Reference individual keys with dot notation.

A Fixed List, Not a Mirror of `options`

Nothing else from the request is available. The list above is fixed, not a mirror of the request's options object, so adding a new field to a request does not make it referenceable in a template.


What the Correlation ID Actually Is

Always System-Generated

meta.correlationId is always the identifier REFRACT generates. If your request supplies a correlationId, it is ignored and replaced.

This is deliberate. The generated identifier is what appears in the audit chain, the render archive, the verification report and every other record of the document. A template printing a caller-supplied value would put a reference on the page that matches nothing else in the system.

If you need your own reference on the document, pass it as options.documentId, options.payloadId, or a customColumns entry, all of which are preserved as sent.


Fields That May Be Empty

A field with no value renders as an empty string. It never prints the placeholder text or the word undefined, so a template referencing a field that was not supplied simply shows nothing in that position.

meta.batchId is empty for any document not rendered as part of a batch, which is the normal case for a single render.


Where Values Come From

meta reflects what the system actually used, not what was requested, for any field the platform normalizes or defaults. Where a value is defaulted because the request omitted it, the template sees the effective value.

On this page