Automation basics
Understand the general concepts and best practices of automation in Atlassian cloud products.
Automation is available in Confluence Premium and Enterprise.
Smart values are dynamic variables that can make your rule more flexible. Each smart value is constructed using a specific syntax called dot notation inside double mustache brackets. It's written as a hierarchy, starting with a top-level object and followed by properties of that object, {{object.property.subProperty}}. Notice that multiword properties use camelCase capitalization.
When you’re trying to understand what a particular smart value might do, it can help to read them in reverse. For example:
{{page.title}} is "the title of the page" (that's relevant to your rule component).
{{page.parent.title}} is "the title of the parent (of the relevant) page”.
To learn more about what smart values are and how to use them, read What are smart values? in the Key concepts of Cloud automation.
When you’re building a rule with a component that accepts smart values, you can enter the smart value manually or use the search tool.
At the right side of the smart value field you will see a selectable mustache brackets {} icon. Select this to open a searchable list of all smart values in Confluence.
When you find the smart value you want, select the copy icon to copy the smart value to your clipboard.
Go back to the smart value input field and paste the value from your clipboard (Cmd + V on Mac or Ctrl + V on PC).
This is a list of smart values that can currently be used in Confluence automation rules, grouped by object and sorted by the properties available for that object. Not all objects have the same properties.
Smart values are case sensitive. Multiword properties use camelCase capitalization.
Objects in Confluence include:
When you use smart values with the For each CQL (related entities branch and For each task branch, the smart values for content and spaces will be cleared before branching. See Branches in Confluence automation for more information.
{{space}} – returns all available space properties
{{space.url}}
{{space.id}}
{{space.key}}
{{space.name}}
{{space.isPersonal}}
{{space.creator}}
{{space.creator.accountId}}
{{space.creator.emailAddress}}
{{space.creator.fullName}}
{{space.creator.publicName}}
{{space.creator.timeZone}}
{{space.url}} – the URL link to the Overview of a specific space
{{space.id}} – the ID number that uniquely identifies a space
{{space.key}} – the keyword in the URL that serves as a unique identifier of a space
Example: http://confluence.atlassian.com/wiki/spaces/KEYWORD/pages
{{space.name}} – the name of the space
{{space.isPersonal}} – Boolean: returns True if the space a personal space and False if it’s not. This is useful, for example, if you want to exclude personal spaces from global rules.
{{space.creator}} – all available information about the creator of the space, including each of the fields below, which you can also use individually
{{space.creator.accountId}} – the account ID number of the person who created the space
{{space.creator.emailAddress}} – the email address of the person who created the space
{{space.creator.fullName}} – the first and last name of the person who created the spac
{{space.creator.publicName}} – the public name of the person who created the space (the name or handle they use in public Atlassian forums like Community)
{{space.creator.timeZone}} – the time zone of the person who created the space
{{page}} – Returns all available page properties
{{page.url}}
{{page.id}}
{{page.title}}
{{page.parent.url}}
{{page.parent.id}}
{{page.parent.title}}
{{page.author.fullName}}
{{page.author.publicName}}
{{page.author.emailAddress}}
{{page.author.accountId}}
{{page.author.timeZone}}
{{page.editor.fullName}}
{{page.editor.publicName}}
{{page.editor.emailAddress}}
{{page.editor.accountId}}
{{page.editor.timeZone}}
{{page.hasChildren}}
{{page.owner.fullName}}
{{page.owner.publicName}}
{{page.owner.emailAddress}}
{{page.owner.accountId}}
{{page.owner.timeZone}}
{{page.priorOwner.fullName}}
{{page.priorOwner.publicName}}
{{page.priorOwner.emailAddress}}
{{page.priorOwner.accountId}}
{{page.priorOwner.timeZone}}
{{page.labels}}
{{page.dateFirstPublished}}
{{page.dateLastUpdated}}
{{page.status}}
{{page.state}}
{{page.aiSummary}}
{{page.aiActionItems}}
{{page.classificationLevel}}
{{page.totalViewersCount}}
{{page.totalViewsCount}}
{{blogpost}} – Returns all available blog post properties
{{blogpost.url}}
{{blogpost.id}}
{{blogpost.title}}
{{blogpost.parent.url}}
{{blogpost.parent.id}}
{{blogpost.parent.title}}
{{blogpost.author.fullName}}
{{blogpost.author.publicName}}
{{blogpost.author.emailAddress}}
{{blogpost.author.accountId}}
{{blogpost.author.timeZone}}
{{blogpost.editor.fullName}}
{{blogpost.editor.publicName}}
{{blogpost.editor.emailAddress}}
{{blogpost.editor.accountId}}
{{blogpost.editor.timeZone}}
{{blogpost.labels}}
{{blogpost.dateFirstPublished}}
{{blogpost.dateLastUpdated}}
{{blogpost.status}}
{{blogpost.state}}
{{blogpost.aiSummary}}
{{blogpost.aiActionItems}}
{{blogpost.classificationLevel}}
{{content}} – Returns all available content properties
{{content.type}}
{{content.url}}
{{content.id}}
{{content.title}}
{{content.parent.id}}
{{content.parent.url}}
{{content.parent.title}}
{{content.author.fullName}}
{{content.author.publicName}}
{{content.author.emailAddress}}
{{content.author.accountId}}
{{content.author.timeZone}}
{{content.editor.fullName}}
{{content.editor.publicName}}
{{content.editor.emailAddress}}
{{content.editor.accountId}}
{{content.editor.timeZone}}
{{content.owner.fullName}}
{{content.owner.publicName}}
{{content.owner.emailAddress}}
{{content.owner.accountId}}
{{content.owner.timeZone}}
{{content.priorOwner.fullName}}
{{content.priorOwner.publicName}}
{{content.priorOwner.emailAddress}}
{{content.priorOwner.accountId}}
{{content.priorOwner.timeZone}}
{{content.labels}}
{{content.dateFirstPublished}}
{{content.dateLastUpdated}}
{{content.status}}
{{content.state}}
{{content.type}} – identifies the type of relevant content as either a “page” or a “blogpost”.
Example in an automated message: “Hey check out this {{content.type}}”
{{page.url}} – the URL link to a specific page
{{page.parent.url}} – the URL link to a page’s parent page
{{blogpost.url}} – the URL link to a specific blog post
{{content.url}} – the URL link to a piece of content, whether it’s a page or a blog post
{{page.id}} – the ID number that uniquely identifies a page
{{page.parent.id}} – the ID number that uniquely identifies a page’s parent page
{{blogpost.id}} – the ID number that uniquely identifies a blog post
{{content.id}} – the ID number that uniquely identifies a piece of content, whether it’s a page or a blog post
{{page.title}} – the published title of a page
{{page.parent.title}} – the published title of a page’s parent page
{{blogpost.title}} – the published title of a blog post
{{content.title}} – the published title of a piece of content, whether it’s a page or a blog post
{{cqlResult.title}} – the published title of a piece of content that is returned as part of a CQL query.
This is useful, for example, when configuring a For each CQL result (related entities) branch.
{{page.author.fullName}} – the first and last name of the person who originally published the page (the “Full name” in their Atlassian account profile)
{{page.author.publicName}} – the public name of the person who originally published the page (the name or handle they use in public Atlassian forums like Community)
{{blogpost.author.fullName}} – the first and last name of the person who originally published the blog post (the “Full name” in their Atlassian account profile)
{{blogpost.author.publicName}} – the public name of the person who originally published the blog post (the name or handle they use in public Atlassian forums like Community)
{{content.author.fullName}} – the first and last name of the person who originally published the content, whether it’s a page or a blog post (the “Full name” in their Atlassian account profile)
{{content.author.publicName}} – the public name of the person who originally published the content, whether it’s a page or a blog post (the name or handle they use in public Atlassian forums like Community)
{{page.author.emailAddress}} – the email address of the person who originally published the page
{{blogpost.author.emailAddress}} – the email address of the person who originally published the blog post
{{content.author.emailAddress}} – the email address of the person who originally published the content, whether it’s a page or a blog post
{{page.author.timeZone}} – the time zone of the person who originally published the page
{{blogpost.author.timeZone}} – the time zone of the person who originally published the blog post
{{content.author.timeZone}} – the time zone of the person who originally published the content, whether it’s a page or a blog post
{{page.author.accountId}} – the account ID number of the person who originally published the page
{{blogpost.author.accountId}} – the account ID number of the person who originally published the blog post
{{content.author.accountId}} – the account ID number of the person who originally published the content, whether it’s a page or a blog post
Returns the first Editor listed under Page information (see … More actions, Advanced details). This can be the same person as the author or just the most recent person to make a change.
{{page.editor.fullName}} – the first and last name of the person who published the most recent updates to the page (the “Full name” in their Atlassian account profile)
{{page.editor.publicName}} – the public name of the person who published the most recent updates to the page (the name or handle they use in public Atlassian forums like Community)
{{blogpost.editor.fullName}} – the first and last name of the person who published the most recent updates to the blog post (the “Full name” in their Atlassian account profile)
{{blogpost.editor.publicName}} – the public name of the person who published the most recent updates to the blog post (the name or handle they use in public Atlassian forums like Community)
{{content.editor.fullName}} – the first and last name of the person who published the most recent updates to the content, whether it’s a page or a blog post (the “Full name” in their Atlassian account profile)
{{content.editor.publicName}} – the public name of the person who published the most recent updates to the content, whether it’s a page or a blog post (the name or handle they use in public Atlassian forums like Community)
{{page.editor.emailAddress}} – the email address of the person who published the most recent updates to the page
{{blogpost.editor.emailAddress}} – the email address of the person who published the most recent updates to the blog post
{{content.editor.emailAddress}} – the email address of the person who published the most recent updates to the content, whether it’s a page or a blog post
{{page.editor.timeZone}} – the time zone the person who published the most recent updates to the page is in
{{blogpost.editor.timeZone}} – the time zone the person who published the most recent updates to the blog post is in
{{content.editor.timeZone}} – the time zone the person who published the most recent updates to the content is in, whether it’s a page or a blog post
{{page.editor.accountId}} – the account ID number of the person who published the most recent updates to the page
{{blogpost.editor.accountId}} – the account ID number of the person who published the most recent updates to the blog post
{{content.editor.accountId}} – the account ID number of the person who published the most recent updates to the content, whether it’s a page or a blog post
Date and time references default to Universal Coordinated Time (UTC). You can control the format and convert the timezone of date smart values by adding a format modifier.
{{page.dateFirstPublished}} – the date the page was originally published
{{page.dateLastUpdated}} – the date the page was most recently updated
{{blogpost.dateFirstPublished}} – the date the blog post was originally published
{{blogpost.dateLastUpdated}} – the date the blog post was most recently updated
{{content.dateFirstPublished}} – the date the content was originally published, whether it’s a page or a blog post
{{content.dateLastUpdated}} – the date the content most recently updated, whether it’s a page or a blog post
{{page.hasChildren}} – returns a boolean (true/false) indicating if a page has child content items.
{{inactivePages}} – a list of pages that haven’t been viewed in a given time. A page’s view history includes any time a comment is added or the page is updated.
Exception: Inactive parent pages are excluded. This is intended as a security measure.
Nested pages inherit view restrictions from their immediate parent, by default. So if a parent is removed without setting new view restrictions for the children — they could become viewable by an unintended audience.
{{page.labels}} – a list of URL links to all the labels on a page
See also: {{labels.url}}
{{blogpost.labels}} - a list of URL links to all the labels on a blog post
{{content.labels}} – a list of URL links to all the labels on a content item, whether it’s a page or a blog post
Suggested and/or Custom statuses must be turned on in order for the content status values to have something to return. Admins can control content statuses in Space settings.
{{page.state}} – the publication state of the page: either Draft, Current, Archived, or Deleted
{{page.status}} – the progress of a page, as indicated by the content status at the top (for example Rough draft, In progress, and Ready for review).
{{blogpost.state}} – the publication state of the page: either Draft, Current, Archived, or Deleted
{{blogpost.status}} – progress of a page, as indicated by the content status (for example Rough draft, In progress, and Ready for review).
{{content.status}} – the progress of a page or blog post, as indicated by the content status at the top (for example Rough draft, In progress, and Ready for review).
{{priorContentStatus}} – the previous status of the page or blog post
{{content.state}} – the publication state of the page or blog post: either Draft, Current, Archived, or Deleted
The owner of the page is the author, by default, but ownership can be transferred. Blog posts do not have “owners,” but any of the {{page.owner.property}} smart values can also be used with {{content.owner.property}} to return the same value.
{{page.owner.fullName}} – the first and last name of the person who owns the page (the “Full name” in their Atlassian account profile)
{{page.owner.publicName}} – the public name of the person who person who owns the page (the name or handle they use in public Atlassian forums like Community)
{{page.owner.emailAddress}} – the email address of the person who owns the page
{{page.owner.timeZone}} – the time zone of the person who owns the page
{{page.owner.accountId}} – the account ID number of the person who owns the page
The prior owner of the page is the previous owner of the page, if it has been transferred. If the page has never been transferred, this smart value will not return anything. Blog posts do not have “owners,” but any of the {{page.priorOwner.property}} smart values can also be used with {{content.priorOwner.property}} to return the same value.
{{page.priorOwner.fullName}} – the first and last name of the person who previously owned the page (the “Full name” in their Atlassian account profile)
{{page.priorOwner.publicName}} – the public name of the person who person who previously owned the page (the name or handle they use in public Atlassian forums like Community)
{{page.priorOwner.emailAddress}} – the email address of the person who previously owned the page
{{page.priorOwner.timeZone}} – the time zone of the person who previously owned the page
{{page.priorOwner.accountId}} – the account ID number of the person who previously owned the page
{{page.aiSummary}} - an AI generated summary of a page
{{page.aiActionItems}} - an AI generated list of action items of a page
{{blogpost.aiSummary}} - an AI generated summary of a blogpost
{{blogpost.aiActionItems}} - an AI generated list of action items of a blogpost
Data classification is a set of custom values that can be based on different taxonomies, such as data sensitivity, data type, or regulatory requirements.
{{page.classificationLevel}} - the classification level of a page
{{blogpost.classificationLevel}} – the classification level of a blog post
{{page.totalViewersCount}} – the total number of unique users who have viewed the page.
{{page.totalViewsCount}} – the total number of views the page has received.
{{comment}} – Returns all available comment properties
{{comment.url}}
{{comment.id}}
{{comment.body}}
{{comment.author.fullName}}
{{comment.author.publicName}}
{{comment.author.emailAddress}}
{{comment.author.timeZone}}
{{comment.author.accoundId}}
{{comment.dateAdded}}
{{comment.dateLastEdited}}
{{comment.author.accountId}}
{{comment.dateAdded}}
{{comment.dateLastEdited}}
{{comment.url}} – the URL link to a specific page or inline comment
{{comment.id}} – the ID number that uniquely identifies a page or inline comment
{{comment.body}} – the message body contained in the page or inline comment
{{comment.author.fullName}} – the first and last name of the person who wrote the comment (the “Full name” in their Atlassian account profile)
{{comment.author.publicName}} – the public name of the person who wrote the comment (the name or handle they use in public Atlassian forums like Community)
{{comment.author.emailAddress}} – the email address of the person who wrote the comment
{{comment.author.timeZone}} – the time zone of the person who wrote the comment
{{comment.author.accountId}} – the account ID number of the person who wrote the comment
Date and time references default to Universal Coordinated Time (UTC). You can control the format and convert the timezone of date smart values by adding a format modifier.
{{comment.dateAdded}} – the date the comment was added to the page
{{comment.dateLastEdited}} – the date the comment was most recently edited
{{task}} – returns all available task properties
{{task.id}}
{{task.contentId}}
{{task.body}}
{{task.creator.fullName}}
{{task.creator.publicName}}
{{task.creator.emailAddress}}
{{task.creator.timeZone}}
{{task.creator.accountId}}
{{task.assignee.fullName}}
{{task.assignee.publicName}}
{{task.assignee.emailAddress}}
{{task.assignee.timeZone}}
{{task.assignee.accountId}}
{{task.resolver.fullName}}
{{task.resolver.publicName}}
{{task.resolver.emailAddress}}
{{task.resolver.timeZone}}
{{task.resolver.accountId}}
{{task.dueDate}}
{{task.status}}
{{task.id}} – the ID number that uniquely identifies a particular task (action item)
{{task.contentId}} – the ID number that uniquely identifies the page a particular task is on
{{task.body}} – the message body of the task that contains the assignment, assignee, and due date
{{task.creator.fullName}} – the first and last name of the person who added the task to the page and assigned it to someone (the “Full name” in their Atlassian account profile)
{{task.creator.publicName}} – the public name of the person who added the task to the page and assigned it to someone (the name or handle they use in public Atlassian forums like Community)
{{task.assignee.fullName}} – the first and last name of the person who was assigned a task (@ mention)
{{task.assignee.publicName}} – the public name of the person who was assigned a task (@ mention) (the name or handle they use in public Atlassian forums like Community)
{{task.resolver.fullName}} – the first and last name of the person who marked a task complete (@ mention)
{{task.resolver.publicName}} – the public name of the person who marked a task complete (@ mention) (the name or handle they use in public Atlassian forums like Community)
{{task.creator.emailAddress}} – the email address of the person who added the task to the page and assigned it to someone
{{task.assignee.emailAddress}} – the email address of the person who was assigned a task (@ mention)
{{task.resolver.emailAddress}} – the email address of the person who marked a task complete (@ mention)
{{task.creator.timeZone}} – the time zone of the person who added the task to the page and assigned it to someone
{{task.assignee.timeZone}} – the time zone of the person who was assigned a task (@ mention)
{{task.resolver.timeZone}} – the time zone of the person who marked a task complete (@ mention)
{{task.creator.accountId}} – the account ID number of the person who added the task to the page and assigned it to someone
{{task.assignee.accountId}} – the account ID number of the person who was assigned a task (@ mention)
{{task.resolver.accountId}} – the account ID number of the person who marked a task complete (@ mention)
Date and time references default to Universal Coordinated Time (UTC). You can control the format and convert the timezone of date smart values by adding a format modifier.
{{task.dueDate}} – the task’s due date
{{task.dateAdded}} – the date an action item (whether or not it’s an assigned task) was added and published to the page or blog
{{task.dateLastEdited}} – the date the task was most recently edited
{{task.dateCompleted}} – the date an action item (whether or not it’s an assigned task) was completed
If a previously completed task is unchecked as incomplete, and is completed again later, this will return the date the task was most recently completed.
{{task.status}} – the progress of a task (either Complete or Incomplete)
{{attachment}}, {{attachment.title}} – The name of the attachment.
{{attachment.downloadLink}} – A web address to download the file.
{{attachment.mediaType}} – The file type of the attachment.
{{attachment.fileSize}} – The file size of the attachment.
{{content}} – The content the attachment was added to, either a page or a blogpost.
{{page}}, {{blogpost}} – The content the attachment was added to, specifying either a page or a blogpost.
{{space}} – The space the attachment is in.
{{user}} – Returns all available user properties
{{user.fullName}}
{{user.publicName}}
{{user.emailAddress}}
{{user.timeZone}}
{{user.accountId}}
{{user.fullName}} – the first and last name of the user (the “Full name” in their Atlassian account profile)
{{user.publicName}} – the public name of the user (the name or handle they use in public Atlassian forums like Community)
{{user.emailAddress}} – the email address of the user
{{user.timeZone}} – the time zone the user is in
{{user.accountId}} – the account ID number of the user
The initiator is the person who caused the automation rule to trigger.
{{initiator}} – returns all available initiator properties
{{initiator.fullName}}
{{initiator.publicName}}
{{initiator.emailAddress}}
{{initiator.timeZone}}
{{initiator.accountId}}
{{initiator.fullName}} – the first and last name of the person who caused the automation rule to trigger (the “Full name” in their Atlassian account profile)
{{initiator.publicName}} – the public name of the person who caused the automation rule to trigger (the name or handle they use in public Atlassian forums like Community)
{{initiator.emailAddress}} – the email address of the person who caused the automation rule to trigger
{{initiator.timeZone}} – the time zone of the person who caused the automation rule to trigger
{{initiator.accountId}} – the account ID number of the person who caused the automation rule to trigger
Changing the users in a group can return smart values that contain information about those users.
{{userAdded}} – Returns information about a user who was added to a group.
{{label}} – returns all available properties for a label
{{label.url}}
{{label.id}}
{{label.contentId}}
{{label.name}}
{{labels} – returns all available properties for all labels
{{labels.url}}
{{labels.id}}
{{labels.contentId}}
{{labels.name}}
{{label.url}} – the URL link to a specific label
{{labels.url}} – a list of URL links of all the labels that were added or removed
See also: {{page.labels}}
{{label.id}} – the ID number that uniquely identifies a particular label
{{labels.id}} – a list of ID numbers of all the labels that were added or removed
{{label.contentId}} – the ID number that uniquely identifies the page or blog a particular label is on
{{label.name}} – the name of the label
{{labels.name}} – a list of names of all the labels that were added or removed
Confluence automation rules report time in a default format and UTC time zone. For example, 1979-11-01T11:23:12.0+0000, which is Thursday, November 1, 1979 11:23:12 AM UTC.
Confluence supports time-based smart values such as {{now}}, and allows you to express all date and time values in different formats by appending format modifiers.
Was this helpful?