This appendix is intended to be the detailed companion page to the main SpEL Expression Language guide. It lists the full nested variable surface available to end users, grouped by root context variable.


How Context Variables Work

  1. An event is triggered against an object in the system (ie File, Folder, Form, etc) and injects context-specific variables from that object.
  2. Each action can read those variables in conditions and parameter expressions.
  3. Actions can create new output variables that later actions can use.
  4. Some variables are always present in event execution, while others depend on trigger type.


How to Use This Appendix

  • Every expression is written exactly as it would appear in an event expression, for example #item.title.
  • Some root variables are only available for certain triggers or after certain actions.
  • Some variables are aliases of the same underlying object. For example, #file and #item can refer to the same file item in file-based flows.
  • Collection values can be accessed by index, for example #item.activeTasks[0].
  • Map values can be accessed by key, for example #item.attributes["Department"].



1. Common Runtime Variables

Applies to the following event triggers :

  • All event actions
  • Trigger filters
  • Action conditions
  • Later actions in the same event run

Expression

Description

#itemThe object the current event has run against (File, Folder, Form, Issue, etc). Cloned by #file, #folder, #form, or #issue depending on event context.
#fileAvailable when the event ran against a file
#folderAvailable when the event ran against a folder
#formAvailable when run using form-related events.
#issueAvailable for Issue-related events.

#event

Current event object

#result

Most recent action result object

#result.status

Result status. See Web Service Event Action for more detail.

#result.message

Result message. See Web Service Event Action for more detail.

#result.action

Action name/type

#condition

Condition value when present



2. Item Catalog

Applies to the following event triggers:

  • Item-based triggers
  • File, folder, form, issue, status, comment, tag, workflow, and task-adjacent item flows
  • Any action that outputs #item


2.1 Root Item Fields

Expression

Description

#item.id

Item id

#item.title

Item title

#item.description

Item description

#item.createdByEntity ID of the item's creator
#item.createdDateDate item was created
#item.creatorEntity object of the item creator. See Entity Catalog section.
#item.modifiedByEntity ID of the item modifier
#item.modifiedDateDate item was modified
#item.modifierEntity object of the items last modifier. See Entity Catalog section.

#item.version

File version number

#item.revision

File revision number

#item.type

Item type text  (File, Folder, Form, Issue, etc) 

#item.status

Status text

#item.favourite

Favorite flag

#item.associated

Associated document flag

#item.size

Item size

#item.collectionType

Collection type

#item.searchResult

Search metadata

#item.dnu

DNU field (Content Intelligence)

#item.maxReadability

Readability field (Content Intelligence)

#item.isLocked

File/Folder lock flag


2.2 Item Relationships

Expression

Description

#item.items

Child items

#item.ancestors

Ancestor items (ie Folder of a file/form item).


If type is File: ancestors[1] = parent folder
If type is Folder, Form, Issues etc: ancestors[0] = parent folder

#item.itemsChild items (ie Files under a Folder item)

#item.associatedDocuments

Associated documents

#item.versions

Version list

#item.comments

Comment list

#item.tags

Tag list

#item.forms

Forms on the item

#item.activeForms

Active forms on the item

#item.activeTasks

Active tasks on the item



2.3 Item Attribute and System Attribute Helpers

Expression

Description

#item.attributes

Attribute map keyed by attribute name

#item.getAttribute("Name")

Returns an attribute by name

#item.systemAttributes

System attribute list

#item.getSystemAttribute("Name")

Returns a system attribute by name

#item.getSystemAttributeValue("Name")

Returns a system attribute value



2.4 Item Content Intelligence

Expression

Description

#item.contentIntelligenceKeywords

Content intelligence keyword list

#item.contentIntelligenceConcepts

Content intelligence concept list



2.5 Common Item Collection Examples

Expression

Description

#item.items[0].id

First child item id

#item.items[0].title

First child item title

#item.parents[0].id

First parent id

