Webhooks & APIIntegrations

GitLab

Trigger Wexio flows from GitLab merge requests and pipeline events

GitLab sends a plaintext pre-shared token in the X-Gitlab-Token header (not an HMAC signature). That maps to Wexio's SHARED_SECRET mode — with a caveat on the header name.

Wexio's SHARED_SECRET mode reads the x-webhook-secret header specifically. GitLab sends its token as X-Gitlab-Token. Use n8n or Make as a lightweight proxy to rename the header, or host a small proxy of your own.

Provider docs: Setting up webhooks in GitLab

Setup (via n8n proxy)

1. Wexio connection

New connection → Inbound. Keep SHARED_SECRET mode. Copy the URL and signing secret.

2. n8n proxy

  • Webhook node listening on a public n8n URL.
  • Function node that renames X-Gitlab-Tokenx-webhook-secret and validates against your GitLab token.
  • HTTP Request node → Wexio endpoint with x-webhook-secret: <wexio-secret> header.

3. Point GitLab at the n8n URL

In GitLab project → Settings → Webhooks. Paste the n8n URL, set the Secret token to whatever your n8n function expects.

4. Contact resolution, schema, flow

Same as any inbound — map identifier + path on the Wexio connection, capture the schema, bind a flow.

When Wexio adds native GitLab support

If GitLab compatibility lands as a first-class auth mode, you'll be able to skip the proxy. For now the n8n/Make bridge is the simplest path.

Troubleshooting

SymptomFix
401 from WexioThe proxy didn't add x-webhook-secret — check the n8n Function node
401 from proxyGitLab's token doesn't match what your proxy expects

On this page