Setup
1
Create an HTTP endpoint integration in GitLab
You need at least the Maintainer role on the project.
- In your GitLab project, go to Settings → Monitor and expand the Alerts section
- Click Add new integration and select HTTP Endpoint as the integration type
- Name the integration and toggle Active on, then Save integration
- Open the View credentials tab and copy the URL and the Authorization Key
https://gitlab.com/{namespace}/{project}/prometheus/alerts/notify.json (or the equivalent path on a self-hosted instance).2
Create the alert channel in DevHelm
3
Test the channel
Configuration
Lifecycle behavior
GitLab uses a trigger-resolve lifecycle, keyed on a per-incident fingerprint (devhelm-<incident id>) so repeated events about the same incident map to the same GitLab alert:
If your project links the integration to incident creation, GitLab opens (and can auto-close) an incident alongside the alert.
Troubleshooting
Channel creation fails with an HTTPS error
Channel creation fails with an HTTPS error
The endpoint URL must start with
https://. Copy it exactly as shown in GitLab’s View credentials tab.GitLab returns 401 or 403
GitLab returns 401 or 403
The authorization key doesn’t match the integration. Re-copy it from Settings → Monitor → Alerts → (your integration) → View credentials, and make sure you paired it with the URL from the same integration.
Alerts aren't appearing in GitLab
Alerts aren't appearing in GitLab
- Confirm the integration’s Active toggle is on — a disabled integration rejects deliveries
- Use the integration’s Send test alert tab in GitLab to confirm the endpoint itself works, then run
devhelm alert-channels test <id> - On self-hosted GitLab, ensure the instance presents a valid SSL certificate, since DevHelm only posts over HTTPS