RabbitMQ Events: Changes to Product Licenses
The article below will detail what can be seen in the product license-related events in your Content Catalyst RabbitMQ feed.
Product licenses added
license.product.changes.added
Sent when a product license, for an account or user, is added. The state of the new product license can be retrieved with a GET from ~/api/v1/licenses/{licenseId}.
Message Body
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The id of the license added"
}
}
}
Product license updated
license.product.changes.updated
Sent when a product license, for an account or user, is updated. Only the date of a license can be updated once it has been created. The state of the updated product license can be retrieved with a GET from ~/api/v1/licenses/{licenseId}.
No message is sent when a license expires or comes into effect due to its end or start date passing.
Message Body
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The id of the license updated"
}
}
}
Product licenses removed
license.product.changes.removed
Sent when a product license, for an account or user, is removed through the UI or API. When this happens, details of the license can be got by calling GET from ~/api/v1/licenses/{licenseId}.
🔔Note: Licenses can also be removed (but no license.product.changes.removed message sent) when:
- Changes to accounts
Message:account.changes.removedLicense properties: Must be tracked locally as they are no longer available through the API.
Licenses with an account name matching the account name in the message will have been deleted (user level licenses also specify account name and will match this condition)
Message:account.changes.productLicensesRemovedLicense properties: Must be tracked locally as they are no longer available through the API.
Licenses with an account name matching the account name in the message will have been deleted (user level licenses also specify account name and will match this condition) - Changes to users and user activity
Message:subscriber.changes.removedLicense properties: Can be found at ~/api/v1/licenses/{licenseId} but licenses must be tracked locally to retrieve the license Id.
Licenses with a username matching the user name in the message will have been deleted.
Message:subscriber.changes.productLicensesRemovedLicense properties: Must be tracked locally as they are no longer available through the API.
Licenses with a username matching the username in the message will have been deleted. - Product deleted
Message:product.changes.removedLicense properties: Must be tracked locally as they are no longer available through the API.
Licenses with a product code matching the product code in the message will have been deleted.
Message Body
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The id of the removed license"
}
}
}