You can enable notifications at the creation of new API versions in order to notify existing subscribers (via email) that a new version of the API is available. If you want to send a different type of notification, you can extend the org.wso2.carbon.apimgt.impl.notification.Notifier
abstract class on your own accordingly.
Follow the instructions below to enable notifications for new API versions:
- Set the email server configurations in the
repository/conf/output-event-adapters.xml
file under the<adapterConfig type="email">
section. - Log in to the Management Console and click Main > Resource > Browse.
- Browse to the
/_system/config/apimgt/applicationdata/
tenant-conf.json
file and click Edit as Text. Set the
NotificationsEnabled
property to true as shown below:"NotificationsEnabled":"true", "Notifications":[{ "Type":"new_api_version", "Notifiers" :[{ "Class":"org.wso2.carbon.apimgt.impl.notification.NewAPIVersionEmailNotifier", "ClaimsRetrieverImplClass":"org.wso2.carbon.apimgt.impl.token.DefaultClaimsRetriever", "Title": "Version $2 of $1 Released", "Template": " <html> <body> <h3 style=\"color:Black;\">We’re happy to announce the arrival of the next major version $2 of $1 API which is now available in Our API Store.</h3><a href=\"https://localhost:9443/store\">Click here to Visit WSO2 API Store</a></body></html>" }] } ]
A notification type can have multiple notifier classes that help send multiple notifications. Each notifier has a class attribute containing the full class path. The following properties should be set for the default
NewAPIVersionEmailNotifier
class:Property Description Class The full class path of the notifier class. ClaimsRetrieverImplClass Subscriber email addresses are extracted from user claims. The default pack uses the org.wso2.carbon.apimgt.impl.token.DefaultClaimsRetriever
class to read the claim values from the user store.Title The subject of the email. Template The template of the email body. This can be string values or a valid registry path to a template file. The following strings are replaced with API specific values in the
Title
andTemplate
properties.$1 - API name
$2 - New API version
$3 - API provider email
$4 - API version of the original API