Configure the Default Notification Templates

The default email HTML templates are common to all organizations handled by the CSA instance. CSA automatically looks for these templates in the csa.war/WEB-INF/classes/notifications directory to send out the notification emails. You can configure the notification templates, but the default template names and the location of the templates must remain the same as shown in Default HTML Templates.

The HTML email notification templates can be configured for the following types of notifications:

  • Subscription-based notifications: such as new services, cancel services, expired services, about to expire services and new services that failed during provisioning.

  • Approvals-related notifications: such as approvals required for new services, service modification, and cancellation of services. Approve or reject notifications can also be sent as HTML emails.

  • New service requests notifications: you can create email templates on a per-design basis.

See HTML Template Configuration/Troubleshooting Notes for configuration requirements and troubleshooting HTML email notification errors.

Default HTML Templates

CSA includes the following default notification templates in the <PERSISTENT_VOLUME_PATH>/sync/csa/jboss-as/csa.war/WEBINF/classes/notifications directory that are shipped with CSA. These templates are Apache Velocity templates. Each one can be configured using the appropriate notification tokens described in Notification Tokens

Caution Be sure to back up the original templates before you configure them.

  • Subscription-based notification templates:

    • ORDER.html — Used to send an email notification to the subscriber that the service request is now active.
    • CANCEL.html — Used to send an email to the subscriber that the subscription has been canceled.
    • EXPIRY.html — Used to send an email to the subscriber that the subscription has expired. The expiration date is specified in this template.
    • TO_EXPIRE.html — Used to send an email to the subscriber that the subscription is going to expire at the specified date in this template.
    • PAUSED_SUBSCRIBER.html — Used to send an email notification to the subscriber that the subscription has been paused during provisioning. For more information on this template, see Configure HTML Notification for Pause on Failure
    • PAUSED_OPERATOR.html — Used to send an email notification to the operator that the subscription has been paused during provisioning. For more information on this template, see Configure HTML Notification for Pause on Failure
    • FAIL.html — Used to send an email to the subscriber that a subscription failed and to contact the administrator. The reason for the failure is not configured in this email.
  • Approval notification templates:

    • APPROVAL_REQD.html — Used to send an email to one or more approvers that a subscriber submitted a service request. The service request can be a new service request, a request to modify an existing subscription, or a request to cancel an existing subscription.
    • APPROVE.html — Used to send an email to the subscriber that the subscription has been approved.
    • REJECT.html — Used to send an email to the subscriber that the subscription has been rejected.
  • Service design templates:

    • To create email templates that are specific to service designs, make a copy of ORDER.html and rename it so that the name of the file is in the following format <SERVICE DESIGN NAME>$ORDER.html. For example, if a service design is called "Simple vCenter Compute", the file should be renamed as Simple vCenter Compute$ORDER.html.

Using the Notification Templates

If CSA has to send out HTML email notifications, the email templates must be designed using pre-defined notification tokens. These tokens are described in Notification Tokens. It is not possible to add custom tokens as these custom tokens will not be recognized by CSA. There are three kinds of tokens:

  • Common tokens that can be used in any of the templates.
  • Approval tokens that can only be used with the approval templates.
  • Subscription tokens that can only be used with the subscription-based templates.

For token configuration requirements, and troubleshooting emails that do not display correctly (such as the token itself displays rather than the actual value, or the email displays as plain text instead of HTML output), see HTML Template Configuration/Troubleshooting Notes

When the templates are configured, CSA first looks for templates under the <PERSISTENT_VOLUME_PATH>/sync/csa/jboss-as/csa.war/WEBINF/classes/notifications/ORGANIZATION_ID folder where ORGANIZATION_ID is the Org Id of the Organization defined in CSA. The Organization Identifier can be retrieved from the General Information tab on the Organizations page in the Cloud Service Management Console.

