您可以使用我们的市场营销 API,根据客户信息构建目标自定义受众。这些信息包括邮箱、手机号、姓名、出生日期、性别、地点、应用用户编号、公共主页范围用户编号、Apple 的广告 ID (IDFA) 或 Android 广告 ID。
Meta 业务账户(有时被称为“商务管理平台账户”,或简称“业务账户”)将更名为业务资产组合。这项变更将在 Meta 技术中逐步实施。此变更仅为名称上的变化,不会影响 Meta 业务账户编号(将更名为“业务资产组合编号”)。
作为公司数据的所有者,您需要负责创建和管理这些数据。这些数据包括来自客户关系管理 (CRM) 系统的信息。如要创建受众,则您必须以哈希格式共享数据,以保护隐私。请参阅对数据作哈希和标准化处理。Meta 会比较相关数据与经过哈希处理的数据,以决定我们是否应将 Facebook 上的用户加入您的广告受众。
您可向受众中添加数量不限的记录,但每次最多只可加入 10,000 个。对自定义受众的更改不会立即生效,通常需要多达 24 小时。您请求移除的记录的数量和/或您帐户内包含的自定义受众的数量都将增加处理此请求所需的时间。
为改进广告主创建和管理受众的方式,我们会标记在 2 年以上的时间里未在任何投放中的广告组中使用的客户文件自定义受众,以陆续删除。您需要在我们采取措施前提供指示说明。如果受众已移至“过期受众”阶段并被标记,您将需要提供指示说明。如果您在投放中的广告组中使用标记受众,我们会将其视作保留受众的指示;如果您决定不在投放中的广告组中使用标记受众,我们会将其视作删除受众的指示。如需了解更多信息,请查看自定义受众概述文件。
如果您使用转化 API 分享转化事件,则无需上传其他数据,便可创建网站自定义受众。不过,您也可以继续上传支持的客户信息,以创建客户文件自定义受众。
在您的 API 调用中指定 subtype=CUSTOM
和 customer_file_source
。
curl -X POST \
-F 'name="My new Custom Audience"' \
-F 'subtype="CUSTOM"' \
-F 'description="People who purchased on my website"' \
-F 'customer_file_source="USER_PROVIDED_ONLY"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/customaudiences
名称 | 描述 |
---|---|
| 说明自定义受众中客户信息的最初收集方式。
|
| 自定义受众的名称 |
| 自定义受众的描述 |
| 自定义受众的类型 |
通过向 /{audience_id}/users
端点发出 POST
API 调用,指定想添加至自定义受众的用户名单。
名称 | 描述 |
---|---|
| 必要 示例 { "session_id":9778993, "batch_seq":10, "last_batch_flag":true, "estimated_num_total":99996 } |
| 必要 示例 { "schema":"EMAIL_SHA256", "data": [ ["<HASHED_DATA>"], ["<HASHED_DATA>"], ["<HASHED_DATA>"] ] } |
自 2023 年 6 月 1 日起,如果您想在客户名单自定义受众中为加利福尼亚州用户启用“限制数据使用”功能,则必须上传新受众或更新现有受众,以在受众中加入“限制数据使用”标签。请视需要,定期更新和维护您的受众和用户的“限制数据使用”功能状态。
请注意,应用于某个受众中特定用户的“限制数据使用”标记不会自动转移到其他的受众。正如广告主必须根据自己选择的标准单独管理每个现有客户名单自定义受众,他们必须将“限制数据使用”标记单独应用于他们在广告中使用的每个受众。
如要为记录明确不启用 LDU
,您可以发送空的 data_processing_options
数组,或将该字段从负载中移除。空数组示例:
{ "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS" ], "data": [ [ "<HASHED_DATA> ", [] ] ] } }
如要明确启用 LDU
并让 Meta 执行地理定位(不提供特定记录的国家/地区和州/省/自治区/直辖市的数据),请指定一个数组,该数组中每项记录都包含 LDU
:
{ "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS" ], "data": [ [ "<HASHED_DATA> ", ["LDU"] ] ] } }
如要启用 LDU 并手动指定位置,请使用以下代码:
{ "customer_consent": true, "payload": { "schema": [ "EMAIL", "DATA_PROCESSING_OPTIONS", "DATA_PROCESSING_OPTIONS_COUNTRY", "DATA_PROCESSING_OPTIONS_STATE" ], "data": [ [ "<HASHED_DATA>", ["LDU"], 1, 1000 ] ] } }
session
字段名称 | 描述 |
---|---|
| 必要 |
| 必要 |
| 必要 向我们的系统表明,已为当前替换会话提供所有批次数据。若设为 |
| 非必要 |
成功响应包含具有以下字段的 JSON 对象:
名称 | 描述 |
---|---|
| 受众识别码 |
| 您传入的会话编号 |
| 此会话目前为止收到的用户总数 |
| 表示哈希处理有误的已发送条目数量。这些条目未返回匹配项,并且无法添加到自定义受众中。此数字并不精确,但可以表示不匹配用户的数量范围。 |
| 当前请求中发现的无效条目样例(最多 100 个) |
详细了解与业务对象分享您的自定义受众。
如需指定想从自定义受众中移除的用户名单,请向 /{audience_id}/users
端点发出 DELETE
API 调用。
curl -X DELETE \ --data-urlencode 'payload={ "schema": "EMAIL_SHA256", "data": [ "<HASHED_DATA>", "<HASHED_DATA>", "<HASHED_DATA>" ] }' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
您也可以添加 method
参数,并在用于添加受众成员的 POST
请求中将该参数设为 DELETE
。
您可以从名单中移除具有 EXTERN_ID
(如适用)的用户。
curl -X DELETE \ --data-urlencode 'payload={ "schema": "EXTERN_ID", "data": [ "<ID>", "<ID>", "<ID>" ] }' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
您可以使用此端点从广告账户的所有自定义受众中移除一系列用户。
由于某些原因,此类信息可能无法得到处理。例如,如果某个广告账户不归某个业务资产组合所有,您尚未接受自定义受众条款,或此类信息与用户不匹配。
如需移除账户中心账户,请加入与 用户更新内字段相同的字段,并对以下内容发出 HTTP DELETE
调用:
https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/usersofanyaudience
如需提高记录的匹配率,请在不同键组成的数组中提供多个键,例如 [EXTERN_ID
, LN
, FN
, EMAIL
]。您虽然无需对 EXTERN_ID
作哈希处理,但必须对所有个人身份识别信息(例如邮箱和姓名)作哈希处理。如需了解相关详情,请参阅对数据作哈希和标准化处理。
您可为一个记录提供部分或所有多键。如需了解相关详情,请参阅多键外部编号匹配。
curl \ -F 'payload={ "schema": [ "FN", "LN", "EMAIL" ], "data": [ [ "<HASH>", "<HASH>", "<HASH>" ], [ "<HASH>", "<HASH>", "<HASH>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
PAGEUID
如果您使用 PAGEUID
键,则还必须添加公共主页编号清单。您只能向我们发送一个 PAGEUID
,此编号应为包含一个元素的数组。
curl -X POST \ -F 'payload={ "schema": [ "PAGEUID" ], "is_raw": "true", "page_ids": [ "<PAGE_IDs>" ], "data": [ [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ], [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ], [ "<HASH>", "<ID>", "<ID>", "<VALUE>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
您必须使用 SHA256
对数据进行哈希处理;我们不支持其他哈希机制。除外部标识符、应用用户编号、公共主页范围内的用户编号和移动广告客户编号以外,对所有其他数据均必须执行此操作。
请先将数据标准化,然后再对其作哈希处理,以便我们处理数据。只有名字 (FN
) 和姓氏 (LN
) 支持特殊字符和非罗马字母。如要获得最佳匹配结果,请提供不含任何特殊字符的罗马字母翻译。
键 | 守则 |
---|---|
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行散列处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 |
| 必须进行散列处理 |
| 必须进行哈希处理 |
| 必须进行哈希处理 按 ISO 3166-1 alpha-2 标准使用小写的双字母国家/地区代码。 |
| 无须进行哈希处理 全部使用小写字母,保留连字符。 |
请为标准化的键提供 SHA256
值,并提供该值的 HEX
表示(使用小写 A 至 F)。PHP 的哈希功能将转换标准化的邮箱和手机号。
示例 | 结果 |
---|---|
| f1904cf1a9d73a55fa5de0ac823c4403ded71afd4c3248d00bdcd0866552bb79 |
| 1ef970831d7963307784fa8688e8fce101a15685d62aa765fed23f3a2c576a4e |
您可使用自己的标识符(即外部标识符或 EXTERN_ID
)为受众匹配用户。此标识符可以是广告主提供的任何唯一编号,如会员编号、用户编号和外部 Cookie 编号。
您虽然无需对此编号作哈希处理,但必须对使用 EXTERN_ID
发送的所有个人身份识别信息 (PII) 作哈希处理。
为更好地进行匹配,您还应在发送编号时使用完全相同的格式。例如,如果您选择使用 SHA256 对数据进行哈希处理,请确保以后继续使用相同的哈希值。
您可以将这些编号用作各个键,以将用户从自定义受众中删除,或新建自定义受众。如此一来,您就无需重新上传任何其他匹配键。如果您使用经过哈希处理的个人信息和 EXTERN_ID
标记某位用户,则当我们将该用户与 Facebook 上的用户进行匹配时,我们会给予 EXTERN_ID
较低的优先级。
系统对 EXTERN_ID
的数据留存期限为 90 天。
在单个广告账户内,您可以重复使用 EXTERN_ID
映射构建自定义文件自定义受众。
如果您广告帐户的受众已有 EXTERN_ID
字段,请仅使用以下身份识别信息新建受众。
curl \ -F 'payload={"schema":"EXTERN_ID","data":["<ID>","<ID>"]}' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
您也可添加具有 EXTERN_ID
标记和启用多键匹配的用户。
curl \ -F 'payload={ "schema": [ "EXTERN_ID", "FN", "EMAIL", "LN" ], "data": [ [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ], [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ], [ "<ID>", "<HASH>", "<HASH>", "<HASH>" ] ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<CUSTOM_AUDIENCE_ID>/users
我们支持适用于单个广告账户的 EXTERN_ID
参数。我们不可将一个广告账户的值用于任何其他广告账户,即使广告账户均属于同一个实体也是如此。
借助 /<CUSTOM_AUDIENCE_ID>/usersreplace
端点,您可以使用一个 API 调用执行以下 2 个操作:
通过 /<CUSTOM_AUDIENCE_ID>/usersreplace
端点,您可以自动删除所有现有用户,而不必上传想要删除的用户名单。如果受众是投放中广告组的一部分,此端点不会重置您广告组的机器学习阶段,这与 /<CUSTOM_AUDIENCE_ID>/users
端点的 POST 或 DELETE API 调用不同。
替换用户 API 仅适用于符合以下要求的受众:
/<CUSTOM_AUDIENCE_ID>/users
端点添加和移除用户。CUSTOM
。开始替换流程之前,建议您完成以下步骤:
operation_status
是 Normal
。 您一次只能执行一项替换操作。
此外,通过 /<CUSTOM_AUDIENCE_ID>/usersreplace
执行替换操作时,切勿通过 /<CUSTOM_AUDIENCE_ID>/users
添加或移除用户。如果您在第一个替换操作完成之前尝试执行第二个替换操作,您将收到一条消息,表明替换操作已经在进行中。
1 个替换会话的最长持续时间为 90 分钟。API 将拒绝会话开始 90 分钟后收到的任何批次。如果您发送批次的时长需要超过 90 分钟,请等待该会话的替换操作完成后,使用 /<CUSTOM_AUDIENCE>/users
端点的添加操作上传其余部分。
受众创建完成后,请向 /<CUSTOM_AUDIENCE_ID>/usersreplace
发出 POST
调用,以指定要添加到自定义受众的用户名单。
operation_status
切换为 replace_in_progress
。 operation_status
切换为 replace_error
。在向 /<CUSTOM_AUDIENCE_ID>/usersreplace
发出的 POST
调用中,您可以加入以下参数:
名称 | 描述 |
---|---|
类型:JSON 对象 | 必要。 用于追踪是否已上传特定批次用户。必须包含会话编号和批次信息。请参阅会话字段。 您每次最多可以向受众添加 10,000 个用户。如果用户超过 10,000 人次,请将您的会话分为多个批次,所有批次的会话编号均应相同。 示例: { 'session_id':9778993, 'batch_seq':10, 'last_batch_flag':true, 'estimated_num_total':99996 } |
类型:JSON 对象 | 必要。 用于提供要上传到受众的信息。必须包含 schema 和 data ,请参阅负载字段了解详情。 示例: { "schema":"EMAIL", "data":["<HASHED_EMAIL>", "<HASHED_EMAIL>", "<HASHED_EMAIL>" ] } |
名称 | 描述 |
---|---|
类型:64 位整数 | 必要。 用于追踪会话。您必须生成此标识符,并且该数字在同一个广告帐户中不得有所重复。 |
类型:整数 | 必要。必须从 |
类型:布尔值 | 非必要。 表明已为当前替换会话提供所有批次。设置为 true 时,此会话不再接受其他批次。如果您没有设置此标记,系统将在收到第一批的 90 分钟后自动终止此会话。系统会舍弃在 90 分钟后收到的任何批次。 |
类型:整数 | 非必要。 要在相应会话中上传的用户的预估总数。由我们的系统用于改进会话的处理流程。 |
名称 | 描述 |
---|---|
类型:字符串或 | 必要。 指定您将提供的信息类型。可以从以下清单中选择单键或多键:
|
类型:JSON_Array | 必要。 与 schema 对应的数据清单。 示例:
|
发出 POST
请求后,您将获得具有以下字段的响应:
名称 | 描述 |
---|---|
类型:整数 | 账户标识符。 |
类型:整数 | 您先前已提供的会话编号。 |
类型:整数 | 此会话目前为止收到的用户总数。 |
类型:整数 | 格式无效或无法解码的用户总数。如果此数字不为 0,请重新检查您的数据。 |
| 当前请求中的无效条目样例(最多 100 个)。重新检查您的数据。 |
从替换端点返回的所有错误都含有错误代码 2650。以下是返回的一些最常见错误子代码及其解决方案指南。
错误子代码 | 描述 | 解决方案 |
---|---|---|
1870145 | 受众更新中 | 客户名单自定义受众正在更新,无法替换。请等待该受众的可用性变为“正常”,然后重试。 |
1870158 | 替换会话超时 | 您的替换批次会话已达到 90 分钟的时间限制。您的客户名单自定义受众将替换为到目前为止已上传的受众。如要添加更多自定义受众,请等待替换流程完成,然后使用 |
1870147 | 上传的替换批次无效 | 未检测到第一个 |
1870159 | 替换会话已完成 | 由于您上传了带有 |
1870148 | 出错了 | 您的客户名单未完全更新。如果您的受众规模明显不同于预期,请考虑重试。 |
1870144 | DFCA 规模不支持替换 | 客户名单自定义受众规模达到 1 亿或以上,因此无法替换。 |
您可构建、定位或分享的其他受众类型如下所示:
来自您网站的自定义受众 — 根据浏览特定页面或在您网站上执行操作的用户创建受众。根据您网站上 Meta Pixel 像素代码的数据构建受众。
您移动应用的自定义受众 — 根据使用您移动应用的用户创建受众。根据来自应用事件的数据构建受众。
类似受众 — 识别您已知晓的用户,并向类似的 Facebook 应用用户展示广告。
线下自定义受众 — 根据曾光顾过门店、致电客服,或通过其他线下途径做出操作的用户创建受众。
全屏广告互动受众 — 创建包含与您的全屏广告互动的任何用户的受众。