Segmentation
报告 API 中的所有方法都可以为每个单独的数据段以及整个网站返回结果。 要设置段,请使用filters参数。
您可以按维度和指标对请求进行分段。 在请求中不需要指定维度或指标。
维度过滤器应用于源(未分组)数据,而指标过滤器则应用于结果中的分组行。
在请求 URL 中设置过滤器时,使用 URL 编码。
过滤格式
attribute operator 'value'
where
属性:维度或指标。 例如,ym:ge:mobileDeviceModel或ym:ge:users.操作符: 过滤操作符。指定要应用的过滤类型。 For example,==.值:比较值。 在包含值的字符串中,字符'和\必须使用\进行转义。
此外,还存在以下限制:最多10个独特的维度和指标、20个单独的过滤器,以及过滤字符串最长2000个字符。
例如,要只获取莫斯科会话的数据,请使用此过滤器:
filters=ym:ge:regionCity=='Москва'
不同的维度可用的过滤操作符不同。
要在请求中组合过滤器,请使用二元运算符 AND、OR 和一元运算符 NOT:
&metrics=ym:ge:users&dimensions=ym:ge:age&filters=NOT(ym:ge:age!=18)
ym:ge:regionCity=='Москва' OR ym:ge:regionCity=='Санкт-Петербург'
您也可以使用括号设置优先级:
(ym:ge:regionCity=='Москва' OR ym:ge:regionCity=='Санкт-Петербург') AND ym:ge:gender=='мужской'
您可以组合维度过滤器和指标过滤器,但只能在最高级别(括号外)且只能使用 AND 运算符。
备注
请求语言(lang 参数)会影响过滤器的值。 我们建议始终指定此参数。
使用分段的示例
根据地区的用户数量
dimensions=ym:ge:mobileDeviceModel
metrics=ym:ge:users
filters=ym:ge:regionCityName=='Moscow'
cURL
HTTP
curl -X GET \
'https://api.boost.yandex.com/stat/v1/data?id=1111&metrics=ym:ge:users&dimensions=ym:ge:mobileDeviceModel&filters=ym:ge:regionCityName==%27Москва%27' \
-H 'Authorization: OAuth <your_token>'
其中 <your_token> 是 OAuth 令牌,您可以通过遵循 此指南 获取。
GET /stat/v1/data?id=1111&metrics=ym:ge:users&dimensions=ym:ge:mobileDeviceModel&filters=ym:ge:regionCityName=='Москва' HTTP/1.1
Host: api.boost.yandex.com
Authorization: OAuth <your_token>
其中 <your_token> 是 OAuth 令牌,您可以通过遵循 此指南 获取。
如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。