GitLab

Connect GitLab to Proval with a personal access token and project webhook.

Connect GitLab to Proval with a personal access token, the Proval dashboard forms, and a project webhook.

External network. If GitLab reaches Proval over the public internet, use https:// (reverse proxy in front of port 7901). Internal LAN http:// is fine for many self-hosted setups.

Prerequisites

Step 1: Personal access token

  1. PreferencesAccess Tokens
  2. Create a token with the api scope
GitLab personal access token with api scope

Step 2: Connect in Proval

GitLab connection

  1. Dashboard → Git ProviderAdd GitLab connection
  2. Fill in the form
  3. Test Connection, then save
Proval GitLab connection form

Repository

  1. RepositoriesAdd repository
  2. Fill in the form
  3. Create

Use the same webhook secret in Step 3.

Step 3: Project webhook

http://<your-server>:7901/webhook/gitlab

Use https:// when TLS terminates before Proval. LAN http:// may require allow internal webhooks.

  1. Project → SettingsWebhooks
  2. Fill in the form
  3. Enable:
    • Merge request events
    • Comments
    • Issues events
GitLab project webhook form with URL and secret

Allow internal HTTP webhooks

When GitLab and Proval are on a private LAN with plain http://:

  1. AdminSettingsNetworkOutbound requests
  2. Enable Allow requests to the local network from webhooks and integrations, or add Proval's IP to the allowlist
GitLab project webhook form with URL and secret

See GitLab: Filtering outbound requests.

Troubleshooting

  • 401 — secret does not match Proval
  • 404 — repository not registered in Proval
  • Blocked / local networkAllow internal webhooks
  • No review — GitLab cannot reach port 7901, or events not enabled
  • Test connection fails — invalid token, wrong base URL, or missing api scope