In my AEM web site there is a special folder called templates (/content/my-site/templates) which contains pages which are actually email templates. We have a different system called CNS (customer notification system) which use this pages as a template and compos the EMails with customer data. For better performance the template html is cached by CNS server. So when ever content manager change some templates I have to notify the CNS system to invalidate the cache. CNS system has a REST API for invalidating the cache. So I configured a Dispatcher Flush agent to call the CNS Rest API.
So far the things are working as fine except some unwanted invalidate calls. The problem is the agent get triggered for every paths. Is there any way to make this agent trigger only for the changes under a given path (/content/my-site/templates).
When you set up your Dispatcher flush agent, use the property "Agent User Id" and specify a user that will be reading the content and flushing it. You will need to create this new user and configure the user to only have read permission on the path(s) that you want this user to flush (e.g. /content/my-site/templates).
flush send a GET HTTP request with content path in its header. to make it path specific .. as explaind above post.
create a user whihc has access for the path (/content/my-site/templates) not for anything else, configure this user under agent ID. This will let the all other path fail while reading via dispatcher flush agent user. and only the relevent path will be invaladated.