API 调用

查看使用广告规则引擎的 API 调用示例。

查看账户的所有规则

curl -G   \
-d 'fields=name,evaluation_spec,execution_spec,status'   \
-d 'access_token=<ACCESS_TOKEN>'   \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library

查看规则

curl -G   \
-d 'fields=name,evaluation_spec,execution_spec,status'   \
-d 'access_token=<ACCESS_TOKEN>'   \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>

更新规则

为更新规格,请提供所有字段,包括值保持不变的字段。以下示例将规则触发器更新为每 1,000 次展示触发一次。更新规则的状态无需更改规格。

curl \
-F 'evaluation_spec={
      "evaluation_type": ...,
      "trigger" : {
        "type": "STATS_MILESTONE",
        "field": "impressions",
        "value": 1000,
        "operator": "EQUAL"
      },
      "filters": ...
     ]
   }' \
-F 'access_token=<ACCESS_TOKEN>'   \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>

以下示例更新了筛选条件,以选择点击量超过 200 的所有广告。entity_typetime_preset 等其他筛选条件仍必须保留在此更新中。

curl \
-F 'evaluation_spec={
      "evaluation_type": ...,
      "filters" : [
       {
         "field": "clicks",
         "value": 200,
         "operator": "GREATER_THAN",
       },
       {
       ...
     ]
   }' \
-F 'access_token=<ACCESS_TOKEN>'   \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>

删除规则

curl -X DELETE \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>

访问规则的执行记录

每个规则都有一个端点,可供访问规则执行情况的历史数据。默认情况下,此端点提供结果和操作等相关数据。您还可以在每次执行时检查规则的状态,以追踪编辑记录。

curl -G   \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/history

此外,此端点支持对数据执行三种筛选机制:object_idactionhide_no_changes。您可以根据 object_idaction 筛选结果,以查看仅 object_idaction 类型的结果。

您也可以使用 hide_no_changes 标记筛选结果,以排除所有没有任何变化的执行情况。您可以同时使用这些筛选条件来缩小结果范围。

curl -G   \
-d 'object_id=123' \
-d 'action=CHANGED_BID' \
-d 'hide_no_changes=true' \
-d "access_token=<ACCESS_TOKEN>" \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/history

访问账户的执行历史记录

系统提供一个端点,可供您访问账户下所有规则的汇总历史记录数据。默认情况下,此端点提供与规则执行历史记录相同的相关数据,但是每个条目中额外包括规则的编号。

此端点中的条目按从新到旧的顺序显示。它也支持与上述相同的筛选机制:object_idactionhide_no_changes

curl -G   \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_history

预览规则

系统提供一个端点,可供您预览排期类规则的评估结果。发送 POST 请求后,此端点会返回当时满足规则所有指定筛选条件的对象列表。

curl \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/preview

手动执行规则

系统提供一个端点,可供您手动执行排期类规则。向此端点发送 POST 请求后,规则就会立即按排期运行。

curl \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/execute

规则执行完成后,您可以从执行历史记录中获取结果。

查看对象的管理规则

系统提供端点,可供您查看用于管理每个广告、广告组和广告系列的所有规则。默认情况下,规则通过 id 筛选条件静态引用对象或通过 entity_type 筛选条件动态引用对象来管理对象。

此端点还支持您选择 pass_evaluation。有了它,您可以根据对象当时是否满足规则的筛选条件,进一步限制规则列表。如果 pass_evaluationtrue,我们将返回预览时会返回对象的所有规则。如果为 false,则返回预览时不会返回对象的所有规则。

curl \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<VERSION>/<AD_OBJECT_ID>/adrules_governed