設定目錄

如要設定動態廣告,您需要使用目錄、目錄動態及產品組合。

您的目錄為結構化數據檔案,包含您想宣傳的物品清單。每行均包含建立動態廣告所需的全部資訊。產品動態則為您數據的動態上載,可助您的產品目錄保持最新狀態。

這份文件將為您講解建立目錄的方法:

另請參閱開始使用動態廣告透過 UI 設定動態廣告

第 1 步:建立目錄

如要建立動態廣告目錄:

use FacebookAds\Object\ProductCatalog;
use FacebookAds\Object\Fields\ProductCatalogFields;

$product_catalog = new ProductCatalog(null, <BUSINESS_ID>);

$product_catalog->setData(array(
  ProductCatalogFields::NAME => "Catalog",
));

$product_catalog->create();
from facebookads.adobjects.productcatalog import ProductCatalog

product_catalog = ProductCatalog(parent_id=<BUSINESS_ID>)

product_catalog[ProductCatalog.Field.name] = 'Catalog'

product_catalog.remote_create()
ProductCatalog catalog = new Business(<BUSINESS_ID>, context).createProductCatalog()
  .setName("Catalog")
  .execute();
String catalog_id = catalog.getId();
curl \
  -F 'name=Catalog' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<BUSINESS_ID>/product_catalogs

如要使用目錄 API,您需要取得合適的推廣 API 存取權,並須透過於企業管理平台建立第一個目錄以接受服務條款。詳情請參閱目錄參考資料

第 2 步:設定動態

此為由企業上載或取得的一系列物品,以確保產品目錄的資料為最新。產品項目是您網上商鋪的單一物品,如 SKU。您可使用單一產品動態以代表目錄中的所有產品,或多個產品動態,而每個動態代表一個國家/地區或區域的產品。詳情請參閱動態參考資料物品參考資料

建立產品目錄後,請使用 catalog id 建立及安排產品動態

use FacebookAds\Object\ProductFeed;
use FacebookAds\Object\Fields\ProductFeedFields;
use FacebookAds\Object\Fields\ProductFeedScheduleFields;

$product_feed = new ProductFeed(null, <PRODUCT_CATALOG_ID>);

$product_feed->setData(array(
  ProductFeedFields::NAME => 'Test Feed',
  ProductFeedFields::SCHEDULE => array(
    ProductFeedScheduleFields::INTERVAL => 'DAILY',
    ProductFeedScheduleFields::URL =>'http://www.example.com/sample_feed.tsv',
    ProductFeedScheduleFields::HOUR => 22,
  ),
));

$product_feed->create();
from facebookads.adobjects.productfeed import ProductFeed

product_feed = ProductFeed(parent_id=<PRODUCT_CATALOG_ID>)

product_feed[ProductFeed.Field.name] = 'Test Feed'
product_feed[ProductFeed.Field.schedule] = {
    'interval': 'DAILY',
    'url': 'http://www.example.com/sample_feed.tsv',
    'hour': 22,
}

product_feed.remote_create()
ProductFeed productFeed = new ProductCatalog(<PRODUCT_CATALOG_ID>, context).createProductFeed()
  .setName("Test Feed")
  .setSchedule("{\"interval\":\"DAILY\",\"url\":\"http://www.example.com/sample_feed.tsv\",\"hour\":\"22\"}")
  .execute();
String product_feed_id = productFeed.getId();
curl \
  -F 'name=Test Feed' \
  -F 'schedule={ 
    "interval": "DAILY", 
    "url": "http:\/\/www.example.com\/sample_feed.tsv", 
    "hour": 22 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PRODUCT_CATALOG_ID>/product_feeds

支援格式

提供的產品動態必須為以下其中一種格式:

動態格式 描述 動態範例

CSV

逗點分隔值。第一行為欄標題。請將包含逗號的欄位置於 "雙引號"

下載(點擊右鍵並另存連結)

TSV

定位鍵分隔值。第一行為欄標題。請將包含逗號的欄位置於 "雙引號"

下載(點擊右鍵並另存連結)

RSS XML

格式一般由自動動態提供系統或網絡伺服器產生。一系列代表產品清單的項目 XML 節點,並必須以 <?xml 聲明標籤開頭。

下載(點擊右鍵並另存連結)

ATOM XML

格式一般由自動動態提供系統或網絡伺服器產生。一系列代表產品清單的項目 XML 節點,並必須以 <?xml 聲明標籤開頭。

下載(點擊右鍵並另存連結)

必填欄位

請以英文提供所有欄名稱。

名稱 類型 描述

id


大小上限:100

字串

項目唯一編號。可為產品的變種。如有多個例項擁有同一個編號,我們將略過所有例項。匯入產品後,這將對應至 retailer_id

availability

字串

貨品是否有存貨。允許使用的值為:


in stock - 貨品可立即發貨。


out of stock - 不會補貨。


preorder- 未來將會有貨。


available for order - 將於 1 至 2 個星期內發貨。


discontinued - 已停產


condition

字串

產品狀況:newrefurbishedused

description


大小上限:5000

字串

描述產品的簡短文字。

image_link


字串

廣告所使用的產品圖像連結。輪播格式使用正方形 1:1 寬高比圖像 (600x600px),而單一產品廣告則使用 1.91:1 寬高比圖像 (1200x630px)。提供合適圖像供您使用。

link


字串

讓用戶購買物品的商戶網站連結。

title


大小上限:100

字串

產品標題。

price

字串

產品價格及貨幣。貨幣必須遵循 ISO 4217 貨幣代碼,如 9.99 USD

gtinmpnbrand


大小上限:70

字串

gtin - 全球貿易項目編號 (GTIN) 可包含 UPC、EAN、JAN 及 ISBN。



mpn - 產品的唯一製造商編號。



brand - 品牌名稱。



必須提供 gtinmpnbrand

選填欄位、產品深層連結

請按照應用程式連結規格,於產品動態提供深層連結。產品動態中的深層連結資訊將優先於 Facebook 透過其網絡爬蟲所收集的應用程式連結中繼資料的任何相關資訊。

如果您已有應用程式連結的深層連結資訊,則無需指明此數據。Facebook 會使用應用程式連結的資訊,以展示正確的深層連結。如欲在廣告中展示深層連結,請參閱動態廣告的廣告範本

名稱 描述 範例

ios_url

iOS 應用程式的自訂方案(以網址形式提供)

example-ios://electronic

ios_app_store_id

App Store 的應用程式編號

1234

ios_app_name

應用程式的展示名稱

Electronic Example iOS

iphone_url

iPhone 應用程式的自訂方案(以網址形式提供)

example-iphone://electronic

iphone_app_store_id

App Store 的應用程式編號

5678

iphone_app_name

應用程式的展示名稱

Electronic Example iPhone

ipad_url

iPhone 應用程式的自訂方案

example-ipad://electronic

ipad_app_store_id

App Store 的應用程式編號

9010

ipad_app_name

應用程式的展示名稱

Electronic Example iPad

android_url

Android 應用程式的自訂方案(以網址形式提供)

example-android://electronic

android_package

用於意向產生的完整格式套件名稱

com.electronic

android_app_name

應用程式的展示名稱

Electronic Example Android

windows_phone_url

Windows Phone 應用程式的自訂方案(以網址形式提供)

example-windows://electronic

windows_phone_app_id

App Store 的應用程式編號(如 GUID)

ee728e01-7727-4168-9c8f-85c7eef40112

windows_phone_app_name

應用程式的展示名稱

Electronic Example Windows

對於 iOS,如果此內容與一般 iOS 應用程式的資訊不同,則只需提供 iPhone iPad 應用程式資訊。

請使用產品群組以為所有產品變種分組。提供產品群組以識別幾乎相同,但規格(如顏色、物料、尺寸或圖案)有所不同的產品。群組讓您可更輕鬆地宣傳特定產品的其他顏色、風格或圖案。同一個產品群組的所有產品均共用相同的 item_group_id。在動態廣告中,我們會根據由像素或應用程式所收到的訊號,僅從群組中挑選一個項目。

以下為您可加入的選填欄位:

名稱 類型 大小上限

additional_image_link


大小上限:2000

字串

您最多可加入 10 個額外圖像(以逗點分隔網址形式提供)。

age_group

字串

產品年齡段。允許使用的值為 newborninfanttoddlerkidsadult

color


大小上限:100

字串

項目顏色。

expiration_date

ISO-8601 (YYYY-MM-DD)

產品到期日。產品過期後,Facebook 會將之排除至所有產品組合以外,並且不會再在廣告中展示此產品。

gender

字串

選項包括:malefemaleunisex

item_group_id

字串

適用於作為產品變種的項目。請為所有變種項目提供相同 item_group_id。例如,「紅色 Polo 衫」是「Polo 衫」的變種。一旦我們收到您的動態後,Facebook 便會將此內容對應至 retailer_product_group_id。在動態廣告中,我們會根據由像素或應用程式所收到的訊號,僅從群組中挑選一個項目。

google_product_category


大小上限:250

字串

來自 Google 產品分類法的預先定義值,如 Apparel & Accessories > Clothing > Dresses

material


大小上限:200

字串

產品的製作物料,如 leatherdenimcotton

pattern


大小上限:100

字串

產品上的圖案或圖像印花。

product_type


大小上限:750

字串

由零售商定義的產品類別。

例如:
Home & Garden > Kitchen & Dining > Appliances > Refrigerators(TSV 格式)

例如:<product_type>Home & Garden > Kitchen & Dining > Appliances > Refrigerators</product_type>(XML 格式)

sale_price

字串

折扣價格(如項目有任何促銷活動)。貨幣必須遵循 ISO 4217 貨幣代碼。指定為 9.99 USD

sale_price_effective_date

ISO-8601 (YYYY-MM-DD)

銷售的開始日期、結束日期及時間(以正斜線分隔):


2014-11-01T12:00-0300/2014-12-01T00:00-0300

shipping

字串

每個國家及地區均設不同價格的二進位大型物件。不同地區需以逗號分隔。格式必須為 COUNTRY:STATE:SHIPPING_TYPE:PRICE

例如:

US:CA:Ground:9.99 USD,US:NY:Air:15.99 USD

shipping_weight

字串

貨品的裝運重量。我們僅接受以下重量單位:lbozgkg。範例:3 lbs

size

字串

產品尺寸。例如,一件襯衫可以是 SmallXL

custom_label_0


大小上限:100

字串

此為選填欄位,包含有關產品的額外資訊。

custom_label_1


大小上限:100

字串

此為選填欄位,包含有關產品的額外資訊。

custom_label_2


大小上限:100

字串

此為選填欄位,包含有關產品的額外資訊。

custom_label_3


大小上限:100

字串

此為選填欄位,包含有關產品的額外資訊。

custom_label_4


大小上限:100

字串

此為選填欄位,包含有關產品的額外資訊。

使用我們的產品動態除錯網頁測試產品動態。若是 CSV/TSV,請複製第一列(即欄標題列)及數項產品;若是 XML,請複製含有數項產品/條目的 XML,並將內容貼上文字區域並驗證。

第 3 步:更新選項

如要確保產品資訊為最新內容,請使用以下任一選項:

  1. 安排產品動態擷取
  2. 直接上載產品動態
  3. 更新產品

安排產品動態擷取

Facebook 會按照您定期的時間表,從您的系統擷取產品動態。每次擷取將會為您的動態進行一次完整的重新整理程序。我們會刪除檔案中沒有的產品、更新現有產品,以及建立新產品:

use FacebookAds\Object\ProductFeed;
use FacebookAds\Object\Fields\ProductFeedFields;
use FacebookAds\Object\Fields\ProductFeedScheduleFields;

$product_feed = new ProductFeed(null, <PRODUCT_CATALOG_ID>);

$product_feed->setData(array(
  ProductFeedFields::NAME => 'Test Feed',
  ProductFeedFields::SCHEDULE => array(
    ProductFeedScheduleFields::INTERVAL => 'DAILY',
    ProductFeedScheduleFields::URL =>'http://www.example.com/sample_feed.tsv',
    ProductFeedScheduleFields::HOUR => 22,
  ),
));

$product_feed->create();
from facebookads.adobjects.productfeed import ProductFeed

product_feed = ProductFeed(parent_id=<PRODUCT_CATALOG_ID>)

product_feed[ProductFeed.Field.name] = 'Test Feed'
product_feed[ProductFeed.Field.schedule] = {
    'interval': 'DAILY',
    'url': 'http://www.example.com/sample_feed.tsv',
    'hour': 22,
}

product_feed.remote_create()
ProductFeed productFeed = new ProductCatalog(<PRODUCT_CATALOG_ID>, context).createProductFeed()
  .setName("Test Feed")
  .setSchedule("{\"interval\":\"DAILY\",\"url\":\"http://www.example.com/sample_feed.tsv\",\"hour\":\"22\"}")
  .execute();
String product_feed_id = productFeed.getId();
curl \
  -F 'name=Test Feed' \
  -F 'schedule={ 
    "interval": "DAILY", 
    "url": "http:\/\/www.example.com\/sample_feed.tsv", 
    "hour": 22 
  }' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<PRODUCT_CATALOG_ID>/product_feeds

回應:

{ "id" : {PRODUCT_FEED_ID} }

詳情請參閱產品動態安排參考資料


直接上載產品動態

除了安排擷取動態外,您也可手動執行一次性上載:

curl \
-F "url=http://www.example.com/sample_feed.xml" \
-F "access_token={ACCESS_TOKEN}" \
https://graph.facebook.com/{API_VERSION}/{PRODUCT_FEED_ID}/uploads

您亦可選擇將 update_only 設定為 true。我們會於動態內建立新項目及更新現有項目,但不會刪除其中的項目。如要更新現有項目,您只需提供 id 即可。這可節省擷取及處理檔案的時間。

例如,如果您只想更新動態中 100 個項目的價格及自訂標籤,請使用直接上載。為這些項目提供只含 idpricecustom_label_0 的檔案,並將 update_only 設定至 true。我們支援所有已列出的檔案格式,當中最常見的為 TSV 及 CSV。

檔案範例如下:

動態格式 用例 動態範例

CSV

為項目子集更新 priceavailability

下載

TSV

為項目子集重設 sale_price 及更新 custom_label_0

下載

詳情請參閱手動上載參考資料

如果您的產品動態出現錯誤,請參閱產品動態上載錯誤參考資料


更新個別產品

即時更新個別產品的數據。在 HTTP POST 中包含已更新欄位:

https://graph.facebook.com/catalog:{PRODUCT_CATALOG_ID}:{base64urlencode(retailer_id)}

其中 retailer_id 代表您產品動態的產品編號。此編號必須以 base64url 編碼。如欲了解更多有關易變產品欄位的資訊,請參閱產品目錄產品參考資料

請勿提供使用 API 更新、建立或刪除個別產品的產品動態。此動作會中斷您對透過 API 建立的項目之任何更新或刪除活動,因為我們不會使用動態追蹤這些活動。

請參閱:*已安排的動態擷取參考資料*直接上載動態參考資料*產品動態參考資料*目錄中的產品動態*產品項目參考資料*目錄中的產品搜尋

大型目錄批量上載

上載包含數百萬產品及經常變更存貨的超大型目錄。您可透過單一 HTTP 要求建立、更新及刪除多項產品。此 API 擁有兩個端點:

  • POST [/{product_catalog_id}/batch](#send-batch-request) - 傳送批量要求,以在目錄中建立、更新、刪除項目。
  • GET [/{product_catalog_id}/check_batch_request_status](#batch-request-status) - 檢查要求狀態。

傳送產品更新資訊

如要建立、更新或刪除目錄中的產品,請結合您想要執行的變更作出 HTTP POST。每次呼喚可執行最多 500 項更新。對於每個目錄,每小時最多可作出 100 次呼喚。

use FacebookAds\Api;
use FacebookAds\Http\RequestInterface;

$requests =  array(
    array(
        'method' => 'CREATE',
        'retailer_id' => 'retailer-product-id-123',
        'data' => array(
          'availability' => 'in stock',
          'brand' => 'Niky',
          'category' => 't-shirts',
          'currency' => 'USD',
          'description' => 'This is the product description.',
          'image_url' => 'http://www.images.example.com/t-shirts/1.png',
          'name' => 'My product name',
          'price' => '100',
          'url' => 'http://www.example.com/t-shirts/1.html',
        ),
    ),
);


$data = Api::instance()->call(
  '/'.<CATALOG_ID>.'/batch',
  RequestInterface::METHOD_POST,
  array('requests' => $requests))->getContent();
curl \
  -F 'requests=[ 
    { 
      "method": "CREATE", 
      "retailer_id": "retailer-product-id-123", 
      "data": { 
        "availability": "in stock", 
        "brand": "Niky", 
        "category": "t-shirts", 
        "currency": "USD", 
        "description": "This is the product description.", 
        "image_url": "http:\/\/www.images.example.com\/t-shirts\/1.png", 
        "name": "My product name", 
        "price": "100", 
        "url": "http:\/\/www.example.com\/t-shirts\/1.html" 
      } 
    } 
  ]' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v2.11/<CATALOG_ID>/batch

此呼喚會回傳控制代碼,讓您用於檢查批量要求的狀態。詳情請參閱取得要求狀態

{
  "handles": ["AczwaOW7j_EuQ5peV3kGq8X9qc7cDiv_kFrrHkdKuG7LkpkkqK5939wgdoduSQ45FGK5vKdVqOaSDJEun-fvbsR1kk8Rd53AZyD1WThSemo26I"]
}
參數 類型 描述

requests

對象

包含所有要求的 JSON 對象。

requests.method

字串

CREATEUPDATEDELETE

requests.retailer_id

字串

由零售商提供的產品 id

requests.data

對象

包含產品欄位及值的 JSON 對象。如果 methodCREATE,此對象必須包含產品的所有必填欄位。如果 methodUPDATE,對象可包含任何欄位。Facebook 只會更新您提供的欄位。

以下為您可用於 CREATEUPDATE 項目,且 data 欄位支援的值:

  • additional_image_urls
  • availability
  • age_group
  • applinks
  • brand
  • category
  • color
  • condition
  • currency
  • custom_label_0
  • custom_label_1
  • custom_label_2
  • custom_label_3
  • custom_label_4
  • description
  • gender
  • gtin
  • image_url
  • manufacturer_part_number
  • name
  • pattern
  • price
  • product_type
  • sale_price
  • sale_price_end_date
  • sale_price_start_date
  • shipping
  • size
  • url

您可將 applinks 用於深層連結資訊,其功能與深層連結連結相似。格式如下所示:

"applinks" : {
  "ios": [{
    "url":"example-ios://electronic",
    "app_store_id":42,
    "app_name":"Electronic Example iOS"
  }],
  "iphone": [{
    "url":"example-iphone://electronic",
     "app_store_id":43,
     "app_name":"Electronic Example iPhone"
  }],
  "ipad": [{
    "url":"example-ipad://electronic",
     "app_store_id":44,
     "app_name":"Electronic Example iPad"
  }],
  "android": [{
    "url":"example-android://electronic",
     "package":"com.electronic",
     "class":"com.electronic.Example",
     "app_name":"Electronic Example Android",
  }],
  "windows_phone": [{
    "url":"example-windows://electronic",
     "app_id":"64ec0d1b-5b3b-4c77-a86b-5e12d465edc0",
     "app_name":"Electronic Example Windows"
  }]
}

詳情請參閱建立產品目錄參考資料

取得要求狀態

如要取得批量要求狀態,請使用由向 {product_catalog_id}/batch 作出的呼喚傳回的控制代碼:

curl -G \
-d 'handle=AczwaOW7j_EuQ5peV3kGq8X9qc7cDiv_kFrrHkdKuG7LkpkkqK5939wgdoduSQ45FGK5vKdVqOaSDJEun-fvbsR1kk8Rd53AZyD1WThSemo26I'
-d 'access_token={ACCESS_TOKEN}'
https://graph.facebook.com/{API_VERSION}/{PRODUCT_CATALOG_ID}/check_batch_request_status

回應:

{
  "data": [
    {
      "handle": "AczwaOW7j_EuQ5peV3kGq8X9qc7cDiv_kFrrHkdKuG7LkpkkqK5939wgdoduSQ45FGK5vKdVqOaSDJEun-fvbsR1kk8Rd53AZyD1WThSemo26Q",
      "status": "finished",
      "errors_total_count": 1,
      "errors": [
        {
          "line": 0,
          "id": "retailer-4",
          "message": "Invalid value: Value passed at position 0 (id=retailer-199) is invalid: \"You cannot create a EntProductItem without required field Availability\""
        }
      ]
    }
  ]
}

詳情請參閱產品目錄參考資料,檢查批量狀態

產品動態規則

使用規則修改及防止持續出現的動態上載錯誤。您可提供 Facebook 用於每次動態上載的規則。請按 Facebook 須應用的屬性(欄)、規則類型,以及參數列明規則。您現時無法將規則與批量 API 配搭使用。您可提供以下類型的規則:

  • 對應規則 - 將動態檔案內的屬性(欄名稱)對應至我們能識別的屬性。
  • 值對應規則 - 將動態檔案內的欄位(欄值)對應至我們能識別的欄位。
  • 字母大小楷規則 - 更改欄位文字的大小楷。例如,將所有大楷描述改為小楷。

例如,您可使用對應規則及值對應規則修改以下問題:

  • 將錯誤輸入的屬性 gavailability 改為 availability
  • 將無法識別的列舉 InStock 改為 in stock
  • 將價格格式由 45$ 改為 45.00 USD
  • 將狀況:Neu 改為狀況:New

您可使用字母大小楷規則處理以下類型的問題:

  • 將全大楷的描述 BRAND NEW WITH LEATHER DETAIL... 改為 Brand new with leather detail...
  • 將全大楷的標題 FACEBOOK T-SHIRT 改為 Facebook T-shirt

建議規則

Facebook 可為您提供建議規則,以便您修改動態的錯誤。如欲查看上載作業階段的建議規則,請遵循以下步驟。

  • 擷取上載作業階段:
https://graph.facebook.com/{API_VERSION}/{PRODUCT_FEED_ID}/uploads
  • 擷取上載作業階段的錯誤:
https://graph.facebook.com/{API_VERSION}/{UPLOAD_SESSION_ID}/errors
  • 擷取上載錯誤的建議規則:
curl -i -X GET 
 "https://graph.facebook.com/{API_VERSION}/{UPLOAD_ERROR_ID}/suggested_rules?access_token={ACCESS_TOKEN}

包含建議的回應範例如下所示:

"data": [
  
    "attribute": "description",
    "type": "letter_case_rule",
    "params": [
      
        "key": "type",
        "value": "capitalize_first"
      
    ]
  
]

詳情請參閱建議規則 API 參考資料

端點

將規則加入動態

如要將規則套用至動態,您需要為規則與動態建立聯繫。透過以下內容作出 HTTP POST 呼喚:

https://graph.facebook.com/{API_VERSION}/{PRODUCT_FEED_ID}/rules?attribute={ATTRIBUTE}&amp;rule_type={RULE_TYPE}&amp;params={PARAMS}

例如:

curl -i -X POST 
 -d "attribute=google_product_category" 
 -d "rule_type=mapping_rule" 
 -d "params=%7B'map_from'%3A%20'gcategory'%7D" 
 -d "access_token={ACCESS_TOKEN}" 
 "https://graph.facebook.com/v2.9/{PRODUCT_FEED_ID}/rules" 
 // sample response
 
  "id": "{RULE_ID}"

您必須按照以下指示格式化 params

規則類型 格式 範例 備註

對應規則

"map_from": <string>

"map_from": "gavailability"

值對應規則

<string> : <string>

"InStock": "in stock"

對於值對應規則,對應次數上限為 10,而字串長度則為 20。

字母大小楷規則

"type": one of : "capitalize_first", "capitalize_all", "to_upper", "to_lower"

"type": "capitalize_first"

詳情請參閱產品動態規則 API 參考資料

取得現有規則

如要列出所有與動態相關的規則,請透過以下內容作出 HTTP GET 呼喚:

https://graph.facebook.com/{API_VERSION}/{PRODUCT_FEED_ID}/rules

詳情請參閱產品動態規則 API 參考資料

更新及刪除規則

如欲更改與動態相關的規則,請作出 HTTP POST 呼喚以更新任何參數,並作出 HTTP DELETE 呼喚以刪除參數。您只可以更新參數。如果您想更改 attributerule_type,請務必刪除及重新建立規則。

https://graph.facebook.com/{API_VERSION}/{PRODUCT_FEED_RULE_ID}?params={PARAMS}

詳情請參閱產品動態規則 API 參考資料

下一步:收集廣告受眾訊號及建立產品廣告受眾

建立產品廣告受眾