流動應用程式自訂廣告受眾

根據用戶於您的應用程式執行的符合準則的動作建立廣告受眾。此功能可讓您建立以下範例般的廣告受眾:

  • 「在過去 10 天成功通過第 8 關」
  • 「在過去 8 天用過應用程式,但沒有購買任何產品」
  • 「將產品加入購物車但尚未購買」

此解決方案會透過我們的 Facebook SDK應用程式事件 APIMobile Measurement Partner 使用已記錄及已命名事件。要記錄的事件範例包括「已安裝」、「已加入購物車」、「已購買」或「已完成關卡」。

限制

  • 我們只為影片的互動自訂廣告受眾提供 subtype 支援。
  • iOS 14.5 的 SKAdNetwork 宣傳活動之 POST /{ad-account-id}/adsets 端點將不再支援在包含目標指定中使用流動應用程式自訂廣告受眾。
  • 新的 iOS 14.5 應用程式安裝宣傳活動將無法使用應用程式聯絡人目標指定。

建立廣告受眾

如要從您的流動應用程式建立自訂廣告受眾,廣告帳戶必須於廣告管理員接受自訂廣告受眾服務條款。如要簽署條款:

  • 您必須是廣告帳戶的管理員、開發人員或洞察報告用戶。
  • 您應在應用程式設定中將此廣告帳戶列為「廣告帳戶」。

如要建立您的廣告受眾:

