I have written a Custom Delegating Handler which add custom headers to the response & checks in the request .
I added the handles in WebAPi configuration
config.MessageHandlers.Add(new customHandler());
But the issue is applies to all the controllers. I need to apply custom header specific to a controllers. Is it possible to add custom handlers specific to a controller?
At the end of this article it explains how to apply handlers only to certain routes: http://www.asp.net/web-api/overview/working-with-http/http-message-handlers. You may have to create a unique handler for your controller for it to apply to that controller only.
Regarding how the pipeline of per-route message handlers would look like, you can look here.