From an architectural perspective, the API endpoint for invoking a price-drop should be moved to ProductsService. This would allow us validating the desired productId and ensuring that the product actually exists (without calling a sibling service or building a HTTP monolith).
However, addressing this would result in removing the entire PriceWatcherService from the sample.
WIP