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 -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 令牌,您可以通过遵循 此指南 获取。

如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。

联系支持 建议改进文档
上一篇
下一篇