GitRiver GitRiver
RU
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

ChannelWhat You Need
Built-inNothing - works out of the box (bell icon in the interface)
EmailSMTP server (configured in Configuration)
TelegramBot token + chat ID
SlackWebhook URL (Block Kit format)
DiscordWebhook URL (Embeds format)
Microsoft TeamsWebhook URL (Adaptive Cards format)
MatrixServer URL + token + room ID
WebhooksURL 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, only release/*
  • 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:

  1. Settings (avatar -> gear icon) -> Notifications
  2. 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

  1. Repository -> “Settings” -> “Webhooks”
  2. Click “Add webhook”
  3. Specify the URL and secret (for signature verification)
  4. 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