Deactivate and delete expired assets | Community
Skip to main content
Level 3
August 28, 2019
Solved

Deactivate and delete expired assets

  • August 28, 2019
  • 3 replies
  • 6084 views

Hi,

Is there a way to deactivate and delete the asset as soon as its expired i.e. the assets reaches the expiry date set for the asset?

Thanks,

Sagar

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by Himanshu_Singhal

Digital Rights Management in Assets

Have you tried setting up the "Adobe CQ DAM Expiry Notification".

As per official documentation, if the configuration is set, the scheduler runs a check and deactivate the expired assets. However, it doesn't delete the assets and I don't think it does delete OOTB. For that you'll have to write custom code.

https://www.katrinaprieto.com/projects/adobe-aem/

3 replies

Theo_Pendle
Level 8
August 28, 2019

Hi,

An expired asset is deactivated when is passes it's expiry date: "[...] ensures that the published asset is unpublished when it expires" (Digital Rights Management in Assets).

To delete the assets, you will have to create a workflow that finds all expired assets using a query, and deletes those nodes. Here is a query to find all assets expired at a given date (JCR SQL-2 does not have a DATE() function to get the current date, you will have to supply this date in Java):

SELECT asset.* FROM [dam:Asset] AS asset

INNER JOIN [dam:AssetContent] AS jcrContent ON ISCHILDNODE(jcrContent, asset)

INNER JOIN [nt:unstructured] as metadata ON ISCHILDNODE(metadata, jcrContent)

WHERE ISDESCENDANTNODE(asset, '/content/dam')

AND NAME(metadata) = 'metadata'

AND metadata.[prism:expirationDate] <= CAST('2019-08-28T23:59:59.999Z' AS DATE)

You can run this query now by going to CRXDE > Tools > Query, selecting SQL2, pasting the query in the text area and clicking execute:

Level 3
August 28, 2019

Thanks for the query.

But for me when asset is expired, the it doesn't deactivates. Any configuration that i am missing?

Thanks

Himanshu_Singhal
Community Advisor
Himanshu_SinghalCommunity AdvisorAccepted solution
Community Advisor
August 29, 2019

Digital Rights Management in Assets

Have you tried setting up the "Adobe CQ DAM Expiry Notification".

As per official documentation, if the configuration is set, the scheduler runs a check and deactivate the expired assets. However, it doesn't delete the assets and I don't think it does delete OOTB. For that you'll have to write custom code.

https://www.katrinaprieto.com/projects/adobe-aem/