"change-state"
The trigger action action (change-state) state (string) ❗️ State to move into ❗️ indicates a mandatory parameter - the If adding the JSON trigger using workflow builder there is no need to include the opening The destination state must be included for the "change-state"
causes a change of the state to the specified state if the provided parameters are valid."state"
parameter and its value for the destination state must be added for the trigger action"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "change-state",
"state": "Review"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."change-state"
action.
"publish-page"
Publishes a single page to a different space using Comala Publishing for Cloud app. action (publish-page) This trigger action is only available when Comala Publishing Cloud is installed and the current space has been enabled as a draft space for publishing to a target space. If adding the JSON trigger using workflow builder there is no need to include the opening On the state change event the o The Comala Publishing breadcrumb is updated on the draft page header. o The publishing breadcrumb on the target space page will also be updated. The target space for publishing the page is configured in the Comala Publishing space settings. Publishing may also occur based on the configuration of the Comala Publishing app."triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "publish-page"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder.publish-page
action macro will publish the content to the target space.
"approve"
The trigger action " action (approve) approval (string) Name of the Approval to be approved. If not specified, default approval† will be used user (string) Atlassian ❗️ no mandatory parameter - only the approve action is required. † If no approval is specified in the trigger action, the default approval is the approval in the state named in the trigger event condition. If there are multiple approvals in the state, the default approval is the first approval listed in the JSON markup. If adding the JSON trigger using workflow builder there is no need to include the opening The Atlassian user Identification Number ( oapprove"
causes an approved decision to occur for a named approval if the provided parameters are valid.userID
of the approver"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "approve",
"approval": "Sign-off",
"user":"5d52a37ef0f22a0da2d6f070"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder.userId
) is visible in the URL when viewing the User Profile.
"reject"
The trigger action action (reject) approval (string) Name of the approval to be rejected. If not specified, default approval† will be used user (string) Atlassian ❗️ no mandatory parameter - only the † If no approval is specified in the trigger action, the default approval is the approval in the state named in the trigger event condition. If there are multiple approvals in the state, the default approval is the first approval listed in the JSON markup. If adding the JSON trigger using workflow builder there is no need to include the opening The Atlassian user Identification Number ( o"reject"
causes a rejected decision to occur for a named approval if the provided parameters are valid.userID
of the rejector"reject"
action is required. If a named "approval"
is not specified, the action uses the default approval in the workflow."triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "reject",
"approval": "Sign-off",
"user":"5d52a37ef0f22a0da2d6f070"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder.userId
) is visible in the URL when viewing the User Profile.
"assign"
and "unassign"
"assign"
"unassign"
The trigger action action (assign) approval (string) Name of the Approval to assign comment (string) Comment for the assignation operation assigner (string) Atlassian user (string) ❗️ Atlassian group (string) Atlassian ❗️ Mandatory parameters the assignee † If no approval is specified in the trigger action, the default approval is the approval in the state named in the trigger event condition. If adding the JSON trigger using workflow builder there is no need to include the opening To assign members of a Confluence group as reviewers instead of a single user you can use the The At least one assignee must be specified - either a user or a group or one of each The Atlassian user Identification Number (userId) is visible in the URL when viewing the User Profile. o You can only assign one user and/or one group in a single The trigger action "assign"
will assign a user to a named approval.
If not specified, default approval† will be useduserID
from the assigneruserID
for the assigneegroupID
or groupName
for assignees"user"
parameter value must be specified with at least one user unless you instead specify at least one group using the "group"
parameter
† If there are multiple approvals in the state, the default approval is the first approval listed in the JSON markup for the state."triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "assign",
"approval": "Triagereview",
"user": "5d52a37ef0f22a0da2d6f070"
"group": "qa_reviewers"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."group"
parameter, for example "group":"qa_reviewers"
where "qa_reviewers"
is a Confluence group name. "group"
parameter can use both the groupID
and the Confluence groupName
."assign"
action. You cannot add multiple values for the "user"
or "group"
."unassign"
will remove a user or members of a Confluence group from a named approval.
"set-expiration"
" action (set-expiration) dueDate (string) ❗️ Due date in format ISO 8601 ❗️ indicates a mandatory parameter - a If adding the JSON trigger using workflow builder there is no need to include the opening The An existing expiration period can be removed using the set-expiration
" will set an expiry period for a state."dueDate"
parameter value must be specified"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "set-expiration",
"dueDate": "P6M"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."dueDate"
period is set using ISO 8601 format. For example "P6M3W5D"
will be 6 months, 3 weeks and 5 days from the date of transition into the state. This will override any existing expiration periods."clear-expiration"
action.
"clear-expiration"
An existing expiration period can be removed using action (clear-expiration ) If adding the JSON trigger using workflow builder there is no need to include the opening A new expiration date can be added using the "clear-expiration"
."triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "clear-expiration"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."set-expiration"
trigger action.
"set-message"
The trigger action It can be set as info, warning or error and can be set to auto-close after a specified period or require a read confirmation. action (set-message) type (enum) ❗️ Indicator of the level of the message info warning error title (string) For adding a title to the message body (string) ❗️ For adding content for the body of the message tags (enum). is used as a tag for the message to record the current state when the action occurred. state mode (enum) Message mode. By default, ❗️ indicates a mandatory parameter - the set-message If adding the JSON trigger using workflow builder there is no need to include the opening The above o If the o If the o All messages can be removed using the Custom email notifications can be sent using the "set-message"
creates a message notification and can include a message title and a body."ack"
, a user will have to acknowledge it, while with "autoClose"
, it'll disappear after 10s.ack
autoClose
"type"
parameter value and the "body"
parameter value are required"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"state":"Expired"}
],
"actions":
[
{"action": "set-message",
"type": "info",
"title": "Stale content",
"body": "Content may be out of date",
"tags": "state",
"mode": "autoClose"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder.trigger
listens for a state change event to the Expired state and will display an on-screen message notification on the change of state."set-messsage"
action parameter is "type":"warning"
the displayed notification is"set-messsage"
action parameter is "type":"error"
the displayed notification is"clean-messages"
trigger action."send-email"
trigger action.
"clean-messages"
To remove all messages on the content simply add the action (clean-messages) If adding the JSON trigger using workflow builder there is no need to include the opening A message can be set using the "clean-messages"
action"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "clean-messages"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."set-message"
trigger action.
"remove-restrictions"
The trigger action action (remove-restrictions) contentId (string) The content id of the page to remove page-level restrictions (if missing, the current page id will be used) A useful instance would be to use this trigger action to remove all view and edit restrictions from the final state in a workflow. If adding the JSON trigger using workflow builder there is no need to include the opening Space admins can configure a space workflow in the space tools Document Management dashboard to remove all page level restrictions on transition to the workflow final state. Only 'Confluence Cloud Standard, Premium and Enterprise Plans' enable Atlassian Confluence users to edit permissions, including global, space, and page permissions."remove-restrictions"
will remove content view and edit restrictions for all users/groups."triggers":
[
{"event": "on-change-state",
"conditions":
[
{"final":true}
],
"actions":
[
{"action": "remove-restrictions"}
]}
]
"triggers":
JSON markup notation, since it will be added by workflow builder.
"send-email"
The trigger action action (send-email) recipients (array) ❗️Recipients to send the email to (at least one recipient value must be added). one or more one or more one or more one or more one or more One or more of the following notification (object) ❗️ Notification holder. ❗️Mandatory parameters at least one value for "recipients" must be specified the "notification" holder must include at least one of "subject", "title", or "body" † Each Confluence user must be specified individually using ‡ & ‡‡ Each Confluence group must be specified individually using If adding the JSON trigger using workflow builder there is no need to include the opening On-screen notification messages can be created using the Workflow trigger-generated email 'failure to send' errors are included in the Confluence log."send-email"
sends a custom email to one or more specified recipients.
A comma separated list of one or more recipients is added using:Email
addressesuser objects
by specifying the Atlassian userID
s†group objects
by specifying Atlassian groupID
s‡ or the Atlassian groupName
s‡‡user type parameters
(see workflow parameter references)group type parameters
(see workflow parameter references)value references
can also be added as a value for the "send-email" action "recipients"@watchers
@lastUpdatedBy
@creator
@watchers
refers to the watchers set at a document level, not including the watchers of the space.
You must include at least an email "subject"
and "body"
as a comma-separated list within curly brackets. The "title"
is optional.
You can embed any of the following as part of the notification text: ${content.title}
| ${content.link}
| ${content.space}
) as values in any of the following parameters"subject"
"title"
"body"
{"user":"userID"}
. Add multiple Confluence users in a comma-separated list {"user":"userID_One"},{"user":"userID_Two"}, ...
{"group":"groupID"}
and/or {"group":"groupName"}
. Add multiple Confluence groups in a comma-separated list {"group":"groupID_One"},{"group":"groupID_Two"},{"group":"groupName_Users1"},{"group":"groupName_Users2"}, ...
"triggers":
[
{"event": "on-change-state",
"conditions":
[
{"state": "Review"}
],
"actions":
[
{"action": "send-email",
"recipients":
[
"@creator",
"@watchers",
"@lastUpdatedBy",
"@user_type_parameter_1@",
"@user_type_parameter_2@",
"@group_type_parameter_1@",
"@group_type_parameter_2@",
"email_1@email.com",
"email_2@email.com",
{"user": "user_ID_1"},
{"user": "user_ID_2"},
{"group": "group_ID_1"},
{"group": "group_ID_2"},
{"group": "group_Name_1"},
{"group": "group_Name_2"}
],
"notification":
{"subject": "${content.title} is In Review State",
"title": "${content.title} is In Review State",
"body": "Hello, ${content.link} in the ${content.space} space is in review state."
}
}
]
}
]
"triggers":
JSON markup notation, since it will be added by workflow builder."set-message"
trigger action.
Related Pages