企業微信 使用api批量處理群消息
好的,我們來詳細講解如何為企業微信創建API接口,以便實現批量發送等高級功能。
創建企業微信API接入的核心是為你的企業創建一個“自建應用”,然后獲取這個應用的訪問憑證。整個過程可以分為以下幾個步驟:
第一步:在企業微信后臺創建自建應用
這個應用將作為你的程序和企業微信之間的“橋梁”。
-
登錄企業微信管理后臺:
-
用你的企業微信管理員賬號掃碼登錄。
-
進入“應用管理”:
-
在左側導航欄找到并點擊「應用管理」。
-
-
創建應用:
-
點擊頁面上的「創建應用」按鈕。
-
上傳一個應用Logo(可選),填寫應用名稱(例如:“批量消息推送機器人”),并選擇應用可見范圍(即哪些成員可以使用這個應用,通常選擇你自己或相關管理員即可)。
-
點擊「創建應用」。
-
-
獲取關鍵信息:
AgentId和Secret:-
創建成功后,你會進入應用詳情頁。請務必妥善保管此頁面的信息!
-
AgentId(也稱應用ID/Crop Id):頁面直接顯示。
-
Secret(應用密鑰):點擊“Secret”欄后的「查看」按鈕,復制并保存。這個密鑰只顯示一次,如果丟失需要重置。
-
第二步:獲取 Access Token
Access Token(訪問令牌)是調用企業微信所有API的“通行證”。幾乎所有API的調用都需要帶上它。
-
API接口:
GET https://qyapi.weixin.qq.com/cgi-bin/gettoken -
請求參數:
-
corpid: 你的企業ID。可以在管理后臺的「我的企業」->「企業信息」中找到。 -
corpsecret: 上一步獲取的應用Secret。
-
-
示例(使用命令行工具 curl):
curl -G "https://qyapi.weixin.qq.com/cgi-bin/gettoken" \ --data-urlencode "corpid=wwd08c8f123456789" \ --data-urlencode "corpsecret=z9L7eLw9qLK2o0b1C3m5T3v5b1A2r5i6a7S8e9C0d1" -
返回值(JSON格式):
{ "errcode": 0, "errmsg": "ok", "access_token": "accesstoken000001", "expires_in": 7200 }-
access_token: 就是你需要的令牌,有效期為7200秒(2小時)。 -
你需要在自己的程序中緩存這個token,并在它過期前重新獲取,不要每次調用API都去獲取一次。
-
第三步:調用發送消息的API
獲取到有效的
access_token 后,你就可以調用發送應用消息的API了。這個API可以向指定成員、部門或機器人所在的群聊發送消息。-
API接口:
POST https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN -
請求體(JSON):這是一個最基本的文本消息示例,發送給一個“群機器人”(實際上是通過應用向配置了該應用機器人的群聊發送)。
{ "touser" : "@all", "toparty" : "", "totag" : "", "msgtype" : "text", "agentid" : 1000002, // 你的應用AgentId "text" : { "content" : "你好,這是來自API的測試消息。" }, "safe": 0 }
關鍵點:如何發送到不同的群?
這里就是實現你需求的核心。你需要為每個群創建一個“群機器人”,這個機器人其實就是你剛創建的那個自建應用。
-
在群聊中開啟消息推送:
-
在企業微信手機端或電腦端,進入你想要發送消息的群聊。
-
點擊右上角的群菜單,找到「消息推送」->「新建推送」。
-
-
獲取群的 Webhook 地址(推薦且更簡單的方法):
-
添加推送成功后,在創建的推送應用的設置里,你可以看到一個 Webhook 地址。
-
這個地址長得像這樣:
https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693axxx6-7a5b-4c6e-8a5b-74f8c8b6f1f1 -
這個
key參數唯一對應了這個群。
-
-
使用 Webhook 發送消息(無需Access Token):
-
使用Webhook方式發送消息更簡單,因為它不需要獲取Access Token,每個群的Webhook地址就是它的唯一標識。
-
API接口:
POST WEBHOOK_URL -
請求體(JSON):
{ "msgtype": "text", "text": { "content": "這是發送到特定群的消息,每個群可以不同。", "mentioned_list": ["@all"] } }
-
最終實現流程總結
要實現“批量發送不同信息到不同群”,你的程序邏輯應該是這樣的:
-
準備一個數據源:比如一個Excel表格或數據庫,包含兩列:
-
webhook_url: 每個群對應的Webhook地址。 -
message_content: 每個群對應的個性化消息內容。
-
-
編寫程序腳本(可以用Python、Node.js、Java等):
-
讀取數據源。
-
循環遍歷每一行。
-
對于每一行,構建一個HTTP POST請求,URL是
webhook_url,消息體是包含對應message_content的JSON數據。 -
發送請求。
-
-
處理結果:檢查API的返回信息,確保發送成功。
示例:Python 偽代碼
import requests
import json
# 你的數據源,例如一個字典列表
groups_info = [
{
"webhook_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=group1_key",
"message": "這是發給群1的消息。"
},
{
"webhook_url": "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=group2_key",
"message": "這是另一個發給群2的獨特消息。"
}
]
for group in groups_info:
data = {
"msgtype": "text",
"text": {
"content": group["message"]
}
}
headers = {'Content-Type': 'application/json'}
response = requests.post(
url=group["webhook_url"],
headers=headers,
data=json.dumps(data)
)
# 打印結果,可根據errcode判斷是否成功(0為成功)
print(f"發送到群結果: {response.text}")
通過以上步驟,你就可以完整地創建API并實現批量發送不同信息到不同群的功能了。先從在管理后臺創建應用和獲取Webhook開始吧!

浙公網安備 33010602011771號