消息分析數據接口
消息分析數據接口
微信公眾平臺于2015年1月6日啟動了數據接口的邀請內測。通過數據接口,開發(fā)者可以獲取與公眾平臺官網統(tǒng)計模塊類似但更靈活的數據,還可根據需要進行高級處理。
在公眾號登錄授權機制的權限集劃分中,消息分析數據接口屬于消息管理權限。
向所有公眾號開發(fā)者開放數據接口的時間將另行通知。
請注意:
1、接口側的公眾號數據的數據庫中僅存儲了2014年12月1日之后的數據,將查詢不到在此之前的日期,即使有查到,也是不可信的臟數據; 2、請開發(fā)者在調用接口獲取數據后,將數據保存在自身數據庫中,即加快下次用戶的訪問速度,也降低了微信側接口調用的不必要損耗。
消息分析數據接口指的是用于獲得公眾平臺官網數據統(tǒng)計模塊中消息分析數據的接口,具體接口列表如下(暫無消息關鍵詞數據接口):
接口名稱 | 最大時間跨度 | 接口調用地址(必須使用https) |
---|---|---|
獲取消息發(fā)送概況數據(getupstreammsg) | 7 | https://api.weixin.qq.com/datacube/getupstreammsg?access_token=ACCESS_TOKEN |
獲取消息分送分時數據(getupstreammsghour) | 1 | https://api.weixin.qq.com/datacube/getupstreammsghour?access_token=ACCESS_TOKEN |
獲取消息發(fā)送周數據(getupstreammsgweek) | 30 | https://api.weixin.qq.com/datacube/getupstreammsgweek?access_token=ACCESS_TOKEN |
獲取消息發(fā)送月數據(getupstreammsgmonth) | 30 | https://api.weixin.qq.com/datacube/getupstreammsgmonth?access_token=ACCESS_TOKEN |
獲取消息發(fā)送分布數據(getupstreammsgdist) | 15 | https://api.weixin.qq.com/datacube/getupstreammsgdist?access_token=ACCESS_TOKEN |
獲取消息發(fā)送分布周數據(getupstreammsgdistweek) | 30 | https://api.weixin.qq.com/datacube/getupstreammsgdistweek?access_token=ACCESS_TOKEN |
獲取消息發(fā)送分布月數據(getupstreammsgdistmonth) | 30 | https://api.weixin.qq.com/datacube/getupstreammsgdistmonth?access_token=ACCESS_TOKEN |
最大時間跨度是指一次接口調用時最大可獲取數據的時間范圍,如最大時間跨度為7是指最多一次性獲取7天的數據。access_token的實際值請通過“獲取access_token”來獲取。
關于周數據與月數據,請注意:每個月/周的周期數據的數據標注日期在當月/當周的第一天(當月1日或周一)。在某一月/周過后去調用接口,才能獲取到該周期的數據。比如,在12月1日以(11月1日-11月5日)作為(begin_date和end_date)調用獲取月數據接口,可以獲取到11月1日的月數據(即11月的月數據)。
接口調用請求說明
消息分析數據接口(包括接口列表中的所有接口)需要向相應接口調用地址POST以下示例數據包:
{ "begin_date": "2014-12-07", "end_date": "2014-12-08" }
調用參數說明
參數 | 是否必須 | 說明 |
---|---|---|
access_token | 是 | 調用接口憑證 |
begin_date | 是 | 獲取數據的起始日期,begin_date和end_date的差值需小于“最大時間跨度”(比如最大時間跨度為1時,begin_date和end_date的差值只能為0,才能小于1),否則會報錯 |
end_date | 是 | 獲取數據的結束日期,end_date允許設置的最大值為昨日 |
返回說明
獲取消息發(fā)送概況數據接口需要向相應接口調用地址POST以下數據包:
{ "list": [ { "ref_date": "2014-12-07", "msg_type": 1, "msg_user": 282, "msg_count": 817 } //后續(xù)還有同一ref_date的不同msg_type的數據,以及不同ref_date(在時間范圍內)的數據 ] }
獲取消息分送分時數據接口需要向相應接口調用地址POST以下數據包:
{ "list": [ { "ref_date": "2014-12-07", "ref_hour": 0, "msg_type": 1, "msg_user": 9, "msg_count": 10 } //后續(xù)還有同一ref_hour的不同msg_type的數據,以及不同ref_hour的數據,ref_date固定,因為最大時間跨度為1 ] }
獲取消息發(fā)送周數據接口的返回JSON數據包如下:
{ "list": [ { "ref_date": "2014-12-08", "msg_type": 1, "msg_user": 16, "msg_count": 27 } //后續(xù)還有同一ref_date下不同msg_type的數據,及不同ref_date的數據 ] }
獲取消息發(fā)送月數據接口的返回JSON數據包如下:
{ "list": [ { "ref_date": "2014-11-01", "msg_type": 1, "msg_user": 7989, "msg_count": 42206 } //后續(xù)還有同一ref_date下不同msg_type的數據,及不同ref_date的數據 ] }
獲取消息發(fā)送分布數據接口的返回JSON數據包如下:
{ "list": [ { "ref_date": "2014-12-07", "count_interval": 1, "msg_user": 246 } //后續(xù)還有同一ref_date下不同count_interval的數據,及不同ref_date的數據 ] }
獲取消息發(fā)送分布周數據接口的返回JSON數據包如下:
{ "list": [ { "ref_date": "2014-12-07", "count_interval": 1, "msg_user": 246 } //后續(xù)還有同一ref_date下不同count_interval的數據,及不同ref_date的數據 ] }
獲取消息發(fā)送分布月數據接口的返回JSON數據包如下:
{ "list": [ { "ref_date": "2014-12-07", "count_interval": 1, "msg_user": 246 } //后續(xù)還有同一ref_date下不同count_interval的數據,及不同ref_date的數據 ] }
返回參數說明
參數 | 說明 |
---|---|
ref_date | 數據的日期,需在begin_date和end_date之間 |
ref_hour | 數據的小時,包括從000到2300,分別代表的是[000,100)到[2300,2400),即每日的第1小時和最后1小時 |
msg_type | 消息類型,代表含義如下: 1代表文字 2代表圖片 3代表語音 4代表視頻 6代表第三方應用消息(鏈接消息) |
msg_user | 上行發(fā)送了(向公眾號發(fā)送了)消息的用戶數 |
msg_count | 上行發(fā)送了消息的消息總數 |
count_interval | 當日發(fā)送消息量分布的區(qū)間,0代表 “0”,1代表“1-5”,2代表“6-10”,3代表“10次以上” |
int_page_read_count | 圖文頁的閱讀次數 |
ori_page_read_user | 原文頁(點擊圖文頁“閱讀原文”進入的頁面)的閱讀人數,無原文頁時此處數據為0 |
錯誤時微信會返回錯誤碼等信息,具體錯誤碼查詢,請見:全局返回碼說明