On this page, you also have the option to configure installed plugins. This basically fires a locally installed program instead of calling a URL with parameters.
It requires you to place the plugin code in /opt/gitlab/embedded/service/gitlab-rails/plugins, and it has to be written in a certain way. After installation, the plugin can be run as a hook.