說明
模板消息僅用於公衆號向用戶發送重要的服務通知,只能用於符合其要求的服務場景中,如信用卡刷卡通知,商品購買成功通知等。不支持廣告等營銷類消息以及其它所有可能對用戶造成騷擾的消息。
使用規則
1、所有服務號都可以在功能->添加功能插件處看到申請模板消息功能的入口,但只有認證後的服務號纔可以申請模板消息的使用權限並獲得該權限;
2、需要選擇公衆賬號服務所處的2個行業,每月可更改1次所選行業;
3、在所選擇行業的模板庫中選用已有的模板進行調用;
4、每個賬號可以同時使用25個模板。
5、當前每個賬號的模板消息的日調用上限爲10萬次,單個模板沒有特殊限制。【2014年11月18日將接口調用頻率從默認的日1萬次提升爲日10萬次,可在MP登錄後的開發者中心查看】。當賬號粉絲數超過10W/100W/1000W時,模板消息的日調用上限會相應提升,以公衆號MP後臺開發者中心頁面中標明的數字爲準。
其他說明
1、模板消息調用時主要需要模板ID和模板中各參數的賦值內容;
2、模板中參數內容必須以”.DATA”結尾,否則視爲保留字;
3、模板保留符號”{{ }}”。
設置所屬行業
設置行業可在微信公衆平臺後臺完成,每月可修改行業1次,帳號僅可使用所屬行業中相關的模板,爲方便第三方開發者,提供通過接口調用的方式來修改賬號所屬行業
地址爲:
post-https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token=ACCESS_TOKEN
post數據示例:
{
"industry_id1":"1",
"industry_id2":"4"
}
參數 | 是否必須 | 說明 |
---|---|---|
industry_id1 | 是 | 公衆號模板消息所屬行業編號 |
industry_id2 | 是 | 公衆號模板消息所屬行業編號 |
行業代碼查詢
主行業 | 副行業 | 代碼 |
---|---|---|
IT科技 | 互聯網/電子商務 | 1 |
IT科技 | IT軟件與服務 | 2 |
IT科技 | IT硬件與設備 | 3 |
IT科技 | 電子技術 | 4 |
IT科技 | 通信與運營商 | 5 |
IT科技 | 網絡遊戲 | 6 |
金融業 | 銀行 | 7 |
金融業 | 基金理財信託 | 8 |
金融業 | 保險 | 9 |
餐飲 | 餐飲 | 10 |
酒店旅遊 | 酒店 | 11 |
酒店旅遊 | 旅遊 | 12 |
運輸與倉儲 | 快遞 | 13 |
運輸與倉儲 | 物流 | 14 |
運輸與倉儲 | 倉儲 | 15 |
教育 | 培訓 | 16 |
教育 | 院校 | 17 |
政府與公共事業 | 學術科研 | 18 |
政府與公共事業 | 交警 | 19 |
政府與公共事業 | 博物館 | 20 |
政府與公共事業 | 公共事業非盈利機構 | 21 |
醫藥護理 | 醫藥醫療 | 22 |
醫藥護理 | 護理美容 | 23 |
醫藥護理 | 保健與衛生 | 24 |
交通工具 | 汽車相關 | 25 |
交通工具 | 摩托車相關 | 26 |
交通工具 | 火車相關 | 27 |
交通工具 | 飛機相關 | 28 |
房地產 | 建築 | 29 |
房地產 | 物業 | 30 |
消費品 | 消費品 | 31 |
商業服務 | 法律 | 32 |
商業服務 | 會展 | 33 |
商業服務 | 中介服務 | 34 |
商業服務 | 認證 | 35 |
商業服務 | 審計 | 36 |
文體娛樂 | 傳媒 | 37 |
文體娛樂 | 體育 | 38 |
文體娛樂 | 娛樂休閒 | 39 |
印刷 | 印刷 | 40 |
其它 | 其它 | 41 |
獲取設置的行業信息
獲取帳號設置的行業信息。可登錄微信公衆平臺,在公衆號後臺中查看行業信息。爲方便第三方開發者,提供通過接口調用的方式來獲取帳號所設置的行業信息
地址爲:
get-https://api.weixin.qq.com/cgi-bin/template/get_industry?access_token=ACCESS_TOKEN
正常情況下微信後臺會返回(示例):
{
"primary_industry":{"first_class":"運輸與倉儲","second_class":"快遞"},
"secondary_industry":{"first_class":"IT科技","second_class":"互聯網|電子商務"}
}
參數 | 是否必填 | 說明 |
---|---|---|
access_token | 是 | 接口調用憑證 |
primary_industry | 是 | 帳號設置的主營行業 |
secondary_industry | 是 | 帳號設置的副營行業 |
獲得模板ID
從行業模板庫選擇模板到帳號後臺,獲得模板ID的過程可在微信公衆平臺後臺完成。爲方便第三方開發者,提供通過接口調用的方式來獲取模板ID
地址爲:
post-https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token=ACCESS_TOKEN
POST數據示例如下(template_id_short表示模板庫中模板的編號,有“TM**”和“OPENTMTM**”等形式):
{
"template_id_short":"TM00015"
}
正常情況下微信後臺會返回(示例):
{
"errcode":0,
"errmsg":"ok",
"template_id":"Doclyl5uP7Aciu-qZ7mJNPtWkbkYnWBWVja26EGbNyk"
}
獲取模板列表
獲取已添加至帳號下所有模板列表,可在微信公衆平臺後臺中查看模板列表信息。爲方便第三方開發者,提供通過接口調用的方式來獲取帳號下所有模板信息
地址爲:
get-https://api.weixin.qq.com/cgi-bin/template/get_all_private_template?access_token=ACCESS_TOKEN
正常情況下微信後臺會返回(示例):
{
"template_list": [{
"template_id": "iPk5sOIt5X_flOVKn5GrTFpncEYTojx6ddbt8WYoV5s",
"title": "領取獎金提醒",
"primary_industry": "IT科技",
"deputy_industry": "互聯網|電子商務",
"content": "{ {result.DATA} }\n\n領獎金額:{ {withdrawMoney.DATA} }\n領獎 時間:{ {withdrawTime.DATA} }\n銀行信息:{ {cardInfo.DATA} }\n到賬時間: { {arrivedTime.DATA} }\n{ {remark.DATA} }",
"example": "您已提交領獎申請\n\n領獎金額:xxxx元\n領獎時間:2013-10-10 12:22:22\n銀行信息:xx銀行(尾號xxxx)\n到賬時間:預計xxxxxxx\n\n預計將於xxxx到達您的銀行卡"
}]
}
參數 | 是否必填 | 說明 |
---|---|---|
access_token | 是 | 接口調用憑證 |
template_id | 是 | 模板ID |
title | 是 | 模板標題 |
primary_industry | 是 | 模板所屬行業的一級行業 |
deputy_industry | 是 | 模板所屬行業的二級行業 |
content | 是 | 模板內容 |
example | 是 | 模板示例 |
刪除模板
刪除模板可在微信公衆平臺後臺完成,爲方便第三方開發者,提供通過接口調用的方式來刪除某帳號下的模板
地址爲:
post-https://api.weixin.qq.com/cgi-bin/template/del_private_template?access_token=ACCESS_TOKEN
POST數據說明如下(template_id表示公衆帳號下模板消息ID):
{
"template_id" : "Dyvp3-Ff0cnail_CDSzk1fIc6-9lOkxsQE7exTJbwUE"
}
發送模板消息
地址爲:
post-https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
POST數據示例如下:
{
"touser":"OPENID",
"template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
"url":"http://weixin.qq.com/download",
"miniprogram":{
"appid":"xiaochengxuappid12345",
"pagepath":"index?foo=bar"
},
"data":{
"first": {
"value":"恭喜你購買成功!",
"color":"#173177"
},
"keynote1":{
"value":"巧克力",
"color":"#173177"
},
"keynote2": {
"value":"39.8元",
"color":"#173177"
},
"keynote3": {
"value":"2014年9月22日",
"color":"#173177"
},
"remark":{
"value":"歡迎再次購買!",
"color":"#173177"
}
}
}
參數 | 是否必填 | 說明 |
---|---|---|
touser | 是 | 接收者openid |
template_id | 是 | 模板ID |
url | 否 | 模板跳轉鏈接 |
miniprogram | 否 | 跳小程序所需數據,不需跳小程序可不用傳該數據 |
appid | 是 | 所需跳轉到的小程序appid(該小程序appid必須與發模板消息的公衆號是綁定關聯關係) |
pagepath | 是 | 所需跳轉到小程序的具體頁面路徑,支持帶參數,(示例index?foo=bar) |
data | 是 | 模板數據 |
color | 否 | 模板內容字體顏色,不填默認爲黑色 |
注:url和miniprogram都是非必填字段,若都不傳則模板無跳轉;若都傳,會優先跳轉至小程序。開發者可根據實際需要選擇其中一種跳轉方式即可。當用戶的微信客戶端版本不支持跳小程序時,將會跳轉至url。
在調用模板消息接口後,會返回JSON數據包。正常時的返回JSON數據包示例:
{
"errcode":0,
"errmsg":"ok",
"msgid":200228332
}
事件推送
在模版消息發送任務完成後,微信服務器會將是否送達成功作爲通知,發送到開發者中心中填寫的服務器配置地址中。
送達成功時,推送的XML如下:
<xml>
<ToUserName>< ![CDATA[gh_7f083739789a] ]></ToUserName>
<FromUserName>< ![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8] ]></FromUserName>
<CreateTime>1395658920</CreateTime>
<MsgType>< ![CDATA[event] ]></MsgType>
<Event>< ![CDATA[TEMPLATESENDJOBFINISH] ]></Event>
<MsgID>200163836</MsgID>
<Status>< ![CDATA[success] ]></Status>
</xml>
參數 | 說明 |
---|---|
ToUserName | 公衆號微信號 |
FromUserName | 接收模板消息的用戶的openid |
CreateTime | 創建時間 |
MsgType | 消息類型是事件 |
Event | 事件爲模板消息發送結束 |
MsgID | 消息id |
Status | 發送狀態爲成功 |
送達由於用戶拒收(用戶設置拒絕接收公衆號消息)而失敗時,推送的XML如下:
<xml>
<ToUserName>< ![CDATA[gh_7f083739789a] ]></ToUserName>
<FromUserName>< ![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8] ]></FromUserName>
<CreateTime>1395658984</CreateTime>
<MsgType>< ![CDATA[event] ]></MsgType>
<Event>< ![CDATA[TEMPLATESENDJOBFINISH] ]></Event>
<MsgID>200163840</MsgID>
<Status>< ![CDATA[failed:user block] ]></Status>
</xml>
參數 | 說明 |
---|---|
ToUserName | 公衆號微信號 |
FromUserName | 接收模板消息的用戶的openid |
CreateTime | 創建時間 |
MsgType | 消息類型是事件 |
Event | 事件爲模板消息發送結束 |
MsgID | 消息id |
Status | 發送狀態爲用戶拒絕接收 |
送達由於其他原因失敗時,推送的XML如下:
<xml>
<ToUserName>< ![CDATA[gh_7f083739789a] ]></ToUserName>
<FromUserName>< ![CDATA[oia2TjuEGTNoeX76QEjQNrcURxG8] ]></FromUserName>
<CreateTime>1395658984</CreateTime>
<MsgType>< ![CDATA[event] ]></MsgType>
<Event>< ![CDATA[TEMPLATESENDJOBFINISH] ]></Event>
<MsgID>200163840</MsgID>
<Status>< ![CDATA[failed: system failed] ]></Status>
</xml>
參數 | 說明 |
---|---|
ToUserName | 公衆號微信號 |
FromUserName | 接收模板消息的用戶的openid |
CreateTime | 創建時間 |
MsgType | 消息類型是事件 |
Event | 事件爲模板消息發送結束 |
MsgID | 消息id |
Status | 發送狀態爲發送失敗(非用戶拒絕) |