受众规则

受众规则确定是否将特定用户添加到您的自定义受众当中。这些规则应用于来源网址或特定事件和数据。

请采用 JSON 编码字符串的形式并按如下结构提供规则:

受众规则可用于不同的自定义受众类型,包括网站自定义受众移动应用自定义受众线下自定义受众。如需了解互动受众规则,请参阅互动自定义受众

限制

  • 对于每个受众,受众规则中最多可指定 10 条规则,其中包括 inclusionsexclusions 中的 rules 数量。
  • 每条规则最多可指定 100 个筛选条件(称为叶节点)。

受众规则语法

如要定义受众规则,必须采用以下结构:

rule: {
   "inclusions": <RULE_SET>,
   "exclusions": <RULE_SET>,
}

可用字段

名称 描述

inclusions

类型:字符串

必要。

规则集 JSON 字符串,用于定义包含规则。请参阅规则集语法

exclusions

类型:字符串

必要。

规则集 JSON 字符串,用于定义排除规则。请参阅规则集语法

规则集语法

每个规则集都应采用以下结构:

{
  "operator" : <BOOLEAN_OPERATOR>,
  "rules" : <JSON_RULE>,
}

可用字段

名称 描述

operator

类型:字符串

必要。

andor

rules

类型:字符串

必要。

规则的 JSON 字符串(规则数组)。请参阅包含规则和排除规则语法

包含规则和排除规则语法

每条包含规则或排除规则都应采用以下结构:

{
  "event_sources" : <EVENT_SOURCE_DEFINITION>, 
  "retention_seconds" : <SECONDS>,
  "filter" : <FILTER>,
  "aggregation" : <AGGREGATION>, 
}

aggregationretention_seconds 是可编辑字段。但是,编辑 aggregationretention_seconds 不会清除受众。如果用户仅与旧规则或聚合匹配,这些用户会继续存在于受众中,直到他们到期为止。

可用字段

名称 描述

event_sources

类型:字符串

必要。

JSON 对象,包含 idtype


可以使用逗号分隔清单 "store_visits,pixel,app",在 type 中添加更多事件源。

retention_seconds

类型:整数

必要。

整数(以秒为单位),表示受众留存时间窗,应少于 retention_days。最小值为 1 秒;最大值为 365 天

filter

类型:字符串

必要。

筛选规则的 JSON 字符串。请参阅筛选条件

aggregation

类型:整数

可选。

聚合函数的 JSON 字符串。请参阅聚合函数

筛选条件

筛选条件采用以下通用格式:

"filter" : {
  "operator": <BOOLEAN_OPERATOR>,
  "filters": <FILTER_SET>,
  }

可用字段

名称 描述

operator

类型:字符串

必要。

andor

filters

类型:字符串

必要。

由筛选规则的 JSON 对象组成的数组。请参阅筛选规则语法

筛选条件集语法

{
    "field": <FIELD>,
    "operator": <COMPARISON_OPERATOR>,
    "value": <VALUE>,
}

可用字段

名称 描述

field

类型:字符串

必要。


  • 对于网站自定义受众,如果筛选条件用于指定某个事件,请使用 'event'。与 Pixel 像素代码所发送事件匹配的参数(例如 'ViewContent''Purchase')。
  • 对于移动应用自定义受众,如果筛选条件用于指定某个事件,请使用 'event'。与应用所发送应用事件匹配的参数(例如“_appVersion”“_value”等)。

operator

类型:字符串

必要。

  • =
  • !=
  • >=
  • >
  • <=
  • <
  • i_contains
  • i_not_contains
  • contains
  • not_contains
  • is_any
  • is_not_any
  • i_is_any
  • i_is_not_any
  • i_starts_with
  • starts_with
  • "regex_match"[INFO]

如果 field 设为 event,则必须使用 =

value

类型:字符串

必要。

如果 field 属性设为 "event",则 value 必须设为事件的名称。使用应用事件 API 可查看由应用报告的应用事件和参数。

聚合函数

在受众规则字段中使用 aggregation,根据行为的频率和强度创建自定义受众。这样您便可以定义一个聚合函数,例如:

"aggregation" : {
  "type":"count",
  "operator":">",
  "value":1
}

可用字段

名称 描述

type

类型:字符串

必要。

聚合函数的类型。

  • 对于网站自定义受众,可使用以下函数:'count''sum''avg''min''max''time_spent''last_event_time_field'
  • 对于移动应用自定义受众,可使用以下函数:"count""sum""avg""min""max"

config

对于特定类型的聚合函数是必要项。

method

类型:字符串

可选。

