Advantage+アプリキャンペーン

Advantage+アプリキャンペーン(旧称アプリの自動広告)は、機械学習とさまざまな自動化システムを使うことにより、アプリインストール広告の結果を向上させます。このソリューションでキャンペーンのスケール調整をすることにより、最終的に、作業効率を向上させることができます。

定期アプリ広告とAdvantage+アプリキャンペーンの比較を次に示します。

手動アプリ広告Advantage+アプリキャンペーン
1回のキャンペーン
複数の広告セット
複数の広告
1回のキャンペーン
1つの広告セット
複数の広告

手動による調整に依存。

機械学習による調整に依存。

クリエイティブの組み合わせを50個まで手動でテスト。

クリエイティブの組み合わせを50個まで手動でテスト。

現在、iOS 14ユーザーをターゲットとしたSKAdNetwork Advantage+アプリキャンペーンが利用可能。

開始する前に

Advantage+アプリキャンペーンを使うには、次のものが必要です。

  • Facebook開発者アカウント
  • ads_managementads_readのアクセス許可

広告資金提供のために使う広告アカウントに対してGETPOSTの呼び出しをする許可が必要です。

ステップ1: キャンペーンを作成する

以下の必須パラメーターおよび任意パラメーターを指定して、POSTリクエストを/act_{ad_account_id}/campaignsに送信します。

パラメーター説明
adlabels
オブジェクトのリスト

Advantage+アプリキャンペーンに関連する広告ラベル。任意。

buying_type
文字列

現在のところ、Advantage+アプリキャンペーンでサポートされているのはbuying_type AUCTIONだけです。必須。

execution_options
列挙のリスト

デフォルト値: set。その他のオプションは次のとおりです。

  • validate_only: このオプションが指定された場合、API呼び出しで変更は実行されず、各フィールドの値が検証ルールに従っているかどうかの確認が実行されます。
  • include_recommendations: このオプションを単独で使うことはできません。このオプションを使うと、広告オブジェクトの設定のおすすめ事項が含められます。応答にはセクション別の推奨事項が含められますが、それはこの仕様に関するおすすめ事項が存在する場合に限られます。

呼び出しが検証または審査をパスすると、応答は{"success": true}になります。呼び出しがパスしない場合、詳細情報を示すエラーが返されます。任意。

is_skadnetwork_attribution
文字列

SKAdsNetworkキャンペーンを識別します。任意

name
文字列

Advantage+アプリキャンペーンの名前。

objective
列挙

これはキャンペーンの目標です。この広告タイプにはAPP_INSTALLSを指定します。必須。

promoted_object
オブジェクト

この広告セットのすべての広告のプロモーション対象。Advantage+アプリキャンペーンでは、application_idobject_store_urlを指定します。


最適化の目的がAPP_INSTALLSでない場合は、次のものを指定します。

標準イベントカスタムイベント

application_idobject_store_urlcustom_event_type

application_idobject_store_urlcustom_event_strおよびcustom_event_type = OTHERを指定

is_skadnetwork_attributionがtrueに設定されている場合は必須。

smart_promotion_type
オブジェクトのリスト

これがAdvantage+アプリキャンペーンの場合、スマートプロモーションタイプはSMART_APP_PROMOTIONでなければなりません。任意。

special_ad_categories
オブジェクトのリスト

現在のところ、Advantage+アプリキャンペーンで特別な広告カテゴリはサポートされていません。それで、これは[]のように空として指定してください。必須。

status
列挙

有効なオプション: PAUSEDACTIVE

そのステータスがPAUSEDの場合、そのアクティブな広告セットと広告のすべては一時停止され、実質的なステータスはCAMPAIGN_PAUSEDになります。必須。

topline_id
数値文字列または整数

トップラインID。任意。

キャンペーン作成呼び出しの例

curl -X POST \
  -F 'name=Advantage+ app campaigns sample campaign' \
  -F 'objective=APP_INSTALLS' \
  -F 'status=ACTIVE' \
  -F 'special_ad_categories=[]' \
  -F 'smart_promotion_type=SMART_APP_PROMOTION' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_{ad-account-id}/campaigns

すでに作成したキャンペーンを更新する場合については、開始後にキャンペーンを更新するをご覧ください。

ステップ2: キャンペーン作成を検証する(任意)

任意の手順として、Advantage+アプリキャンペーンが正常に作成されたかどうかをチェックできます。そのためには、GETリクエストを/{ad-campaign-id}に対して発行し、その際にsmart_promotion_typeフィールドを指定します。有効なAdvantage+アプリキャンペーンなら、SMART_APP_PROMOTIONを返します。

キャンペーン検証呼び出しの例

curl -X GET -G \
  -d 'fields="smart_promotion_type"' \
  -d 'access_token={access-token}' \
https://graph.facebook.com/v21.0/{ad-campaign-id}

有効なAdvantage+アプリキャンペーンが作成された場合の応答の例は次のとおりです。

{
  "smart_promotion_type": "SMART_APP_PROMOTION",
  "id": {ad-campaign-id}
}

ステップ3: 広告セットを作成する

広告キャンペーンが作成されているなら、広告セットを作成します。広告セットとは、1日の予算または通算予算、スケジュール、入札タイプ、入札情報、ターゲット設定データを共有する広告のグループです。

広告セットを作成するには、POSTリクエストを/act_{ad_account_id}/adsetsに対して発行します。以下のパラメーターを含めることができます。

パラメーター説明

adlabels

オブジェクトのリスト

このオブジェクトに関連付けるラベルのリストを指定します。

任意。

bid_amount

整数

bid_strategyLOWEST_COST_WITH_BID_CAPに設定されている場合は必須。

この広告セットの入札価格上限またはターゲット単価。最小単価入札戦略で使う入札価格上限は、optimization_goalに基づいて結果に対して支払う希望最大入札額として定義されます。ターゲット単価入札戦略で使うターゲット単価は、平均的にFacebook入札で目標を達成しかつ出費が安定したものとなるようにします。


広告レベルのbid_amountが指定されている場合、この値を更新すると、それまでの広告レベル入札が上書きされます。


入札額の単位は、USDやEURなどの通貨の場合はセント、JPYやKRWなどの通貨の場合は基本単位です。入札額は1回ごとのものであり、最小値は1USセントです。ほかの通貨の場合、最小入札額は指定されたUSドルに類似の値です。

bid_constraints

オブジェクトのリスト

bid_strategylowest_cost_with_min_roasに設定されている場合は必須。

広告セット予算と同じように、最小広告費用対効果(ROAS)入札では、これを使うことによってROASの下限が提供されますが、bid_amountbid_constraintsと共に使うことはできません。

bid_strategy

列挙

特定のビジネス目標に合ったこの広告セットの入札戦略を選択します。戦略ごとにメリットとデメリットがあり、特定のoptimization_goalsで利用可能な場合があります。詳しくは、入札の概略、入札戦略をご覧ください。


Advantage+アプリキャンペーンでは、以下の戦略が利用可能です。

  • LOWEST_COST_WITHOUT_CAP
  • LOWEST_COST_WITH_BID_CAP
  • LOWEST_COST_WITH_MIN_ROAS
必須。
billing_event
列挙

この広告セットで使う請求イベント。自動化アプリ広告の場合は、IMPRESSIONSを指定します。必須。

campaign_id
数値文字列または整数

この広告セットの追加先にする有効なAdvantage+アプリキャンペーン広告キャンペーンのID。必須。

campaign_attribution

列挙

この広告セットで使うキャンペーンアトリビューションのタイプ。


  • Metaの合算イベント測定を使う場合は、このフィールドをAEMに設定します。
  • AppleのSKAdNetworkを使う場合は、このフィールドをSKADNETWORKに設定します。

1つのキャンペーンに複数の広告セットがある場合、キャンペーンアトリビューションのタイプがすべての広告セットで同じでなければなりません。

iOS 14以上のキャンペーンを作成する場合、このフィールドは必須です。

daily_budget

int64

アカウントが使用する通貨で定義される日次予算。期間(end_timestart_timeの差)が24時間より長い広告セットの場合にのみ可能。

daily_budgetlifetime_budgetのどちらかは0より大きい値でなければなりません。

任意。

end_time

日時

lifetime_budgetが指定されている場合に必須。

daily_budgetの指定された広告セットを作成する場合は、end_time=0を指定することにより、広告セットを終了日付なしで実施として設定します。時刻はUTC UNIXタイムスタンプで指定します。


例: 2015-03-12 23:59:59-07:00または2015-03-12 23:59:59 PDT

lifetime_budget

int64

通算予算(アカウントの通貨で定義)。これを指定する場合は、end_timeも指定する必要があります。

daily_budgetlifetime_budgetのどちらかは0より大きい値でなければなりません。

任意。
name
文字列

Advantage+アプリキャンペーン広告セットの名前。必須。

optimization_goal
列挙

広告セットの最適化対象。Advantage+アプリキャンペーンでサポートされる最適化目標は次のとおりです。

  • APP_INSTALLS: アプリをインストールする可能性が高い人を対象に最適化します。
  • OFFSITE_CONVERSIONS: 対象サイトでコンバージョンの可能性が高い人を対象に最適化します。
  • APP_INSTALLS_AND_OFFSITE_CONVERSIONS: アプリをインストールし、かつ対象サイトでコンバージョンをする可能性の高い人を対象に最適化します。
  • VALUE: 指定されたアトリビューション期間内で合計購入額を最大にするように最適化します。
必須。
promoted_object
オブジェクト

この広告セットのすべての広告のプロモーション対象。Advantage+アプリキャンペーンでは、application_idobject_store_urlを指定します。


最適化の目的がAPP_INSTALLSでない場合は、次のものを指定します。

標準イベントカスタムイベント

application_idobject_store_urlcustom_event_type

application_idobject_store_urlcustom_event_strおよびcustom_event_type = OTHERを指定

SKAdNetworkキャンペーン以外のすべてのキャンペーンで必須。SKAdNetworkキャンペーンの場合は任意。

status

列挙

作成で有効なのはACTIVEPAUSEDだけです。その他のステータスは更新用に使うことができます。広告セットがPAUSEDに設定されている場合、そのアクティブなすべての広告は一時停止され、実質的なステータスはADSET_PAUSEDになります。

必須。

start_time

日時

セットの開始時刻。例: 2015-03-12 23:59:59-07:00または2015-03-12 23:59:59 PDT。UTC UNIXタイムスタンプで指定する必要があります。

targeting

ターゲットオブジェクト

Advantage+アプリキャンペーン広告セットのターゲット構造体。有効なターゲットオプションはgeo_locationslocalesです。ターゲット設定のフィールドをご覧ください。


例:

{
   "geo_location": {
     "countries": [“US”]
     },
   "locales": [8]
}

Advantage+アプリキャンペーンでは、オペレーティングシステムターゲット設定がサポートされていませんが、SKAdsNetwork Advantage+アプリキャンペーンはiOS14.5以上のユーザーをターゲットに設定されています。

必須。

time_start

日時

この広告セットの実行開始時刻。

time_stop

日時

この広告セットの実行停止時刻。

ターゲット設定のフィールド

パラメーター説明

geo_locations

配列

必須引数のcountriesによって広告セットのオーディエンスを制限するために使用。有効な値: countries。2桁のISO 3166形式のコードの配列。

必須。

locales

配列

指定した地域の共通言語以外の言語の人にターゲットを設定します。このフィールドを使うには、言語のIDを指定します。例えばドイツ語の場合は5になります。詳しくは、ターゲット設定検索、ロケールをご覧ください。

広告セット作成呼び出しの例

curl -X POST \
  -F 'name=Advantage+ app campaigns sample ad set' \
  -F 'campaign_id={campaign-id}' \
  -F 'optimization_goal=APP_INSTALLS' \
  -F 'promoted_object={ "application_id": "{app-id}", "object_store_url": "{store-object-id} }' \
  -F 'daily_budget=<num>' \
  -F 'billing_event=IMPRESSIONS' \
  -F 'targeting={"geo_locations": {"countries": ["US"]}}' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_{ad-account-id}/adsets

すでに作成した広告セットを更新する場合については、開始後に広告セットを更新するをご覧ください。

最適化の互換性

広告セットレベルで、最適化の目標、入札戦略、カスタムイベントタイプを指定する必要があります。それらのフィールドの有効な組み合わせの概略を、以下の表に示します。

最適化の目標入札戦略カスタムイベントタイプ

APP_INSTALLS

LOWEST_COST_WITHOUT_CAPLOWEST_COST_WITH_BID_CAP

該当なし。

APP_INSTALLS_AND_OFFSITE_CONVERSIONS

LOWEST_COST_WITHOUT_CAP

PURCHASE

OFFSITE_CONVERSIONS

LOWEST_COST_WITHOUT_CAPLOWEST_COST_WITH_BID_CAP

すべての標準アプリイベント (PURCHASEADD_TO_CARTINITIATED_CHECKOUTなど)。

VALUE

LOWEST_COST_WITHOUT_CAPLOWEST_COST_WITH_MIN_ROAS

PURCHASE

SKAdNetworkセット作成呼び出しの例

curl -X POST \
  -F 'name=Advantage+ app campaigns sample campaign' \
  -F 'objective=APP_INSTALLS' \
  -F 'status=ACTIVE' \
  -F 'special_ad_categories=[]' \
  -F 'smart_promotion_type=SMART_APP_PROMOTION' \
  -F 'is_skadnetwork_attribution=true' \
  -F 'promoted_object={ "application_id": "{app-id}", "object_store_url": "{object-store-url}" }' \ 
  -F 'access_token={access-token}' \
https://graph.facebook.com/act_{ad-account-id}/campaigns

ステップ4: クリエイティブを指定し、広告を作成する

広告セットが用意されているなら、/act_{ad_account_id}/adsエンドポイントに投稿することにより広告を作成できます。以下のパラメーターを含めることができます。

パラメーター説明

adset_id

int64

必須。
広告セットのID。

adlabels

オブジェクトのリスト

任意。
この広告に関連する広告ラベル。

creative

AdCreative

必須。
この広告で使う広告クリエイティブのクリエイティブ仕様。有効なフィールドは、object_story_specasset_feed_specuse_page_actor_override。詳しくは、クリエイティブのフィールドをご覧ください。


クリエイティブは以下の形式で指定できます。

{
  "creative_id":  {creative-id}
}

クリエイティブ仕様を指定します。

{
  "creative": {
    \"name\": \"<NAME>\", 
    \"object_story_spec\": <SPEC>
  }
}

execution_options

列挙のリスト

任意。
デフォルト値: set
その他のオプション:

  • validate_only: このオプションが指定された場合、API呼び出しで変更は実行されず、各フィールドの値が検証ルールに従っているかどうかの確認が実行されます。
  • synchronous_ad_review: このオプションは単独で使わないようにしてください。これは常にvalidate_onlyと一緒に指定してください。これらのオプションが指定された場合、API呼び出しにより広告整合性検証が実行されます。それには、メッセージ言語のチェックや画像20 %テキストルールなど、さまざまな検証ロジックが含まれます。
  • include_recommendations: このオプションを単独で使うことはできません。このオプションを使うと、広告オブジェクトの設定のおすすめ事項が含められます。応答にはセクション別の推奨事項が含められますが、それはこの仕様に関するおすすめ事項が存在する場合に限られます。

呼び出しが検証または審査をパスすると、応答は{"success": true}になります。呼び出しがパスしない場合、詳細情報を示すエラーが返されます。

name

文字列

必須。
広告の名前。

status

AdCreative

型: 列挙

必須。
作成中に有効なオプション: ACTIVEPAUSED。テスト中に、思いがけない出費になることがないよう、広告のステータスをPAUSEDに設定することをおすすめします。

クリエイティブのフィールド

パラメーター説明

asset_feed_spec

AdAssetFeedSpec

/adcreativesを使う場合に必須。

配置アセットのカスタマイズ複数言語広告で、複数の異なる広告配置または複数の異なる言語で表示されるクリエイティブアセットをカスタマイズするために使用。JSON文字列形式にします。


利用可能なフィールドは次のとおりです。

  • images
  • videos
  • carousels
  • bodies
  • call_to_action_types
  • titles
  • descriptions
  • link_urls
  • ad_formats
  • optimization_type
  • asset_customization_rules

各フィールドについて詳しくは、アセットフィードのオプションをご覧ください。

object_story_spec

AdCreativeObjectStorySpec
必須。

広告に画像または動画を添付する場合、またはカルーセル広告形式を使う場合に使用。また、新しい未公開ページ投稿を作成してその投稿を広告にする場合にもこれを使うことができます。


利用可能なフィールドは次のとおりです。

  • page_id (数値文字列) - 必須。FacebookページのID。このページ上に未公開ページ投稿が作成されます。ユーザーに、そのページの管理者役割または編集者役割がなければなりません。
  • instagram_actor_id (数値文字列) - 任意。ストーリーの投稿先となるInstagramユーザーアカウント。
  • link_data - コールトゥーアクション、写真、カルーセルを指定するには、アプリ広告: 作成で示されている手順に従います。
  • video_data - 動画を指定するには、アプリ広告: 動画付きで作成で示されている手順に従います。

use_page_actor_override

AdCreative

trueに設定されている場合、アプリ広告に関連するFacebookページが表示されます。

広告作成呼び出しの例

クリエイティブ仕様の形式でクリエイティブを指定する場合は次のようになります。

curl -X POST \
  -F 'name=Advantage+ app campaigns sample ad' \
  -F 'adset_id={adset-id}' \
  -F 'creative={"name": {name}, "object_story_spec": {specifications}}' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_{ad-account-id}/ads

creative_idを使う場合は、まず/adcreativesの呼び出しによりクリエイティブを指定する必要があります。

curl -X POST \
-F 'object_story_spec={object-story-specifications}' \
-F 'asset_feed_spec={asset-feed-specifications}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_act_{ad-account-id}/adcreatives

成功した場合、前の呼び出しからは、/adsの呼び出しで使うことのできるcreative_idが返されます。

curl -X POST \
  -F 'name=Advantage+ app campaigns sample ad' \
  -F 'adset_id={adset-id}' \
  -F 'creative={creative-id}' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_{ad-account-id}/ads

すでに作成した広告を更新する場合については、開始後に広告を更新するをご覧ください。

静止画像/動画の例

curl -X POST \
  -F 'name=Advantage+ app campaigns static image/video sample ad' \
  -F 'adset_id={adset-id}' \
  -F 'creative={
        "media_type": "SINGLE_IMAGE",
        "object_story_spec": {
          "instagram_actor_id": "{instagram-actor-id}",
          "page_id": "{page-id}",
          "link_data": {
            "call_to_action": {
              "type": "INSTALL_MOBILE_APP"
            },
            "image_hash": "{image-hash}",
            "link": "{link}",
            "message": "{message}",
            "name": "{name}"
          }
        }
      }' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_{ad-account-id}/ads

配置アセットカスタマイズの例

さまざまに異なる広告配置に表示するためにクリエイティブアセットをカスタマイズする場合。詳しくは、配置アセットのカスタマイズのページをご覧ください。

curl -X POST \
-F 'object_story_spec={
  "instagram_actor_id": "{instagram-actor-id}",
  "page_id": "{page-id}"
    }' \
-F 'asset_feed_spec={
  "ad_formats": [
    "SINGLE_IMAGE"
  ],
  "asset_customization_rules": [
    {
      "customization_spec": {
        "publisher_platforms": [
          "facebook"
        ],
        "facebook_positions": [
          "feed",
          "instream_video"
        ]
      },
      "image_label": {
        "name": "{image-label1}"
      }
    },
    {
      "customization_spec": {
        "publisher_platforms": [
          "instagram"
        ],
        "instagram_positions": [
          "stream"
        ]
      },
      "image_label": {
        "name": "{image-label2}"
      }
    }
  ],
  "bodies": [
    {
      "text": "{text}"
    }
  ],
  "call_to_action_types": [
    "INSTALL_MOBILE_APP"
  ],
  "images": [
    {
      "hash": "{image-hash1}",
      "adlabels": [
        {
          "name": "{image-label1}"
        }
      ]
    },
    {
      "hash": "{image-hash2}",
      "adlabels": [
        {
          "name": "{image-label2}"
        }
      ]
    }
  ],
  "link_urls": [
    {
      "website_url": "{website-url}",
      "display_url": "{display-url}",
      "deeplink_url": "{deeplink-url}"
    }
  ],
  "titles": [
    {
      "text": "{title}"
    }
  ]
}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_act_{ad-account-id}/adcreatives

複数言語広告の例

異なる言語を話す利用者にリーチするため、広告の画像、動画、テキスト、本文など、広告クリエイティブのさまざまなパーツをカスタマイズする場合。詳しくは、複数言語の広告のページをご覧ください。

curl -X POST \
-F 'object_story_spec={
  "instagram_actor_id": "{instagram-actor-id}",
  "page_id": "{page-id}"
    }' \
-F 'asset_feed_spec={
  "ad_formats": [
    "SINGLE_IMAGE"
  ],
  "asset_customization_rules": [
    {
      "is_default": true,
      "customization_spec": {
        "locales": [
          24
        ]
      },
      "title_label": {
        "name": "{title-label-english}"
      },
      "body_label": {
        "name": "{body-label-english}"
      },
      "link_url_label": {
        "name": "{link-label-english}"
      },
      "image_label": {
        "name": "{image-label1}"
      }
    },
    {
      "customization_spec": {
        "locales": [
          9,
          44
        ]
      },
      "title_label": {
        "name": "{title-label-french}"
      },
      "body_label": {
        "name": "{body-label-french}"
      },
      "link_url_label": {
        "name": "{link-label-french}"
      },
      "image_label": {
        "name": "{image-label2}"
      }
    }
  ],
  "bodies": [
    {
      "text": "Primary Text in English",
      "adlabels": [
        {
          "name": "{body-label-english}"
        }
      ]
    },
    {
      "text": "Primary Text in French",
      "adlabels": [
        {
          "name": "{body-label-french}"
        }
      ]
    }
  ],
  "call_to_action_types": [
    "INSTALL_MOBILE_APP"
  ],
  "images": [
    {
      "hash": "{image-hash1}",
      "adlabels": [
        {
          "name": "{image-label1}"
        }
      ]
    },
    {
      "hash": "{image-hash2}",
      "adlabels": [
        {
          "name": "{image-label2}"
        }
      ]
    }
  ],
  "link_urls": [
    {
      "website_url": "{website-url}",
      "display_url": "{display-url}",
      "deeplink_url": "{deeplink-url}",
      "adlabels": [
        {
          "name": "{link-label-english}"
        }
      ]
    },
    {
      "website_url": "{website-url}",
      "display_url": "{display-url}",
      "deeplink_url": "{deeplink-url}",
      "adlabels": [
        {
          "name": "{link-label-french}"
        }
      ]
    }
  ],
  "titles": [
    {
      "text": "English Title",
      "adlabels": [
        {
          "name": "{title-label-english}"
        }
      ]
    },
    {
      "text": "French Title",
      "adlabels": [
        {
          "name": "{title-label-french}"
        }
      ]
    }
  ]
}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_act_{ad-account-id}/adcreatives

複数テキストの例

複数のメインテキストまたはヘッドラインを指定する場合。

curl -X POST \
-F 'object_story_spec={
  "instagram_actor_id": "{instagram-actor-id}",
  "page_id": "{page-id}"
    }' \
-F 'asset_feed_spec={
  "asset_feed_spec": {
    "optimization_type": "DEGREES_OF_FREEDOM",
    "bodies": [
      {
        "text": "Primary Text 1"
      },
      {
        "text": "Primary Text 2"
      },
      {
        "text": "Primary Text 3"
      },
      {
        "text": "Primary Text 4"
      },
      {
        "text": "Primary Text 5"
      }
    ],
    "call_to_action_types": [
      "INSTALL_MOBILE_APP"
    ],
    "images": [
      {
        "hash": "{image-hash}"
      }
    ],
    "link_urls": [
      {
        "website_url": "{website-url}",
        "display_url": "{display-url}",
        "deeplink_url": "{deeplink-url}"
      }
    ],
    "titles": [
      {
        "text": "Title 1"
      },
      {
        "text": "Title 2"
      },
      {
        "text": "Title 3"
      },
      {
        "text": "Title 4"
      },
      {
        "text": "Title 5"
      }
    ]
  }
}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_act_{ad-account-id}/adcreatives

配置アセットカスタマイズ + 複数テキストの例

curl -X POST \
-F 'object_story_spec={
  "instagram_actor_id": "{instagram-actor-id}",
  "page_id": "{page-id}"
    }' \
-F 'asset_feed_spec={
  "ad_formats": [
    "SINGLE_IMAGE"
  ],
  "asset_customization_rules": [
    {
      "customization_spec": {
        "publisher_platforms": [
          "facebook"
        ],
        "facebook_positions": [
          "feed",
          "instream_video"
        ]
      },
      "image_label": {
        "name": "{image-label1}"
      },
      "body_label": {
        "name": "{body-label1}"
      },
      "title_label": {
        "name": "{title-label1}"
      }
    },
    {
      "customization_spec": {
        "publisher_platforms": [
          "instagram"
        ],
        "instagram_positions": [
          "stream"
        ]
      },
      "image_label": {
        "name": "{image-label2}"
      },
      "body_label": {
        "name": "{body-label2}"
      },
      "title_label": {
        "name": "{title-label2}"
      }
    }
  ],
  "bodies": [
    {
      "text": "Primary Text 1",
      "adlabels": [
        {
          "name": "{body-label1}"
        },
        {
          "name": "{body-label2}"
        }
      ]
    },
    {
      "text": "Primary Text 2",
      "adlabels": [
        {
          "name": "{body-label1}"
        },
        {
          "name": "{body-label2}"
        }
      ]
    },
    {
      "text": "Primary Text 3",
      "adlabels": [
        {
          "name": "{body-label1}"
        },
        {
          "name": "{body-label2}"
        }
      ]
    },
    {
      "text": "Primary Text 4",
      "adlabels": [
        {
          "name": "{body-label1}"
        },
        {
          "name": "{body-label2}"
        }
      ]
    },
    {
      "text": "Primary Text 5",
      "adlabels": [
        {
          "name": "{body-label1}"
        },
        {
          "name": "{body-label2}"
        }
      ]
    }
  ],
  "call_to_action_types": [
    "INSTALL_MOBILE_APP"
  ],
  "images": [
    {
      "hash": "{image-hash1}",
      "adlabels": [
        {
          "name": "{image-label1}"
        }
      ]
    },
    {
      "hash": "{image-hash2}",
      "adlabels": [
        {
          "name": "{image-label2}"
        }
      ]
    }
  ],
  "link_urls": [
    {
      "website_url": "{website-url}",
      "display_url": "{display-url}",
      "deeplink_url": "{deeplink-url}"
    }
  ],
  "titles": [
    {
      "text": "Title 1",
      "adlabels": [
        {
          "name": "{title-label1}"
        },
        {
          "name": "{title-label2}"
        }
      ]
    },
    {
      "text": "Title 2",
      "adlabels": [
        {
          "name": "{title-label1}"
        },
        {
          "name": "{title-label2}"
        }
      ]
    },
    {
      "text": "Title 3",
      "adlabels": [
        {
          "name": "{title-label1}"
        },
        {
          "name": "{title-label2}"
        }
      ]
    },
    {
      "text": "Title 4",
      "adlabels": [
        {
          "name": "{title-label1}"
        },
        {
          "name": "{title-label2}"
        }
      ]
    },
    {
      "text": "Title 5",
      "adlabels": [
        {
          "name": "{title-label1}"
        },
        {
          "name": "{title-label2}"
        }
      ]
    }
  ]
}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/act_act_{ad-account-id}/adcreatives

開始後

Advantage+アプリキャンペーンの開始後、広告オブジェクトを更新したり読み取ったりすることが必要になるかもしれません。それらの操作を実行する方法については、以下をご覧ください。広告インサイトの情報については、Metaのアセットフィード仕様、インサイトのドキュメントをご覧ください。

キャンペーンを更新する

自動アプリ広告キャンペーンを更新する必要がある場合は、POSTリクエストを/{campaign_id}に対して発行します。API呼び出しでは、次のパラメーターを使うことができます。

パラメーター説明

adlabels

オブジェクトのリスト

Advantage+アプリキャンペーンに関連付ける広告ラベル。

execution_options

列挙のリスト

デフォルト値: set。使用可能なその他のオプションは次のとおりです。

  • validate_only: このオプションが指定された場合、API呼び出しで変更は実行されず、各フィールドの値が検証ルールに従っているかどうかの確認が実行されます。
  • include_recommendations: このオプションを単独で使うことはできません。このオプションを使うと、広告オブジェクトの設定のおすすめ事項が含められます。応答にはセクション別の推奨事項が含められますが、それはこの仕様に関するおすすめ事項が存在する場合に限られます。

呼び出しが検証または審査をパスすると、応答が{"success": true}になります。呼び出しがパスしない場合、詳細情報を示すエラーが返されます。

name

文字列

Advantage+アプリキャンペーンに付ける新しい名前。

status

列挙

更新API呼び出しには、以下のステータスを使うことができます。

  • ACTIVE
  • PAUSED
  • DELETED
  • ARCHIVED

広告キャンペーンがPAUSEDに設定されている場合、そのアクティブな子オブジェクトは一時停止され、実質的なステータスはCAMPAIGN_PAUSEDになります。

topline_id

数値文字列または整数

トップラインID。

キャンペーン更新の例

curl -X POST \
-F 'name=Advantage+ app campaigns Update Sample Campaign' \
-F 'status=PAUSED' \
-F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/{campaign-id}

広告セットを更新する

自動アプリ広告セットを更新する必要がある場合は、POSTリクエストを/{ad_set_id}に対して発行します。API呼び出しでは、次のパラメーターを使うことができます。

パラメーター説明

adlabels

オブジェクトのリスト

このオブジェクトに関連付けるラベルのリストを指定します。任意。

bid_amount

整数

bid_strategyLOWEST_COST_WITH_BID_CAPに設定されている場合は必須。

この広告セットの入札価格上限またはターゲット単価。最小単価入札戦略で使う入札価格上限は、optimization_goalに基づいて結果に対して支払う希望最大入札額として定義されます。ターゲット単価入札戦略で使うターゲット単価は、平均的にFacebook入札で目標を達成しかつ出費が安定したものとなるようにします。


広告レベルのbid_amountが指定されている場合、この値を更新すると、それまでの広告レベル入札が上書きされます。


入札額の単位は、USDやEURなどの通貨の場合はセント、JPYやKRWなどの通貨の場合は基本単位です。入札額は1回ごとのものであり、最小値は1USセントです。ほかの通貨の場合、最小入札額は指定されたUSドルに類似の値です。

bid_strategy

列挙

特定のビジネス目標に合ったこの広告セットの入札戦略を選択します。戦略ごとにメリットとデメリットがあり、特定のoptimization_goalsで利用可能な場合があります。詳しくは、入札の概略、入札戦略をご覧ください。

Advantage+アプリキャンペーンセットを更新する場合、以下の戦略が利用可能です。

  • LOWEST_COST_WITHOUT_CAP
  • LOWEST_COST_WITH_BID_CAP

キャンペーン予算最適化を有効にする場合は、親キャンペーンレベルでbid_strategyを設定します。

daily_budget

int64

アカウントが使用する通貨で定義される日次予算。期間(end_timestart_timeの差)が24時間より長い広告セットの場合にのみ可能。daily_budgetlifetime_budgetのどちらかは0より大きい値でなければなりません。

