開始使用

按照以下步驟,使用行銷 API 建立您的第一個廣告。

準備工作

您應熟悉圖形 API 和 Facebook 的廣告行銷活動架構。準備好開始進行呼叫時,您需要:

之後,您就可以開始使用。別忘了查看使用行銷 API 的一般最佳作法

步驟 1:建立行銷活動

程序一開始,先從 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/v<API_VERSION>/act_<AD_ACCOUNT_ID>/campaigns

成功後,我們會傳回您新建立之廣告行銷活動的編號。請記得儲存此編號。您也可以在廣告管理員中確認行銷活動是否已建立。

相關資源:

步驟 2:定義目標設定

在開始建立廣告組合之前,您需要先定義目標廣告受眾。在下一個步驟中,您將建立廣告組合並指定廣告受眾的屬性。

您有許多目標設定選項。在此範例中,我們使用目標設定搜尋來尋找可用於設定廣告受眾的預先定義值。

首先,我們要尋找包含「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

然後,我們可以尋找包含「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'}]
}

步驟 3:建立廣告組合,並定義預算、帳單、最佳化和期間

廣告組合是一組共用相同單日預算或總經費、排程、帳單、最佳化和目標設定資料的廣告。在此步驟中,您需要從 AdSet 類別建立新物件,並指定:

  • 期間:廣告刊登時間。使用 start_timeend_time 進行設定。
  • 預算:預計花費的金額。使用 daily_budgetlifetime_budget
  • 最佳化:您希望透過廣告達到的成果。使用 optimization_goal 進行設定。
  • 帳單:您想要使用的付款方式。使用 billing_event
  • 出價:您要為最佳化事件出價的金額。使用 bid_amount 欄位。
  • 目標設定:使用在步驟 2 中建立的目標設定規格。

若要建立廣告組合,您還需要在步驟 1 中儲存的廣告行銷活動編號:

curl \
  -F 'name=My Ad Set' \
  -F 'optimization_goal=REACH' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'bid_amount=2' \
  -F 'daily_budget=1000' \
  -F 'campaign_id=<CAMPAIGN_ID>' \
  -F 'targeting={"geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, "name": "Movies"}]}' \
  -F 'start_time=2024-10-06T04:45:17+0000' \
  -F 'status=PAUSED' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adsets

建議您建立 PAUSED 狀態的廣告組合,避免在測試期間產生費用。

步驟 4:提供廣告創意

參考文件

在此步驟中,您將使用 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

您可以前往廣告管理員中的影音資料庫確認圖像是否上傳。

此時,廣告管理員中還不會顯示包含連結的 AdCreative。預訂廣告後,您就會看到此資料。您可以使用圖形 API 測試工具對廣告創意進行偵錯,並指定您想要讀取的任何欄位:

GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec

步驟 5:投遞排程

最後,建立廣告物件來連結您的 AdCreativeAdSet。將 Adstatus 設為 paused,避免立即下訂單。

curl -X POST \
  -F 'name="My Ad"' \
  -F 'adset_id="&lt;AD_SET_ID&gt;"' \
  -F 'creative={
       "creative_id": "<CREATIVE_ID>"
     }' \
  -F 'status="PAUSED"' \
  -F 'access_token=<ACCESS_TOKEN>' \
  https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/ads

確認您的廣告是否存在於廣告管理員中。依序點擊您剛才建立的行銷活動、廣告組合和廣告。

確認使用 API 預訂廣告沒有問題後,將狀態設為 active。首先,廣告會經過廣告審查,此時的狀態會是 PENDING_REVIEW。完成審查後,狀態會恢復為 ACTIVE

複製廣告

您也可以複製現有的廣告、廣告素材或行銷活動。這樣可以協助您快速複製行銷活動來變更配置,或建立測試組來擷取成效資料。如需詳細資料,請參閱: