Navigation
Notifications
Configuring 8 notification channels: Email, Telegram, Slack, Discord, Teams, Matrix, webhooks
GitRiver supports 8 notification channels for repository events: push, pull requests, issues, CI/CD, releases, and more. Channels are configured at the repository level.
Supported Channels
| Channel | What You Need |
|---|---|
| Built-in | Nothing - works out of the box (bell icon in the interface) |
| SMTP server (configured in Configuration) | |
| Telegram | Bot token + chat ID |
| Slack | Webhook URL (Block Kit format) |
| Discord | Webhook URL (Embeds format) |
| Microsoft Teams | Webhook URL (Adaptive Cards format) |
| Matrix | Server URL + token + room ID |
| Webhooks | URL for receiving POST requests |
Configuring a Channel
Channels are configured separately for each repository.
1. Open Settings
Repository -> “Settings” (gear icon) -> find the notification channels section in the list.
2. Add a Channel
Click “Create channel” and select the type.
3. Fill in the Parameters
Parameters depend on the channel type:
Telegram:
- Bot token - obtain from @BotFather
- Chat ID - group or personal chat ID (a number)
Slack:
- Webhook URL - create an Incoming Webhook in your Slack workspace settings
Discord:
- Webhook URL - create one in Discord channel settings: Edit Channel -> Integrations -> Webhooks
Microsoft Teams:
- Webhook URL - create an Incoming Webhook in a Teams channel
Webhook (generic):
- URL - the address where GitRiver will send POST requests
- Requests are signed with HMAC-SHA256 (header
X-GitRiver-Signature-256)
4. Test
Click “Test” - GitRiver will send a test message to the channel.
Event Filtering
Not all events need to be sent to every channel. You can configure filters for each channel:
- By event type: push, pull request, issue, CI, release
- By branches: only
main, onlyrelease/* - By authors: only specific users
Configuration: when creating/editing a channel, see the “Events” section.
Email Settings for Users
Each user manages their own email notifications:
- Settings (avatar -> gear icon) -> Notifications
- Modes:
- All - all events in repositories where you are a member
- Mentions - only when you are @mentioned or assigned
- Quiet mode - no emails are sent
Message Templates
The administrator can customize email message templates:
Administration -> Email Templates
Available templates:
- Event notification (push, PR, issue)
- New user invitation
- Password reset
Webhooks (Detailed)
Webhooks are a universal way to integrate GitRiver with external systems. When an event occurs, GitRiver sends a POST request with a JSON body.
Configuration
- Repository -> “Settings” -> “Webhooks”
- Click “Add webhook”
- Specify the URL and secret (for signature verification)
- Select events
Signature Verification
GitRiver signs each request using HMAC-SHA256. The X-GitRiver-Signature-256 header contains the signature. Verify it on the receiving end to protect against forgery.
Delivery History
The webhook page shows the history of all deliveries: status, time, request body, and response. You can retry a failed delivery with the “Retry” button.
Retry Policy
On delivery failure (HTTP ≠ 2xx), GitRiver retries with increasing intervals: 1 sec, 5 sec, 30 sec, 2 min, 15 min.
System Webhooks
The administrator can create webhooks at the instance level (for all repositories):
Administration -> Webhooks