Skip to main content

Content Item Expressions

2026.1.0+

When a content item is stored as a process or case variable, its properties can be accessed through backend expressions. For example, if a content item is stored in a variable named document, its MIME type can be accessed via ${document.mimeType}.

The metadata, renditions, and definition properties support lazy loading: if the content item was queried without including that related data, it is fetched automatically when the expression is evaluated. All content item properties are read-only.

Content Item Properties

The following properties are available on a content item:

PropertyDescription
idThe unique technical identifier of the content item.
nameThe name of the content item.
mimeTypeThe MIME type of the content item.
createdThe time (as a java.util.Date) the content item was created.
createdByThe id of the user that created the content item.
lastModifiedThe time (as a java.util.Date) the content item was last modified.
lastModifiedByThe id of the user that last modified the content item.
contentSizeThe size in bytes of the stored content.
contentAvailableWhether the content is currently available in the content store.
contentStoreIdThe identifier used within the content store to reference the stored content.
contentStoreNameThe name of the content store where the content is stored.
taskIdThe id of the task this content item is associated with, if any.
processInstanceIdThe id of the process instance this content item is associated with, if any.
scopeIdThe scope identifier of the content item, if any.
scopeTypeThe scope type of the content item, if any.
tenantIdThe tenant identifier of the content item.
versionThe version number of the content item.
versionInfoAdditional version information, if set.
versionParentIdThe id of the parent version, if the content item is versioned.
definitionIdThe id of the document definition associated with this content item, if set.
definitionNameThe name of the document definition associated with this content item, if set.
stateThe state of the content item, if set.
subStateThe sub-state of the content item, if set.
typeThe type of the content item, if set.
subTypeThe sub-type of the content item, if set.
lockInfoLock information for the content item, if it is currently locked.
parentFolderIdThe id of the parent folder, if the content item is stored in a folder.
baseFolderIdThe id of the base folder, if set.
metadataA Map<String, Object> of all metadata key-value pairs. Loaded lazily if not pre-fetched.
renditionsA list of renditions associated with the content item. Loaded lazily if not pre-fetched. See Rendition Properties.
definitionThe document definition associated with the content item, or null if no definitionId is set. Loaded from the deployment cache. See Definition Properties.

In addition, the following shorthand properties give direct access to a rendition of a specific type (or its data), without iterating over the renditions list:

PropertyDescription
thumbnailRenditionThe thumbnail RenditionItem of the content item, or null if none exists. See Rendition Properties.
pdfRenditionThe PDF RenditionItem of the content item, or null if none exists.
structuredRenditionThe structured RenditionItem of the content item, or null if none exists.
thumbnailRenditionDataThe binary content of the thumbnail rendition as an InputStream, or null if none exists.
pdfRenditionDataThe binary content of the PDF rendition as an InputStream, or null if none exists.
structuredRenditionDataThe structured rendition content parsed as a JSON object (JsonNode), or null if none exists.

Metadata

Metadata can be accessed via the metadata property, which resolves to an object of all metadata key-value pairs.

Example: ${document.metadata.author}

If the metadata was not included in the original content item query, it is fetched automatically on first access.

Rendition Properties

The renditions property resolves to a list of RenditionItem objects associated with the content item. If renditions were not included in the original query, they are fetched automatically on first access.

Example: ${document.renditions}

To access a rendition of a specific type directly, use the shorthand properties instead of iterating the list.

Example: ${document.thumbnailRendition} (the RenditionItem), ${document.pdfRenditionData} (the binary content), or ${document.structuredRenditionData.someField} (a field of the parsed JSON).

Each rendition in the list exposes the following properties:

PropertyDescription
idThe unique technical identifier of the rendition.
contentItemIdThe id of the content item this rendition belongs to.
contentItemNameThe name of the content item this rendition belongs to.
nameThe name of the rendition.
mimeTypeThe MIME type of the rendition.
renditionTypeThe type of the rendition (thumbnail, pdf, or structured).
contentStoreIdThe identifier used within the content store to reference the rendition content.
contentStoreNameThe name of the content store where the rendition is stored.
contentSizeThe size in bytes of the rendition content.
contentAvailableWhether the rendition content is currently available.
createdThe time (as a java.util.Date) the rendition was created.
lastModifiedThe time (as a java.util.Date) the rendition was last modified.
taskIdThe id of the task this rendition is associated with, if any.
processInstanceIdThe id of the process instance this rendition is associated with, if any.
scopeIdThe scope identifier of the rendition, if any.
scopeTypeThe scope type of the rendition, if any.
tenantIdThe tenant identifier of the rendition.
provisionalWhether the rendition is provisional (not yet finalized).

Structured Renditions

A structured rendition holds a JSON representation of the content item (MIME type application/json). Unlike the thumbnail and pdf renditions, a structured rendition is not generated for every uploaded file. It is created for specific content sources, most notably for content items that originate from an inbound email channel. For an ordinary uploaded document, ${document.structuredRendition} and ${document.structuredRenditionData} therefore resolve to null unless a structured rendition was explicitly produced.

When accessed through the structuredRenditionData shorthand, the JSON is parsed automatically and returned as a JsonNode, so individual fields can be addressed directly, for example ${document.structuredRenditionData.subject}.

Email Structured Rendition

When a content item is created from a received email, the structured rendition contains the parsed email as JSON. Only fields that are present on the email are included, plus the attachments array, which is always added.

FieldTypeDescription
fromStringThe sender's email address.
toArray of StringThe recipient addresses.
ccArray of StringThe CC'd addresses.
bccArray of StringThe BCC'd addresses.
subjectStringThe email subject line.
subjectCorrelationStringThe correlation value extracted from the subject, if a correlation pattern is configured.
sentDateStringThe time the email was sent, as an ISO 8601 instant.
receivedDateStringThe time the email was received, as an ISO 8601 instant.
contentStringThe plain text body of the email.
contentHtmlStringThe HTML body of the email.
customHeadersObjectAny non-standard email headers, as a key-value object.
attachmentsArray of ObjectThe email attachments, each as an object with id (the content item id of the stored attachment) and name (the file name).

The raw MIME message and the binary attachment data are not part of the structured rendition. Each attachment is stored as its own content item and referenced from the attachments array by its id.

Example: ${document.structuredRenditionData.from} returns the sender address, and ${document.structuredRenditionData.attachments} returns the list of attachment references.

Definition Properties

If a content item is associated with a document definition, the definition can be accessed via the definition property. If the content item has no definitionId set, the property resolves to null.

The definition is backed by the deployment cache, so repeated access does not trigger additional database queries.

Example: ${document.definition.key}

PropertyDescription
idThe unique technical identifier of the document definition.
keyThe key of the document definition, unique per tenant.
nameThe name of the document definition.
versionThe version of the definition. Each time a document model is published, a new version for the same key is created.
categoryThe category of the document definition, if set.
deploymentIdA reference to the deployment that contains this definition.
resourceNameThe name of the resource file that defines this document definition.
tenantIdThe tenant identifier of the document definition.
creationTimeThe time (as a java.util.Date) the definition was deployed.
updateTimeThe time (as a java.util.Date) the definition was last updated.