向所有认证公众号开发者开放数据接口。通过数据接口,开发者可以获取与公众平台官网统计模块类似但更灵活的数据,还可根据需要进行高级处理。

在公众号登录授权机制的权限集划分中,接口分析数据接口属于账号服务权限。

请注意:

  1. 接口侧的公众号数据的数据库中仅存储了2014年12月1日之后的数据,将查询不到在此之前的日期,即使有查到,也是不可信的脏数据;
  2. 请开发者在调用接口获取数据后,将数据保存在自身数据库中,即加快下次用户的访问速度,也降低了微信侧接口调用的不必要损耗。
  3. 为确保公众号数据已完成统计和处理,请于每天上午8点后查询公众号前一天的数据。

接口分析数据接口指的是用于获得公众平台官网数据统计模块中接口分析数据的接口,具体接口列表如无用户属性数据接口):

接口名称 最大时间跨度 接口调用地址(必须使用https)
获取接口分析数据(getinterfacesummary) 30 https://api.weixin.qq.com/datacube/getinterfacesummary?access_token=ACCESS_TOKEN
获取接口分析分时数据(getinterfacesummaryhour) 1 https://api.weixin.qq.com/datacube/getinterfacesummaryhour?access_token=ACCESS_TOKEN

最大时间跨度是指一次接口调用时最大可获取数据的时间范围,如最大时间跨度为7是指最多一次性获取7天的数据。access_token的实际值请通过“获取access_token”来获取。

接口调用请求说明

接口分析数据接口(包括接口列表中的所有接口)需要向相应接口调用地址POST以下示例数据包:

{ 
    "begin_date": "2014-12-07", 
    "end_date": "2014-12-07"
}

调用参数说明

参数 是否必须 说明
access_token 调用接口凭证
begin_date 获取数据的起始日期,begin_date和end_date的差值需小于“最大时间跨度”(比如最大时间跨度为1时,begin_date和end_date的差值只能为0,才能小于1),否则会报错
end_date 获取数据的结束日期,end_date允许设置的最大值为昨日

返回说明

正常情况下,获取接口分析数据接口的返回JSON数据包如下:

{ 
   "list": [ 
       { 
           "ref_date": "2014-12-07", 
           "callback_count": 36974, 
           "fail_count": 67, 
           "total_time_cost": 14994291, 
           "max_time_cost": 5044
       }//后续还有不同ref_date(在begin_date和end_date之间)的数据
   ]
}

正常情况下,获取接口分析分时数据接口的返回JSON数据包如下:

{ 
   "list": [ 
       { 
           "ref_date": "2014-12-01", 
           "ref_hour": 0, 
           "callback_count": 331, 
           "fail_count": 18, 
           "total_time_cost": 167870, 
           "max_time_cost": 5042
       }//后续还有不同ref_hour的数据
   ]
}

返回参数说明

参数 说明
ref_date 数据的日期
ref_hour 数据的小时
callback_count 通过服务器配置地址获得消息后,被动回复用户消息的次数
fail_count 上述动作的失败次数
total_time_cost 总耗时,除以callback_count即为平均耗时
max_time_cost 最大耗时

错误时微信会返回错误码等信息,具体错误码查询,请见:

错误码 错误信息
公共错误码 全局返回码说明
61500 日期格式错误
61501 日期范围错误
61503 该日期数据还未就绪