curl -X POST \ -F 'name="My Test Website Custom Audience"' \ -F 'rule={ "inclusions": { "operator": "or", "rules": [ { "event_sources": [ { "id": "<APP_ID>", "type": "app" } ], "retention_seconds": 8400, "filter": { "operator": "and", "filters": [ { "field": "event", "operator": "eq", "value": "fb_mobile_purchase" } ] } } ] } }' \ -F 'prefill=1' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v19.0/act_<AD_ACCOUNT_ID>/customaudiences
'use strict'; const bizSdk = require('facebook-nodejs-business-sdk'); const AdAccount = bizSdk.AdAccount; const CustomAudience = bizSdk.CustomAudience; const access_token = '<ACCESS_TOKEN>'; const app_secret = '<APP_SECRET>'; const app_id = '<APP_ID>'; const id = '<AD_ACCOUNT_ID>'; const api = bizSdk.FacebookAdsApi.init(access_token); const showDebugingInfo = true; // Setting this to true shows more debugging info. if (showDebugingInfo) { api.setDebug(true); } const logApiCallResult = (apiCallName, data) => { console.log(apiCallName); if (showDebugingInfo) { console.log('Data:' + JSON.stringify(data)); } }; let fields, params; fields = [ ]; params = { 'name' : 'My Test Website Custom Audience', 'rule' : {'inclusions':{'operator':'or','rules':[{'event_sources':[{'id':'<appID>','type':'app'}],'retention_seconds':8400,'filter':{'operator':'and','filters':[{'field':'event','operator':'eq','value':'fb_mobile_purchase'}]}}]}}, 'prefill' : '1', }; const customaudiences = (new AdAccount(id)).createCustomAudience( fields, params ); logApiCallResult('customaudiences api call complete.', customaudiences);
require __DIR__ . '/vendor/autoload.php'; use FacebookAds\Object\AdAccount; use FacebookAds\Object\CustomAudience; use FacebookAds\Api; use FacebookAds\Logger\CurlLogger; $access_token = '<ACCESS_TOKEN>'; $app_secret = '<APP_SECRET>'; $app_id = '<APP_ID>'; $id = '<AD_ACCOUNT_ID>'; $api = Api::init($app_id, $app_secret, $access_token); $api->setLogger(new CurlLogger()); $fields = array( ); $params = array( 'name' => 'My Test Website Custom Audience', 'rule' => array('inclusions' => array('operator' => 'or','rules' => array(array('event_sources' => array(array('id' => '<appID>','type' => 'app')),'retention_seconds' => 8400,'filter' => array('operator' => 'and','filters' => array(array('field' => 'event','operator' => 'eq','value' => 'fb_mobile_purchase'))))))), 'prefill' => '1', ); echo json_encode((new AdAccount($id))->createCustomAudience( $fields, $params )->exportAllData(), JSON_PRETTY_PRINT);
from facebook_business.adobjects.adaccount import AdAccount from facebook_business.adobjects.customaudience import CustomAudience from facebook_business.api import FacebookAdsApi access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<AD_ACCOUNT_ID>' FacebookAdsApi.init(access_token=access_token) fields = [ ] params = { 'name': 'My Test Website Custom Audience', 'rule': {'inclusions':{'operator':'or','rules':[{'event_sources':[{'id':'<appID>','type':'app'}],'retention_seconds':8400,'filter':{'operator':'and','filters':[{'field':'event','operator':'eq','value':'fb_mobile_purchase'}]}}]}}, 'prefill': '1', } print AdAccount(id).create_custom_audience( fields=fields, params=params, )
import com.facebook.ads.sdk.*; import java.io.File; import java.util.Arrays; public class SAMPLE_CODE_EXAMPLE { public static void main (String args[]) throws APIException { String access_token = \"<ACCESS_TOKEN>\"; String app_secret = \"<APP_SECRET>\"; String app_id = \"<APP_ID>\"; String id = \"<AD_ACCOUNT_ID>\"; APIContext context = new APIContext(access_token).enableDebug(true); new AdAccount(id, context).createCustomAudience() .setName(\"My Test Website Custom Audience\") .setRule(\"{\\"inclusions\\":{\\"operator\\":\\"or\\",\\"rules\\":[{\\"event_sources\\":[{\\"id\\":\\"<appID>\\",\\"type\\":\\"app\\"}],\\"retention_seconds\\":8400,\\"filter\\":{\\"operator\\":\\"and\\",\\"filters\\":[{\\"field\\":\\"event\\",\\"operator\\":\\"eq\\",\\"value\\":\\"fb_mobile_purchase\\"}]}}]}}\") .setPrefill(true) .execute(); } }
require 'facebook_ads' access_token = '<ACCESS_TOKEN>' app_secret = '<APP_SECRET>' app_id = '<APP_ID>' id = '<AD_ACCOUNT_ID>' FacebookAds.configure do |config| config.access_token = access_token config.app_secret = app_secret end ad_account = FacebookAds::AdAccount.get(id) customaudiences = ad_account.customaudiences.create({ name: 'My Test Website Custom Audience', rule: {'inclusions':{'operator':'or','rules':[{'event_sources':[{'id':'<appID>','type':'app'}],'retention_seconds':8400,'filter':{'operator':'and','filters':[{'field':'event','operator':'eq','value':'fb_mobile_purchase'}]}}]}}, prefill: '1', })

成功後,這會傳回廣告受眾的 id。以下為最相關的參數:

名稱 描述

name

類型:字串

此為必要項目。

自訂廣告受眾的名稱。

description

類型:字串

此為選用項目。

自訂廣告受眾的描述。

rule

類型:JSON 物件

此為選用項目。

用於定義廣告受眾的規則。請參閱廣告受眾規則

每個廣告帳戶均可透過來自您流動應用程式的自訂廣告受眾,建立最多 200 個自訂廣告受眾。傳送 POST 要求至:

https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/customaudiences

使用以下欄位:

名稱 描述

name

類型:字串

此為必要項目。

自訂廣告受眾的名稱

retention_days

類型:整數

此為必要項目。

用戶留在此廣告受眾的時長。最低為 1。最高為 180


如果 retention_days 為 14,而一位廣告受眾成員於第 13 天觸發符合準則的應用程式事件,Facebook 會把其留在廣告受眾中的時間再延長 14 天。用戶留於廣告受眾的時長為其上次觸發配對事件後的 N 天。

rule

類型:JSON 物件

此為必要項目。

定義廣告受眾的規則。詳情請參閱廣告受眾規則

廣告受眾規則

如要判斷自訂廣告受眾應加入哪個用戶,請根據應用程式內的事件定義規則。規則即是擁有鍵值組合的 JSON 對象,並且可用於引用至多個應用程式事件。您可以根據特定事件及其參數,以及彙整內容來定義規則。詳情請參閱廣告受眾規則。另請參閱:

  • 包含和排除規則語法:在 event_sources 下,將 id 設定為您應用程式的編號,將 type 設定為 app
  • 篩選條件規則
    • 如果要將篩選條件用於指定事件,請將 'event' 用作 field。與應用程式傳送的應用程式事件相符的參數;如「_appVersion」、「_value」等。
    • 如果您將 field 屬性設定為 "event",該值必須設定為事件名稱。使用應用程式事件 API 查看由像素報告的應用程式事件和參數。
  • 彙整函數:以下彙整函數適用於流動應用程式自訂廣告受眾:"count""sum""avg""min""max"

流動應用程式自訂廣告受眾規則範例

標準事件範例

過去 30 天內應用程式編號 55064006 的所有流動應用程式購買者:

{
    "inclusions: {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app"
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "fb_mobile_purchase"
                        }
                    ]
                }
            }
        ]
    }
}

