範本訊息介面



1474854871571022.jpg


#範本訊息介面

範本訊息僅用於公眾號向使用者發送重要的服務通知,只能用於符合其要求的服務場景中,如信用卡刷卡通知,商品購買成功通知等。不支援廣告等行銷類訊息以及其它所有可能對用戶造成騷擾的訊息。

關於使用規則,請注意:

1、所有服务号都可以在功能->添加功能插件处看到申请模板消息功能的入口,但只有认证后的服务号才可以申请模板消息的使用权限并获得该权限;
2、需要选择公众账号服务所处的2个行业,每月可更改1次所选行业;
3、在所选择行业的模板库中选用已有的模板进行调用;
4、每个账号可以同时使用25个模板。
5、当前每个账号的模板消息的日调用上限为10万次,单个模板没有特殊限制。【2014年11月18日将接口调用频率从默认的日1万次提升为日10万次,可在MP登录后的开发者中心查看】。当账号粉丝数超过10W/100W/1000W时,模板消息的日调用上限会相应提升,以公众号MP后台开发者中心页面中标明的数字为准。

關於介面文檔,請注意:

1、模板消息调用时主要需要模板ID和模板中各参数的赋值内容;
2、模板中参数内容必须以".DATA"结尾,否则视为保留字;
3、模板保留符号"{{ }}"。


##設定所屬產業

#設定產業可在MP中完成,每月可修改產業1次,帳號僅可使用所屬產業中相關的模板,為方便第三方開發者,提供透過介面呼叫的方式來修改帳號所屬產業,具體如下:#

介面呼叫請求說明

http请求方式: POST
https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token=ACCESS_TOKEN

POST資料說明

POST資料範例如下:

      {
          "industry_id1":"1",
          "industry_id2":"4"
       }

參數說明

參數是否必須說明
access_token介面呼叫憑證

industry_id1

公眾號範本訊息所屬產業編號
#industry_id2公眾號範本訊息所屬行業編號
#

業界程式碼查詢

###IT科技網路遊戲6金融業#銀行##運輸與倉儲快遞13 運輸與倉儲物流14運輸與倉儲倉儲15教育######政府與公共事業##### #學術科學研究######18############ 政府與公共事業######交警######19#########醫藥護理護理美容23#醫療照護#保健與健康#24交通工具汽車相關#25#交通工具摩托車相關26交通工具火車相關27交通工具飛機相關28房地產#29####################29######### ###房地產######物業######30#######
主行業副行業
IT科技互聯網/電子商務1
IT科技IT軟體與服務2
#IT科技IT硬體與裝置3
#IT科技電子技術# 4
IT科技通訊與營運商#5
##7
金融業基金|理財|信託8
金融業保險 9
餐飲餐飲10
飯店旅遊飯店11
飯店旅遊旅遊12
#14
##訓練 16
教育院校17
政府與公共事業博物館20
#政府與公共事業公共事業|非獲利機構21
#醫師護理#醫療醫療#22
消費品消費品31
#商業服務32
商業服務會展33
商業服務中介服務34
商業服務認證#35
商業服務審計36
文體娛樂#37
文體娛樂體育38
#風格娛樂1休閒#39
印刷印刷40
#其它其它 41
#

取得設定的行業資訊

取得帳號設置的行業資訊。可在MP官網中查看行業信息,為方便第三方開發者,提供通過接口調用的方式來獲取帳號所設置的行業信息,具體如下:

接口調用請求說明

http请求方式:GET
https://api.weixin.qq.com/cgi-bin/template/get_industry?access_token=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的過程可在MP中完成。為方便第三方開發者,提供透過介面呼叫的方式取得範本ID,具體如下:

介面呼叫請求說明

http请求方式: POST
https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token=ACCESS_TOKEN

POST資料說明

POST資料範例如下:

      {
           "template_id_short":"TM00015"
       }

參數說明

參數是否必須說明
access_token介面呼叫憑證
template_id_short#是範本庫中範本的編號,有「TM**」和「OPENTMTM* *”等形式
#

回傳碼說明

在呼叫範本訊息介面後,會傳回JSON封包。正常時的回傳JSON封包範例:

    {
           "errcode":0,
           "errmsg":"ok",
           "template_id":"Doclyl5uP7Aciu-qZ7mJNPtWkbkYnWBWVja26EGbNyk"
       }

取得範本清單

獲取已添加至帳號下所有模板列表,可在MP中查看模板列表信息,為方便第三方開發者,提供通過接口調用的方式來獲取帳號下所有模板信息,具體如下:

介面呼叫請求說明

http请求方式:GET
https://api.weixin.qq.com/cgi-bin/template/get_all_private_template?access_token=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到达您的银行卡"
   }]
}

傳回參數說明

##content是範本內容example是範本範例#

刪除範本

刪除範本可在MP中完成,為方便第三方開發者,提供透過介面呼叫的方式來刪除某帳號下的模板,具體如下:

介面呼叫請求說明

http请求方式:POST
https://api.weixin.qq.com/cgi-bin/template/del_private_template?access_token=ACCESS_TOKEN

POST資料說明如下:

 {
     "template_id" : "Dyvp3-Ff0cnail_CDSzk1fIc6-9lOkxsQE7exTJbwUE"
 }

參數說明

#
參數是否必填說明
access_token介面呼叫憑證
template_id範本ID
title模板標題
primary_industry模板所屬產業的一級產業
deputy_industry範本所屬產業的二級產業
參數是否必須說明
access_token介面呼叫憑證
template_id公眾帳號下範本訊息ID

傳回說明

在呼叫介面後,會傳回JSON封包。正常時的回傳JSON封包範例:

{
   "errcode" : 0,
   "errmsg" : "ok"
}

傳送範本訊息

介面呼叫請求說明

http请求方式: POST
https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN

POST資料說明

POST資料範例如下:

      {
           "touser":"OPENID",
           "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
           "url":"http://weixin.qq.com/download",            
           "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"
                   }
           }
       }

參數說明

##url否模板跳轉連結data#範本資料
參數是否必填說明
touser#是接收者openid
template_id範本ID
###### ######


回傳碼說明

在呼叫範本訊息介面後,會傳回JSON封包。正常時的回傳JSON封包範例:

    {
           "errcode":0,
           "errmsg":"ok",
           "msgid":200228332
       }

事件推送

在模版訊息發送任務完成後,微信伺服器會將是否送達成功作為通知,發送到開發者中心中填寫的伺服器設定位址。

1、送達成功時,推送的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>

參數說明

## MsgID訊息idStatus#傳送狀態為成功

2、送達因使用者拒收(使用者設定拒絕接收公眾號訊息)而失敗時,推送的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#事件為範本訊息發送結束
#訊息類型是事件#事件為範本訊息發送結束
參數說明
ToUserName#公眾號微訊號
FromUserName#接收範本訊息的使用者的openid
CreateTime#建立時間
MsgType
MsgType
Event
######MsgID######訊息id ############Status######傳送狀態為使用者拒絕接收############

3、送達因其他原因失敗時,推送的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接收範本訊息的使用者的openidCreateTime建立時間#MsgType訊息類型是事件Event事件為範本訊息發送結束MsgID訊息idStatus傳送狀態為傳送失敗(非使用者拒絕)