For Subscription and Approval notifications, CSA looks for the email template that corresponds to the notification in the folder for the Organization, and then in the default location (<PERSISTENT_VOLUME_PATH>/sync/csa/jboss-as/csa.war/WEBINF/classes/notifications/) for each type of email notification.

For new service requests, CSA will first look for a design-specific template whose file name is of the form "<SERVICE DESIGN NAME>$ORDER.html" in the <PERSISTENT_VOLUME_PATH>/sync/csa/jboss-as/csa.war/WEBINF/classes/notifications/ORGANIZATION_ID folder. If this file is not found, it will then look for a file called ORDER.html in the same folder. The identified template file will be used for all new service requests made by this organization.

If these two files are not found, then CSA will look for ORDER.html at csa.war/WEB-INF/classes/notifications, which is the default template for all organizations served by the CSA instance. If this file is also not found, then CSA will send legacy text notifications.

Notification Tokens

There are three types of tokens that are used in the appropriate HTML notification template: common, approval, and subscription. Most of the tokens used by HTML notifications are common. The following sections describe these tokens.

Common Tokens

The following table lists the common tokens and their descriptions, which can be used in all the notification templates.

Token Description
Subscriber Tokens
subscriber.name The name of the subscriber, usually in the "FirstName LastName" format.
subscriber.userId The user ID used by the subscriber to log in to the CSA portals.
Organization Tokens
org.name The name of the organization, defined as the Display Name of the Organization.
org.portalTitle The title of the portal, defined as the title of the organization's Marketplace Portal.
org.csaUrl The CSA host name, protocol, and port, usually as "https://CSAHOST:CSAPORT".
org.csaHost The CSA host name and protocol, as "https://CSAHOST".
org.mppUrl The path to the Marketplace Portal, usually in the "/org/ORG_NAME" format.
org.legalNotice The link that points to the Organization's privacy agreement.
org.termsOfUse The link that points to the Organization's terms of use.
org.welcomeMessage The welcome message defined for the Marketplace Portal in the Organization.
org.footerMessage The copyright statement defined for the Marketplace Portal in the Organization.
Service Tokens
service.serviceId The subscription ID created by CSA for the new service request raised by the subscriber.
service.serviceName The name of the service as given by the subscriber.
service.serviceState The state of the service, such as in an ACTIVE state, PENDING_APPROVAL state, and so on.
service.startDate The date when the service will become available.
service.endDate The date when the service will become unavailable — CSA will automatically cancel the service. The text "Not set" will be shown for recurring subscriptions, that is, for subscriptions that do not have end dates. This text is coded using a Velocity macro at the top of each template. Change the text "Not set" in the macro, if required.
service.offeringName The name of the service offering used to create the service request.
service.initialPrice The initial price of the service.
service.recurringPrice The recurring price of the service.
service.recurrentPeriod The period for which the recurring pricing will apply for the service. The text will be displayed in English by default. To localize this text, create a Velocity macro similar to the one at the beginning of each template which was created to handle the text for the service end date.
service.currencySymbol The currency symbol used to define the initial and recurring pricing of the service.

Approval Tokens

The following tokens can only be used in these Approval templates described in Default HTML Templates: APPROVAL_REQD.html, APPROVE.html, and REJECT.html.

Token Description
approver.name The name of the user who is expected to approve or reject the service request.
approver.userId The user ID used by the approver to log in to the CSA portals.
approver.comment The reason given by an approver for rejecting a service request. Available only for REJECT notification templates.
approvalResult A Java List of all approvers who have responded with an APPROVE or a DENY to a service request. Internally contains "approver" objects stored as Java Map objects.

Subscription Tokens

The following token can only be used in ORDER.html. This token is not available for other Subscription-based email templates such as CANCEL.html, EXPIRY.html, TO_EXPIRE.html, and FAIL.html.

Token Description
componentDisplayName Every visible component has this additional property created for HTML notifications. It contains the display name of the component. For example, used as SERVER_GROUP.componentDisplayName.