Is it possible to store Custom user defined data with a Watch e.g. storing user defined description? Another way would be to create a separate user defined index and associate it as part of watch to persist custom data.
Is this supported now or will be added in future?
Yes, see the "metadata" property in the request JSON when creating a new watch: https://www.elastic.co/guide/en/watcher/current/watch-anatomy.html#watch-definition-example