#item.parents[0].title

First parent title

#item.ancestors[0].id

First ancestor id.

If type is File: ancestors[1] = parent folder (and ancestors[0] is the stub).
If type is Folder, Form, Issues etc: ancestors[0] = parent folder

#item.ancestors[0].title

First ancestor title

#item.comments[0].id

First comment id

#item.tags[0].id

First tag id



3. File and Folder Catalog

Applies to the following event triggers:

  • File create flows
  • Local file create
  • FTP file create
  • Email receive
  • Document object create
  • Folder create/delete flows
  • Item aliasing when the current item type is file or folder


3.1 File Alias

#file uses the same nested surface as #item when the current context object is a file.

Expression

Description

#file.id

File id

#file.title

File title

#file.description

File description

#file.status

File status

#file.attributes

File attributes

#file.activeTasks

File active tasks

#file.activeForms

File active forms

#file.items

File child items if applicable

#file.parents

File parent items

#file.ancestors

File ancestors

ancestors[1] = parent folder

ancestors[0] = stub

#file.size

File size



3.2 Folder Alias

#folder uses the same nested surface as #item when the current context object is a folder.

Expression

Description

#folder.id

Folder id

#folder.title

Folder title

#folder.description

Folder description

#folder.status

Folder status

#folder.items

Folder child items

#folder.parents

Folder parents

#folder.ancestors

Folder ancestors


ancestors[0] = parent folder

ancestors[1] = parent folder's parent folder, etc

#folder.attributes

Folder attributes



3.3 Parent Item


Expression

Description

#parent

Parent folder or item in create/delete flows

#parent.id

Parent id

#parent.title

Parent title

#parent.type

Parent item type

#parent.status

Parent status

Can use most of the base Item or ancestor nested variables.


4. Form Catalog

Applies to:

  • Question Answer trigger
  • Form submit and form-related item flows
  • Any flow where a form can be resolved from the current item
  • Active forms under #item.activeForms


4.1 Root Form Fields

Expression

Description

#form.formInstance