包含參數的自訂事件範例

過去 30 天內傳回應用程式編號 55064006 自訂 “timeOnPanel” 事件的所有用戶:

{
    "inclusions: {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app"
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "timeOnPanel"
                        }
                    ]
                }
            }
        ]
    }
}

傳回自訂 “timeOnPanel” 事件的所有用戶,其事件的值超過 30、顏色為 “red”“blue”,而最愛甜品則包含 “banana”

{
    "inclusions: {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app",
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "timeOnPanel",
                        },
                        {
                            "field": "_value",
                            "operator": ">",
                            "value": 30,
                        },
                        {
                            "field": "color",
                            "operator": "is_any",
                            "value": ["red", "blue"],
                        },
                        {
                            "field": "favoriteDessert",
                            "operator": "contains",
                            "value": "banana",
                        }
                    ]
                }
            }
        ]
    }
}

彙整範例

過去 30 天內購買事件中首 20% 的購買者:

{
    "inclusions: {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app"
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "fb_mobile_purchase"
                        }
                    ]
                }
                "aggregation": {
                    "type": "count",
                    "method": "percentile",
                    "operator": "in_range",
                    "from": 75,  
                    "to": 100,
                }
            }
        ]
    }
}

排除範例

以下範例包括將產品加入購物車但尚未購買的用戶:

{
    "inclusions: {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app"
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "add_to_cart"
                        }
                    ]
                }
            }
        ]
    },
    "exclusions": {
        "operator": "or",
        "rules": [    
            {
                "event_sources": [
                    {
                        "id": 55064006, 
                        "type": "app"
                    }
                ],
                "retention_seconds: 2592000,
                "filter": {
                    "operator": "and",
                    "filters": [
                        {
                            "field": "event",
                            "operator": "=",
                            "value": "fb_mobile_purchase"
                        }
                    ]
                }
            }
        ]
    }
}

應用程式事件 API

查詢應用程式向 Facebook 報告的應用程式事件及參數。您可將這些事件及參數直接用於建立自訂廣告受眾。您需要提供與 app_id 關聯的管理員、開發人員或廣告客戶角色存取憑證。

傳送 GET 要求:

https://graph.facebook.com/<API_VERSION>/<APP_ID>/app_event_types

其回應為包含一批 JSON 字典 data 陣列的 JSON,並含有以下欄位:

名稱 描述

event_name

類型:字串

用於規則的應用程式事件類型。

display_name

類型:字串

人類可讀的事件類型名稱

description

類型:字串

標準事件的詳細描述

parameters

類型:陣列

描述以下事件參數的 JSON 字典陣列:{"parameter_name": "fb_currency","display_name": "Currency","description": "Currency for event"}


parameter_name:字串,用於規則的應用程式參數類型


display_name:字串,人類可讀的事件類型名稱


description:字串,參數的詳細描述(如果為標準參數)


管理廣告受眾