设为 "absolute",表示添加记录指定范围内事件的用户;或设为 "percentile",表示添加指定百分位范围内的用户。如果您选择 percentile,则 operator 应仅为 in_rangenot_in_range

field

类型:字符串

除非 type 是 count,否则是必要项。

聚合函数应用的对象参数。

operator

类型:字符串

必要。

=!=>=><=<in_rangenot_in_range

value

类型:字符串

必要。

参数的预期值。

例如:

"aggregation" : {
  "type":"count",
  "operator":">",
  "value":1
}

比较运算符

运算符 描述

>gt

如果事件的参数值大于指定值,会返回 true。

>=gte

如果事件的参数值大于或等于指定值,会返回 true。

<lt

如果事件的参数值小于指定值,会返回 true。

<=lte

如果事件的参数值小于或等于指定值,会返回 true。

=eq

如果事件的参数值等于指定值,会返回 true。注意:这相当于不指定任何运算符;即,“'x' : { 'eq' : 'y' }”与“'x' : 'y' }”相同。

!=neq

如果事件的参数值不等于指定值,会返回 true。

contains

如果事件的参数值(字符串形式)包含指定字符串,会返回 true。如果指定值为“shoe”,则值“shoe12345”符合“contains”条件。

not_contains

如果事件的参数值(字符串形式)不包含指定字符串,会返回 true。如果指定值为“purse”,则值“shoe12345”符合“not_contains”条件。

i_contains

包含指定字符串,不区分大小写。

i_not_contains

不包含指定字符串,不区分大小写。

is_any

如果事件的参数值与指定数组中的任何字符串匹配,会返回 true。

is_not_any

如果事件的参数值与指定数组中的任何字符串均不匹配,会返回 true。

i_is_any

与“is_any”作用相同,但不区分大小写。

i_is_not_any

与“is_not_any”作用相同,但不区分大小写。

starts_with

如果事件的参数值以指定字符串开头,会返回 true。

i_starts_with

与“starts_with”作用相同,但不区分大小写。

regex_match

匹配正则表达式,例如 \"example\.com.*purchase$\"。支持完整的 PCRE 语法。

示例

网站自定义受众

如要匹配过去 30 天内包含字符串“shoes”的所有来源网址,请使用以下规则:

{
    "inclusions": {
        "operator": "or",
        "rules": [
            {
                "event_sources": [
                    {
                        "type": "pixel",
                        "id": "<PIXEL_ID>",
                    }
                ],
                "retention_seconds": 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "url",
                            "operator": "i_contains",
                            "value": "shoes"
                        }
                    ]
                },
            }
        ]
    }
}

如要匹配过去 30 天内,商品价格大于或等于 100 美元的 ViewContent 事件,请考虑将此规则用于下列事件:

_fbq.push([ 'track', 'ViewContent', { productId: 1234, category: 'Men > Shoes', price: 199 } ]);
{
    "inclusions": {
        "operator": "or",
        "rules": [
            {
                "event_sources": [
                    {
                        "type": "pixel",
                        "id": "<PIXEL_ID>"
                    }
                ],
                "retention_seconds": 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "eq",
                            "value": "ViewContent"
                        },
                        {
                            "operator": "or",
                            "filters": [
                                {
                                    "field": "price",
                                    "operator": ">=",
                                    "value": "100"
                                }
                            ]
                        }
                    ]
                }
            }
        ]
    }
}

移动应用自定义受众

请参阅移动应用自定义受众 > 自定义受众规则示例

运算符和数据(或事件)

规则包含以下运算符和数据(或事件):

运算符 筛选条件类型

i_contains

包含子字符串,不区分大小写

i_not_contains

不包含子字符串,不区分大小写

contains

包含子字符串,区分大小写

not_contains

不包含子字符串,区分大小写

eq

等于子字符串,区分大小写

neq

不等于子字符串,区分大小写

lt

小于子字符串,仅限数字字段

lte

小于或等于子字符串,仅限数字字段

gt

大于子字符串,仅限数字字段

gte

大于或等于子字符串,仅限数字字段

regex_match

匹配正则表达式,例如 \"example\\.com.*purchase$\"。支持完整的 PCRE 语法

数据 要筛选的数据

url

所访问站点的完全转义网址

domain

所访问站点的网域

path

所访问站点的路径,不包含网域

event

Pixel 像素代码 event 的名称,例如 'ViewContent'

device_type

访问站点时所用的设备:

desktop

mobile_android_phone

mobile_android_tablet

mobile_ipad

mobile_ipod

mobile_iphone

mobile_tablet

mobile_windows_phone

任何 customData 字段

针对 Pixel 像素代码触发而添加到 customData 中的任何字段,如 productIdcategoryprice

请以 JSON 编码字符串的形式提供每条规则。