Form instance object (see #item.activeForms for list of related nested variables)

#form.formDefinition

Form definition object (see Form Definition section)

#form.questions

Question list (see Questions Catalog)

#form.questionsMap

Map of question key to question - see Questions Catalog

#form.owners

List of owner entity IDs - see Entity Catalog

#form.linkedTasks

Linked tasks - see Task Catalog

#form.linkedActiveTasks

Linked active tasks - see Task Catalog

#form.owner

Owner entity ID - see Entity Catalog

#form.submits

Submit instances - see Form Submits

#form.event

Event linked to form definition



4.2 Form Instance

Expression

Description

#form.formInstance.id

Form instance id

#form.formInstance.formId

Form id



4.3 Form Definition

Expression

Description

#form.formDefinition.id

Definition id

#form.formDefinition.ownerId

Definition owner id

#form.formDefinition.name

Definition name

#form.formDefinition.type

Definition type

#form.formDefinition.questions

Definition question list

#form.formDefinition.evaluators

Definition evaluator list

#form.formDefinition.forms

Forms from definition

#form.formDefinition.event

Linked event

#form.formDefinition.enabled

Enabled flag

#form.formDefinition.questionsMap

Question map



4.4 Form Submit Records

Expression

Description

#form.submits[0].id

Submit id

#form.submits[0].formId

Form id

#form.submits[0].questionId

Question id 

#form.submits[0].ownerId

Owner id - see Entities for further usage

#form.submits[0].content

Submitted content

#form.submits[0].comment

Submit comment

#form.submits[0].status

Submit status



4.5 Active Forms from Item

ExpressionDescription

#item.activeForms

Active forms list on current item

#item.activeForms[0]

First active form

#item.activeForms[0].formDefinition.name

First active form definition name. See section 4.3

#item.activeForms[0].linkedActiveTasks

Tasks linked to first active form. See section 8 Tasks Catalog

#item.activeForms[0].questions

Questions for active form

#item.activeForms[0].questions[0].id

Question id

#item.activeForms[0].questions[0].formDefinitionId

Form definition id

#item.activeForms[0].questions[0].category

Question category

#item.activeForms[0].questions[0].ordinal

Question order

#item.activeForms[0].questions[0].label

Question label

#item.activeForms[0].questions[0].type

Question type

#item.activeForms[0].questions[0].description

Question description

#item.activeForms[0].questions[0].pattern

Validation pattern

#item.activeForms[0].questions[0].required

Required flag

#item.activeForms[0].questions[0].preserveOrder

Preserve order flag

#item.activeForms[0].questions[0].value

Default/value field

#item.activeForms[0].questions[0].options

Option list

#item.activeForms[0].questions[0].parameters

Question parameter map

#item.activeForms[0].questions[0].rules

Rule list

#item.activeForms[0].questions[0].answers

Answer list

#item.activeForms[0].questions[0].source

Question source

#item.activeForms[0].questions[0].referenceKey

Question alias reference key

#item.activeForms[0].questions[0].answers[0].id

Answer id

#item.activeForms[0].questions[0].answers[0].formId

Form id

#item.activeForms[0].questions[0].answers[0].questionId

Question id

#item.activeForms[0].questions[0].answers[0].ownerId

Owner id

#item.activeForms[0].questions[0].answers[0].owner

Owner object

#item.activeForms[0].questions[0].answers[0].content

Raw answer content

#item.activeForms[0].questions[0].answers[0].question

Linked question

#item.activeForms[0].questions[0].answers[0].visible

Visible flag

#item.activeForms[0].questions[0].answers[0].dependsOn

Dependency id

#item.activeForms[0].questions[0].answers[0].displayValues

Display values

#item.activeForms[0].questions[0].answers[0].display

Display-friendly answer

#question

Root question in question-answer trigger

#answer

Root answer in question-answer trigger



5. Question Catalog

Applies to:

  • #question in Question Answer trigger
  • #form.questions
  • #item.activeForms[n].questions


5.1 Root Question Fields

Expression

Description

#question.id

Question id

#question.formDefinitionId

Form definition id

#question.category

Category

#question.ordinal

Display order

#question.label

Label

#question.type

Question type

#question.description

Description

#question.required

Required flag

#question.value

Value/default value

#question.options

Option values

#question.parameters

Parameter map

#question.rules

Rules

#question.answers

Answers

#question.source

Source value

#question.referenceKey

Alias reference key



5.2 Question Rules

Expression

Description

#question.rules[0].id

Rule id

#question.rules[0].questionId

Question id

#question.rules[0].type

Rule type

#question.rules[0].value

Rule value



5.3 Question Answers

Expression

Description

#question.answers[0]

First answer

#question.answers[0].id

Answer id

#question.answers[0].content

Answer content

#question.answers[0].display

Display value



5.4 Question Examples via Active Forms

Expression

Description

#item.activeForms[0].questions[0].label

First question label on first active form

#item.activeForms[0].questions[0].type

First question type

#item.activeForms[0].questions[0].answers[0].display

First answer display value





6. Answer Catalog

Applies to:

  • #answer in Question Answer trigger
  • #question.answers
  • #item.activeForms[n].questions[n].answers



6.1 Root Answer Fields

Expression

Description

#answer.id

Answer id

#answer.formId

Form id

#answer.questionId

Question id

#answer.ownerId

Owner id - see Entities for further usage

#answer.owner

Owner entity

#answer.content

Raw stored content

#answer.question

Linked question

#answer.visible

Visible flag

#answer.applies

Applies flag

#answer.dependsOn

Dependency question id

#answer.displayValues

Display values list

#answer.display

Display-friendly value



6.2 Nested Answer Examples

Expression

Description

#answer.question.label

Label of the linked question

#answer.owner.id

Owner id - see Entities for further usage

#answer.owner.type

Owner entity type




7. Attribute Catalog

Applies to:

  • #item.attributes
  • #item.directAttributes
  • #attribute in Attribute Create trigger
  • #entity.attributes



7.1 Root Attribute Fields

Expression

Description

#attribute.id

Attribute id

#attribute.nodeId

Linked item id (file, folder etc)

#attribute.name

Attribute name

#attribute.value

Attribute value



7.2 Item Attribute Map

Expression

Description

#item.attributes["Name"]

Attribute object by name

#item.attributes["Name"].id

Attribute id

#item.attributes["Name"].nodeId

Linked item id (file, folder, etc)

#item.attributes["Name"].name

Attribute name



#item.attributes["Name"].value

Attribute value

#item.attributes.get('attributeName').getValue()
Safer method to fetch attribute value
#list.implode(#item.attributes?.![key], ',')
Return all attribute key names of an item



7.3 Entity Attribute Map

Expression

Description

#entity.attributes["Name"]

Entity attribute object

#entity.attributes["Name"].value

Entity attribute value



8. Task Catalog

Applies to:

  • #task in Task Action trigger
  • #item.activeTasks
  • #form.linkedTasks
  • #form.linkedActiveTasks
  • #entity.activeTasks
  • #tasks in task-search style contexts



8.1 Root Task Fields

Expression

Description

#task.id

Task id

#task.workflowId

Workflow id

#task.parentId

Parent task id

#task.nodeId

Linked item id (file, folder, etc)

#task.subject

Subject

#task.description

Description

#task.taskType

Task type code

#task.type

Task type text

#task.executionType

Execution type

#task.completionType

Completion type

#task.prevTask

Previous task id

#task.nextTask

Next task id

#task.dueDate

Due date

#task.activatedDate

Activated date

#task.terminatedDate

Terminated date

#task.duration

Duration

#task.active

Active flag

#task.complete

Complete flag

#task.owner

Owner entity ID

#task.claimed

Claimed flag

#task.ownerActive

Owner active flag

#task.enabled

Enabled flag

#task.visible

Visible flag

#task.newFormAnswersOnReassignment

Reassignment behavior

#task.templateId

Template id

#task.context

Context payload



8.2 Task Relationships

Expression

Description

#task.workflow

Workflow object

#task.tasks

Related tasks

#task.activeTasks

Related active tasks

#task.relationships

Relationship list

#task.ownerRelationships

Owner relationship list

#task.links

Link list

#task.alarms

Alarm list

#task.details

Detail list

#task.properties

Properties map

#task.item

Linked item object

#task.user

Linked user



8.3 Task Options

Expression

Description

#task.options[0].id

Option id

#task.options[0].label

Option label

#task.options[0].condition

Option condition

#task.options[0].applicable

Applicable flag

#task.options[0].status

Status

#task.options[0].gotoTask

Next task target



8.4 Task Relationships

Expression

Description

#task.relationships[0].id

Relationship id

#task.relationships[0].taskId

Task id

#task.relationships[0].assigneeId

Assignee id

#task.relationships[0].action

Relationship action

#task.relationships[0].completedDate

Completion date



8.5 Task Details

Expression

Description

#task.details[0].id

Detail id

#task.details[0].taskId

Task id

#task.details[0].name

Detail name

#task.details[0].value

Detail value

#task.getDetail("Name")

Get detail object by name

#task.getDetailValue("Name")

Get detail value by name



8.6 Task Links

Expression

Description

#task.links[0].id

Link id

#task.links[0].taskId

Task id

#task.links[0].dimensionId

Dimension id

#task.links[0].link

Link name/type

#task.links[0].linkValue

Link value



8.7 Task Alarms

Expression

Description

#task.alarms[0].id

Alarm id

#task.alarms[0].taskId

Task id

#task.alarms[0].name

Alarm name

#task.alarms[0].type

Alarm type

#task.alarms[0].action

Alarm action

#task.alarms[0].alarmDate

Alarm date

#task.alarms[0].properties

Alarm property map



8.8 Active Task Access from Item

Expression

Description

#item.activeTasks[0].subject

First active task subject

#item.activeTasks[0].dueDate

First active task due date

#item.activeTasks[0].details[0].name

First detail name

#item.activeTasks[0].relationships[0].assigneeId

First relationship assignee

#item.activeTasks[0].options[0].label

First option label



8.9 Task List Variable

Expression

Description

#tasks

Task list in task-search style contexts

#tasks[0].id

First task id

#tasks[0].subject

First task subject



9. Issue Catalog

Applies to:

  • Issue Create
  • Issue Submitted
  • Issue Complete

#issue generally follows the item-style surface.

Expression

Description

#issue.id

Issue id

#issue.title

Issue title

#issue.description

Issue description

#issue.type

Issue item type

#issue.status

Issue status

#issue.attributes

Issue attribute map

#issue.activeTasks

Issue active tasks

#issue.activeForms

Issue active forms

#issue.comments

Issue comments

#issue.tags

Issue tags

#folderId

Parent folder id passed in issue flows



10. Entity Catalog

Applies to:

  • User Create
  • Group Create
  • Company Create
  • #entities in entity-search style expressions


May need to set the context variable #entity to an entity object such as #user, #item.creator, #user.ancestor[0], etc. 

Can use #expr.entitySearch( [INSERT ENTITY_ID], '#entities')[0] to fetch an entity object based on an available entity ID (User ID, Team ID, or Company ID).



10.1 Common Entity Fields

Expression

Description

#entity.id

Entity id

#entity.type

Entity type

#entity.activeTasks

Active tasks

#entity.claimedTasks

Claimed tasks

#entity.ancestors

Hierarchy ancestors

#entity.descendants

Hierarchy descendants

#entity.role

Role

#entity.activeTasksMetaData

Task metadata map

#entity.attributes

Entity attributes

#entity.getAttribute("Name")

Attribute helper



10.2 User-Style Fields

Expression

Description

#entity.firstName

First name

#entity.middleName

Middle name

#entity.lastName

Last name

#entity.username

Username

#entity.name

Full/display name

#entity.favourites

Favorite items

#entity.emails

Email list

#entity.groups

Group list

#entity.companies

Company list

#entity.defaultCompany

Default company

#entity.backups

Backup users

#entity.backupsFor

Users this user backs up

#entity.locked

Locked flag

#entity.lockedDetail

Lock detail

#entity.lastActiveDate

Last active date

#entity.defaultEmail

Default email

#entity.lockedOutCompanyIds

Locked-out company ids

#entity.isNative

False for SSO users

#entity.backupExpiryDate

Backup expiry date



10.3 Advanced Entity Examples

Expression

Description

#expr.entitySearch( #item.createdBy, '#entities')[0]

Return entity object of user that created the item

#list.explodeProperty(#entity.backups, 'name')

Returns list of names of an entity's backups

#expr.isMemberOf('Developers')

Returns true if the current user logged in is a member of the listed Teams, in this case the team “Developers”. False otherwise.



10.4 Entity Attribute Map

Expression

Description

#entity.attributes["attributeName"]

Entity attribute object

#entity.attributes["attributeName"].value

Entity attribute value

#user.attributes.get('attributeName').getValue()
User attribute value
#list.implode(#user.attributes?.![key], ', ')
Returns all attribute keys in a comma-separated string.



10.3 Team-Style Fields

Expression

Description

#entity.name

Team name

#entity.description

Team description

#entity.subgroups

Sub teams

#entity.users

Users in team (returns list of entities)

#entity.groups

Related teams

#entity.emails

Team emails

#entity.email

Primary team email

#entity.attributes.get('attributeName').getValue()
Get specific team attribute
#user.ancestorsList of teams a user is part of or inherits from a backup. See ListUtil function examples to manipulate.
#list.implode(#user.ancestors?.![name], ', ')Return a comma-separated string of user's team names.
#list.implode(#entity.users?.![username], ', ')
Return all team member emails in a comma-separated string



10.4 Company-Style Fields

Expression

Description

#entity.name

Company name

#entity.shortName

Short name

#entity.baseUrl

Base URL

#entity.subcompanies

Child companies

#entity.groups

Company teams

#entity.users

Company users

#entity.roles

Company roles

#entity.statuses

Company statuses

#entity.emails

Company emails

#entity.locked

Locked flag



10.5 Entity List Variable

Expression

Description

#entities

Entity list

#entities[0].id

First entity id

#entities[0].type

First entity type

#entities[0].name

First entity name when supported



11. Dataset Catalog

Applies to:

  • Create Dataset Row
  • Dataset Row Update
  • Dataset-search style contexts



11.1 Row Variables

Expression

Description

#row

Created row

#oldRow

Row before update

#newRow

Row after update

#row.id

Row id

#row.dataSet

Parent dataset

#row.dataEntries

Data entry map

#row.cells

Column-to-value map

#row.getValue("ColumnName")

Helper to get cell value



11.2 Row Entry Surface

Expression

Description

#row.dataEntries["ColumnName"].id

Entry id

#row.dataEntries["ColumnName"].dataSetId

Dataset id

#row.dataEntries["ColumnName"].rowId

Row id

#row.dataEntries["ColumnName"].name

Column name

#row.dataEntries["ColumnName"].value

Cell value

#row.dataEntries["ColumnName"].dataSet

Parent dataset

#row.dataEntries["ColumnName"].compositeKey

Composite key



11.3 Dataset Root Surface

Expression

Description

#dataSet.id

Dataset id

#dataSet.ownerId

Owner id

#dataSet.name

Dataset name

#dataSet.description

Dataset description

#dataSet.columnsMetadata

Column metadata

#dataSet.columns

Column list

#dataSet.data

Row list

#dataSet.unique

Unique flag



11.4 Dataset Columns

Expression

Description

#dataSet.columns[0].name

Column name

#dataSet.columns[0].ordinal

Column order

#dataSet.columns[0].composite

Composite flag

#dataSet.columns[0].isNumber

Numeric flag



11.5 Dataset Data Examples

Expression

Description

#dataSet.data[0].id

First row id

#dataSet.data[0].cells["Status"]

First row status value

#oldRow.cells["Status"]

Previous status value

#newRow.cells["Status"]

New status value

Option 1:
(( dataSet:<DATASET_ID>:#dataSet.data.?[(#variable1 == #this.cells['Col1'] || #variable2 == #this.cells['Col2']) && 'value3' == #this.cells['Col4']]?.![cells['Col5']] ))

Option 2 (returns multiple):
(( #expr.dataSetSearch( <DATASET_ID>, "#dataSet.data.?[( #this.cells['Col1Title'] == 'ABC' || #this.cells['Col2Title'] == 'Chapter 2' || #this.cells['Col3Title'] == 'Author') && #this.cells[#Col4] == 'Yes' ].![cells['Col5']]") ))
2 ways to fetch a value from a dataset.
Using a dataset ID, lookup multiple column values in a dataset (Can use AND '&&' or OR '||' symbols)
(ie (Col1 || Col2 || Col3) && Col4), and return the corresponding values found in Col5. May return multiples if multiple rows are matched.



12. Event Catalog

Applies to:

  • All event action execution contexts

The event object is available as #event. Commonly used fields are typically top-level event metadata and action lists.

Expression

Description

#event.id

Event id

#event.name

Event name if available

#event.actions

Event action list if available

#event.actions[0].id

First action id if exposed

#event.actions[0].ordinal

First action order if exposed

#event.actions[0].eventId
First action's event ID
#event.actions[0].action
First action's name
#event.triggers[0].eventId
First trigger's trigger ID
#event.triggers[0].trigger
First trigger's name



13. Workflow Catalog

Applies to:

  • Workflow Activate
  • Workflow Terminate
  • Task-linked workflow access through #task.workflow


#workflow typically follows the task/workflow model used in workflow contexts.

Expression

Description

#workflow.id

Workflow id

#workflow.subject

Workflow subject

#workflow.status

Workflow status

#workflow.tasks

Workflow tasks

#workflow.activeTasks

Workflow active tasks



14. Utility Trigger Variables

Applies to:

  • Specific trigger families only


14.1 Comment

Expression

Description

#comment

Comment object

#comment.id

Comment id when exposed

#comment.content

Comment content when exposed



14.2 Tag

Expression

Description

#tag

Tag object

#tag.id

Tag id when exposed

#tag.name

Tag name when exposed

#item.tags
List of tags for an item
#item.tags(0)
First tag of an item. Unordered.
#item.tags?.get(0)Safer fetch of the first tag under an item
#list.implode(#item.tags.![tag], ', ')
String of comma-separated tag names



14.3 Status

Expression

Description

#status

Status object or status value



14.4 Compare Failure

Expression

Description

#compareError

Compare error payload

#left

Left-side comparison object

#right

Right-side comparison object



14.5 File Conversion Failure

Expression

Description

#error

Conversion error payload or message



14.6 Document Object

Specific Feature. Related to a panel called "Document Objects" on a File.


Expression

Description

#documentObject

Document object payload

#documentObject.file

Linked file when exposed



14.7 On Email Receive 

Expression

Description

#title

Email title

#subject

Email subject

#to

Email recipients

#from

Email sender

#file

File created or attached in email flow



14.8 Content Intelligence

For Files/Folder events where Content Intelligence has been processed.

Expression

Description

#fileResults

Content intelligence file results

#folderResults

Content intelligence folder results



15. Action Output Catalog

Applies to:

  • Later actions in the same event run after the producer action executes


15.1 Fixed Output Variables

Expression

Description

#result

Prior action result

#item

Item created or replaced by action

#file

File returned by action

#response

Web service response body

#statusCode

Web service HTTP status code

#FTP_UPLOAD_STATUS

FTP upload status

#rowsCreated

Dataset rows created

#rowsModified

Dataset rows modified

#rowsDeleted

Dataset rows deleted

#splitFiles

Split file collection

#splitFilesMap

Split file mapping

#splitFailures

Split failures

#allCommentsGroupedByAssignee

Comments grouped by assignee

#sourceFile

Source file

#commentAuthorsMap

Comment author map



15.2 Dynamic Output Variables

These are user-configured keys that become new root variables.

Expression

Description

#yourVariableName

Variable created by Set Context Variable action

#yourDatabaseKey

Variable created by Database Read action

Examples:

  • #approvalOwner
  • #customerRecord
  • #targetFolder
  • #routingDecision



16. Recommended Deep-Access Patterns

Expression

Description

#item != null and #item.attributes["Department"] != null

Safe attribute check

#item.activeTasks.size() > 0 and #item.activeTasks[0].subject == "Review"

Safe first-task check

#item.activeForms.size() > 0 and #item.activeForms[0].questions.size() > 0

Safe active-form question check

#answer != null and #answer.display != null

Safe answer display check

#row != null and #row.cells["Status"] == "Approved"

Safe dataset row check

#entity != null and #entity.type == "USER"

Safe entity type check



17. Appendix Notes

  1. #file, #folder, #issue, and similar item-like roots often expose the same nested item-style surface as #item.
  2. #item.activeForms and #item.activeTasks are collections, so index access should be guarded with size checks.
  3. Map-based access such as #item.attributes["Name"] is generally the safest way to access attributes.
  4. Action-output variables only exist after the producing action runs successfully in the same event pipelin

 


Next: