One problem I’ve run into is that the gitlab vhost configuration for mattermost does not handle SSL and non SSL. If your site is https://chat.yourdomain.com, anything served from http://chat.yourdomain.com will fall through to the default vhost (gitlab) and most likely give a 404. That may not be your problem, but it’s something to look out for.
Have you tried opening the hook address in your browser? Do you get a 404 there?