Send Email Notification
Sends an email message to specified users and groups when specified events occur. For example, you might use this action to alert a certain group of administrators when an asset switches to a particular state.
- To use this action, CentraSite must have a connection to an SMTP email server.
- During an iteration of the policy, if the connection to a SMTP email server fails, this policy action returns a failure code. CentraSite writes the failure message to the policy log, however, performs the next action in the policy (if one exists).
Event Scope
- Pre-Create
- Post-Create
- Pre-Update
- Post-Update
- Pre-Delete
- Post-Delete
- Pre-State Change
- Post-State Change
- OnConsumerRegistration
- OnTrigger
Object Scope
This action can be enforced on any object type that the policy engine supports.
Input Parameters
| Users | (Array of Users).
Users who are to receive the email.
Note: You can specify the recipients of
the email using the
Users parameter, the
Groups parameter, or both.
|
| Groups | (Array of Groups).
Groups whose users are to receive the email.
Note:
CentraSite will only send the email to those users in the group
whose
CentraSite user account includes an email address.
|
| Subject | (String). The text that you want to appear in the email's subject line. This text can include substitution tokens to insert run-time data into the subject line. |
| Use Email Template | (Email Template).
Specifies the template that is to be used to generate the body of the email
message.
Note:
|
| Custom Message | (TextArea). The text
of the email message. This text can include substitution tokens to insert
run-time data into the message.
Note: If you use the
Custom
Message parameter to specify the body of the email message, you
cannot generate the body of the message using the
Use Email
Template parameter. (In other words, you specify the body of the
message using either the
Custom
Message
or the
Use Email
Template parameter.)
|
| Format | (String). Specifies whether the custom mail message is formatted as HTML or plain text. |
| Include owner in notification | (Boolean). When enabled, this parameter sends the email notification to the owner of the object on which the policy is acting in addition to the users specified by the Users and Groups parameters. |
For detailed information about using custom email notifications with the policy action, see Configuring Email Notifications.
Substitution Tokens
The following list describes substitution tokens that you can use to incorporate data from the run-time instance of a policy into the email. For example, you can use tokens to return information about the object on which the policy is acting, identify the user who triggered the policy, and indicate what type of event caused the policy to fire.
Be aware that some tokens are only meaningful for certain types of objects. User objects, for example, do not have a Description attribute, so the ${entity.description} token has no meaning for a User object. If you use a substitution token that is not supported by the policy's target object, CentraSite simply replaces the substitution token with a space at enforcement time.
If the target object includes the requested attribute, but the attribute itself has no value, CentraSite also replaces the substitution token with a space in the email message. If the requested attribute contains an array of values, CentraSite inserts the values into the email as a comma-separated list.
| This token... | Inserts the following information into the parameter value at execution time... |
|---|---|
${api.usage}
|
A usage description for the API access token. |
${entity.approver}
|
The name of the user
who approved or rejected the request.
Note: This token is only meaningful in
the email messages that are issued by the
Initiate Approval or
Initiate Group-dependent Approval
actions. If it is used in a context where there is no approver or an approval
request, the token is simply replaced with a space.
|
${entity.approvercomments}
|
A comment provided by
the approver when approving or rejecting the request.
Note: This token is only meaningful in
the email messages that are issued by the
Initiate Approval or
Initiate Group-dependent Approval
actions. If it is used in a context where there is no approval request, the
token is simply replaced with a space.
|
${entity.attribute.
attributeName} |
A value for the
attribute specified in
attributeName. You can use this
token with all of the attribute types, excluding the Classification, File, and
Relationship attribute types.
Important: Make sure you
specify the attribute's schema name and not its display name in
attributeName.
|
${entity.BUIAssetURL}
|
A deep link to the URL of the asset details page in CentraSite Business UI. |
${entity.BUIBaseURL}
|
A deep link to the URL of the CentraSite Business UI. |
${entity.description}
|
The object's
description.
Note: User objects do not have a
Description attribute.
|
${user.displayname}
|
The display name of the user who triggered the policy. |
${entity.key}
|
The object's key (that is, the UUID that uniquely identifies the object within the registry). |
${entity.name}
|
The object's name (in the user's locale). |
${entity.owner}
|
The name of the user who owns the object against which the policy is enforced. |
${entity.type}
|
The type of object against which the policy enforced. |
${entity.state}
|
The state of the object
against which the policy is enforced.
If the object is an Asset, Policy, or Lifecycle Model, this action inserts the object's current lifecycle state. For all the other object types, this token is ignored. |
${entity.URL}
|
The URL for the object on which the policy is enforced. (This is the URL that opens the object in CentraSite Control.) |
${entity.version}
|
The object's user-assigned version identifier. |
${event.type}
|
The type of event that triggered the policy. |
${from.state}
|
The state from which the object is being switched (if the policy is executing on a Pre-State Change or Post-State Change event). |
${target.state}
|
The state to which the object is being switched (if the policy is executing on a Pre-State Change or Post-State Change event). |
${user.locale}
|
The locale of the user who triggered the policy. |
${user.name}
|
The name of the user who triggered the policy. |
${user.organization}
|
The name of the organization to which the user who triggered the policy belongs. |
${policycontext.consumer.name}
|
The name of the consumer requesting access to the API. |
${policycontext.apikey}
|
The access token to grant access to the API. |
${request.date}
|
The date on which the API access token was requested. |
${apikey.expirationdate}
|
The date on which the API access token expires. |
${request.application.name}
|
The name of the consumer application requesting access to the API. |
${request.application.description}
|
A short description about the consumer application requesting access to the API. |
${request.reason}
|
A reason for requesting access to the API. |
${consumed.asset.name}
|
The name of the API that is being accessed by the consumer application. |
Example
User ${entity.owner} has added the following asset to the catalog:
Name: ${entity.name} Description: ${entity.description}