Skip to content

feat: Add WeChat Work (WeCom) provider#5561

Open
zekebawt wants to merge 3 commits intokeephq:mainfrom
zekebawt:feat/wechat-provider
Open

feat: Add WeChat Work (WeCom) provider#5561
zekebawt wants to merge 3 commits intokeephq:mainfrom
zekebawt:feat/wechat-provider

Conversation

@zekebawt
Copy link

@zekebawt zekebawt commented Feb 4, 2026

Summary

This PR implements a new provider for WeChat Work (WeCom) - the enterprise version of WeChat popular in Asia.

Problem

Users in Asia, especially in the Greater China region, rely heavily on WeChat groups for receiving critical alerts. While Keep already supports Slack, Teams, and Discord, adding native support for WeChat would significantly lower the barrier to adoption for teams in this region.

Solution

Implemented a webhook-based provider for WeChat Work Group Bots, similar to how Discord and Slack providers work.

Features

  • Send text messages to WeChat Work group chats
  • Send markdown formatted messages for rich formatting
  • Support for @ALL to mention everyone
  • Support for mentioning specific users by userid
  • Support for mentioning users by mobile number

Usage

  1. Create a Group Bot in WeChat Work and get the webhook URL
  2. Configure the provider in Keep:
providers:
  wechat:
    type: wechat
    authentication:
      webhook_url: https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=YOUR_KEY
  1. Use in workflows:
actions:
  - name: notify-wechat
    provider:
      type: wechat
      config: "{{ providers.wechat }}"
      with:
        content: "🚨 Alert: {{ alert.name }}"
        mentioned_list: ["@all"]

References

Checklist

  • Provider code follows Keep patterns
  • Added comprehensive tests
  • Supports both text and markdown messages
  • Supports user mentions

- Add _get_incident_activities() to fetch work notes and comments
- Add _add_incident_activity() to push activities to ServiceNow
- Add sync_incident_activities() for bidirectional sync
- Implements keephq#3379
- Extend ServiceNow provider to support BaseIncidentProvider
- Add _get_incidents() and _format_incident() methods for incident sync
- Add _get_auth_and_headers() helper for cleaner API requests
- Implement bidirectional activity sync between ServiceNow and Keep
- Add PROVIDER_METHODS for workflow integration
- Map ServiceNow states/severity to Keep incident status/severity

Closes keephq#3379
Implements webhook-based provider for WeChat Work (WeCom) group bots.
This enables Keep users in Asia to send alerts to WeChat groups.

Features:
- Send text messages to WeChat Work group chats
- Send markdown formatted messages
- Support for @ALL and specific user mentions
- Support for mobile number mentions

Closes keephq#5443
@vercel
Copy link

vercel bot commented Feb 4, 2026

@zekebawt is attempting to deploy a commit to the KeepHQ Team on Vercel.

A member of the Team first needs to authorize it.

@dosubot dosubot bot added the size:XL This PR changes 500-999 lines, ignoring generated files. label Feb 4, 2026
@greptile-apps
Copy link
Contributor

greptile-apps bot commented Feb 4, 2026

Target branch is not in the allowed branches list.

@dosubot dosubot bot added the Provider Providers related issues label Feb 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Provider Providers related issues size:XL This PR changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[🔌 Provider]: WeChat Provider

1 participant