end_time

日時

終了時刻。lifetime_budgetが指定された場合は必須。UTC UNIXタイムスタンプで指定する必要があります。例: 2015-03-12 23:59:59-07:00または2015-03-12 23:59:59 PDT


1日の予算が指定された広告セットを作成する場合は、end_time=0を指定することにより、広告セットを終了日付なしで実施中として設定します。

execution_options

列挙のリスト

任意。

デフォルト値: set。その他のオプションは次のとおりです。

  • validate_only: このオプションが指定された場合、API呼び出しで変更は実行されず、各フィールドの値が検証ルールに従っているかどうかの確認が実行されます。
  • include_recommendations: このオプションを単独で使うことはできません。このオプションを使うと、広告オブジェクトの設定のおすすめ事項が含められます。応答にはセクション別の推奨事項が含められますが、それはこの仕様に関するおすすめ事項が存在する場合に限られます。

呼び出しが検証または審査をパスすると、応答が{"success": true}になります。呼び出しがパスしない場合、詳細情報を示すエラーが返されます。

lifetime_budget

int64

通算予算(アカウントの通貨で定義)。これを指定する場合は、end_timeも指定する必要があります。daily_budgetlifetime_budgetのどちらかは0より大きい値でなければなりません。

promoted_object

オブジェクト

キャンペーンの特定の目的では必須。

この広告セットのすべての広告のプロモーション対象。


最適化の目的がAPP_INSTALLSでない場合、使用可能なオプションには以下のものが含まれています。

  • custom_event_type
  • custom_event_str (custom_event_type = OTHERの場合)

start_time

日時

セットの開始時刻。UTC UNIXタイムスタンプで指定する必要があります。例: 2015-03-12 23:59:59-07:00または2015-03-12 23:59:59 PDT

status

列挙

更新で使用可能なオプションは次のとおりです。

  • ACTIVE
  • PAUSED
  • DELETED
  • ARCHIVED

time_start

日時

この広告セットの実行開始時刻。

time_stop

日時

この広告セットの実行停止時刻。

広告セット更新の例

curl -X POST \
  -F 'name=Advantage+ app campaigns sample updated ad set' \
  -F 'bid_strategy=LOWEST_COST_WITH_BID_CAP' \
  -F 'bid_amount=200' \
  -F 'access_token={access-token}' \
https://graph.facebook.com/v21.0/{ad-set-id}

広告を更新する

自動アプリ広告を更新する必要がある場合は、POSTリクエストを/{ad_id}に対して発行します。API呼び出しでは、次のパラメーターを使うことができます。

パラメーター説明

name

文字列

広告の名前。

adlabels

オブジェクトのリスト

この広告に関連する広告ラベル。

execution_options

列挙のリスト

任意。

デフォルト値: set。その他のオプションは次のとおりです。

  • validate_only: このオプションが指定された場合、API呼び出しで変更は実行されず、各フィールドの値が検証ルールに従っているかどうかの確認が実行されます。
  • synchronous_ad_review: このオプションは単独で使わないようにしてください。これは常にvalidate_onlyと一緒に指定してください。これらのオプションが指定された場合、API呼び出しにより広告整合性検証が実行されます。それには、メッセージ言語のチェックや画像20 %テキストルールなど、さまざまな検証ロジックが含まれます。
  • include_recommendations: このオプションを単独で使うことはできません。このオプションを使うと、オブジェクトの設定のおすすめ事項が含められます。応答にはセクション別の推奨事項が含められますが、それはこの仕様に関するおすすめ事項が存在する場合に限られます。

呼び出しが検証または審査をパスすると、応答が{"success": true}になります。呼び出しがパスしない場合、詳細情報を示すエラーが返されます。

status

列挙

オプションは次のとおりです。

  • ACTIVE
  • PAUSED
  • DELETED
  • ARCHIVED

テスト中に、思いがけない出費になることがないよう、広告のステータスをPAUSEDに設定することをおすすめします。

creative

AdCreative

この広告で使う広告クリエイティブのクリエイティブ仕様。有効なフィールドについては、「クリエイティブのフィールド」をご覧ください。クリエイティブ仕様は次のように指定します。

{
  "creative": {
    \"name\": \"<NAME>\", 
    \"object_story_spec\": <SPEC>
   }
}

広告更新の例

curl -X POST \
-F 'name=Advantage+ app campaigns sample update ad' \
-F 'creative={"name": {name}, "object_story_spec": {specifications}}' \
-F 'access_token={access-token}' \
https://graph.facebook.com/{ad-id}