按照以下步驟,使用行銷 API 建立您的第一個廣告。
程序一開始,先從 Campaign
類別建立新行銷活動物件。在此階段,您需要設定廣告目標,這是行銷活動的總體目標。建議您剛開始先建立 PAUSED
行銷活動,這樣就不會在測試期間向您收費。
curl -X POST \
-F 'name="My campaign"' \
-F 'objective="OUTCOME_TRAFFIC"' \
-F 'status="PAUSED"' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/campaigns
成功後,我們會傳回您新建立之廣告行銷活動的編號。請記得儲存此編號。您也可以在廣告管理員中確認行銷活動是否已建立。
在開始建立廣告組合之前,您需要先定義目標廣告受眾。在下一個步驟中,您將建立廣告組合並指定廣告受眾的屬性。
您有許多目標設定選項。在此範例中,我們使用目標設定搜尋來尋找可用於設定廣告受眾的預先定義值。
首先,我們要尋找包含「united」這個字的可用國家/地區:
curl -G \ -d 'location_types=["country"]' \ -d 'type=adgeolocation' \ -d 'q=united' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search Open In Graph API ExplorerOpen In Postman
然後,我們可以尋找包含「movie」這個字的興趣:
curl -G \ -d 'type=adinterest' \ -d 'q=movie' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
根據上述呼叫傳回的值,我們知道可以建立在美國對電影感興趣的廣告受眾。目標設定規格如下所示:
targeting={ "geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, 'name': 'Movies'}] }
廣告組合是一組共用相同單日預算或總經費、排程、帳單、最佳化和目標設定資料的廣告。在此步驟中,您需要從 AdSet
類別建立新物件,並指定:
start_time
和 end_time
進行設定。optimization_goal
進行設定。billing_event
。bid_amount
欄位。若要建立廣告組合,您還需要在步驟 1 中儲存的廣告行銷活動編號:
curl -X POST \
-F 'name="My Reach Ad Set"' \
-F 'optimization_goal="REACH"' \
-F 'billing_event="IMPRESSIONS"' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id="<AD_CAMPAIGN_ID>"' \
-F 'targeting={
"geo_locations": {
"countries": [
"US"
]
},
"facebook_positions": [
"feed"
]
}' \
-F 'status="PAUSED"' \
-F 'promoted_object={
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adsets
建議您建立 PAUSED
狀態的廣告組合,避免在測試期間產生費用。
在此步驟中,您將使用 AdCreative
物件提供廣告的視覺素材。需要提供的資訊取決於您的目標,但常見的屬性有:
根據您的目標,您可能需要提供進階欄位。例如,iOS 應用程式的廣告需要 App Store 網址。
您可以將廣告創意定義為廣告組合的一部分或單獨定義。無論哪種定義方式,我們都會將您的廣告創意儲存在廣告帳號的廣告創意檔案庫中,以便用於廣告。
此範例說明如何提供圖像和建立 AdCreative
物件。
首先,從圖像檔案建立 AdImage
物件:
curl \ -F 'filename=@<IMAGE_PATH>' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adimages
然後,使用圖像雜湊建立 AdCreative
:
curl -X POST \ -F 'name="Sample Creative"' \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "link_data": { "image_hash": "<IMAGE_HASH>", "link": "https://facebook.com/<PAGE_ID>", "message": "try it out" } }' \ -F 'degrees_of_freedom_spec={ "creative_features_spec": { "standard_enhancements": { "enroll_status": "OPT_IN" } } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adcreatives Open In Graph API ExplorerOpen In Postman
您可以前往廣告管理員中的影音資料庫確認圖像是否上傳。
此時,廣告管理員中還不會顯示包含連結的 AdCreative
。預訂廣告後,您就會看到此資料。您可以使用圖形 API 測試工具對廣告創意進行偵錯,並指定您想要讀取的任何欄位:
GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec
最後,建立廣告物件來連結您的 AdCreative
和 AdSet
。將 Ad
的 status
設為 paused
,避免立即下訂單。
curl -X POST \
-F 'name="My Ad"' \
-F 'adset_id="<AD_SET_ID>"' \
-F 'creative={
"creative_id": "<CREATIVE_ID>"
}' \
-F 'status="PAUSED"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/ads
確認您的廣告是否存在於廣告管理員中。依序點擊您剛才建立的行銷活動、廣告組合和廣告。
確認使用 API 預訂廣告沒有問題後,將狀態設為 active
。首先,廣告會經過廣告審查,此時的狀態會是 PENDING_REVIEW
。完成審查後,狀態會恢復為 ACTIVE
。
您也可以複製現有的廣告、廣告素材或行銷活動。這樣可以協助您快速複製行銷活動來變更配置,或建立測試組來擷取成效資料。如需詳細資料,請參閱: