広告ルールエンジンを使うためのAPI呼び出しの例をご覧ください。
curl -G \ -d 'fields=name,evaluation_spec,execution_spec,status' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_library
curl -G \ -d 'fields=name,evaluation_spec,execution_spec,status' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>
仕様を更新するには、変更されないものも含めてすべてのフィールドに入力します。以下の例では、ルールトリガーを1000インプレッションごとにするよう更新します。ルールのステータスを更新しても仕様の変更は必要ありません。
curl \ -F 'evaluation_spec={ "evaluation_type": ..., "trigger" : { "type": "STATS_MILESTONE", "field": "impressions", "value": 1000, "operator": "EQUAL" }, "filters": ... ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>
この例では、200クリックを超えるすべての広告を選択するようフィルターを更新しています。entity_type
やtime_preset
などのほかのフィルターもこの更新に含める必要があります。
curl \ -F 'evaluation_spec={ "evaluation_type": ..., "filters" : [ { "field": "clicks", "value": 200, "operator": "GREATER_THAN", }, { ... ] }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>
curl -X DELETE \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>
各ルールの実行の履歴データにアクセスするエンドポイントがあります。デフォルトでは、このエンドポイントは結果やアクションなど、関連するデータを提供します。編集のトラッキングのために、実行するたびにルールのステータスを確認することもできます。
curl -G \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/history
さらに、このエンドポイントでは、object_id
、action
、hide_no_changes
データ用の3つのフィルタリングメカニズムをサポートしています。object_id
やaction
で結果をフィルタリングすると、その object_id
またはaction
タイプの結果のみが表示されます。
hide_no_changes
フラグを使用して結果をフィルタリングして、変更がないすべての実行を除外したりすることもできます。これらのフィルターを組み合わせれば、さらに検索結果を絞り込むことができます。
curl -G \ -d 'object_id=123' \ -d 'action=CHANGED_BID' \ -d 'hide_no_changes=true' \ -d "access_token=<ACCESS_TOKEN>" \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/history
アカウントのすべてのルールの集計履歴データにアクセスするエンドポイントがあります。デフォルトでは、このエンドポイントはルールの実行履歴と同じ関連データのほか、各エントリのルールのIDも提供します。
このエンドポイントのエントリは、新しいものから古いものの順に並べられます。このエンドポイントでは、上記と同じフィルタリングメカニズムである、object_id
、action
、hide_no_changes
もサポートしています。
curl -G \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_ACCOUNT_ID>/adrules_history
スケジュールベースルールの評価をプレビューするエンドポイントがあります。POST
リクエストを送信すると、このエンドポイントは、指定されたルールのフィルターの条件をその時点で満たすオブジェクトのリストを返します。
curl \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/preview
スケジュールベースルールを手動で実行するエンドポイントがあります。このエンドポイントにPOST
リクエストを送信すると、そのルールの実行がすぐにスケジュールされます。
curl \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_RULE_ID>/execute
ルールの実行完了後、実行履歴から結果を取得することができます。
各広告、広告セット、広告キャンペーンを管理するすべてのルールを読み込むエンドポイントがあります。デフォルトでは、ルールはid
フィルターによって静的に参照されるオブジェクトや、entity_type
フィルターによって動的に参照されるオブジェクトを管理します。
このエンドポイントでは、オプションのpass_evaluation
もサポートしています。このため、オブジェクトが参照時にルールのフィルターを渡すかどうかによって、ルールのリストをさらに制限することができます。pass_evaluation
がtrue
になっている場合、オブジェクトを返すすべてのプレビュー済みのルールが返されます。false
になっている場合、オブジェクトを返さないすべてのルールが返されます。
curl \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<VERSION>/<AD_OBJECT_ID>/adrules_governed