メインコンテンツまでスキップ

ルールの作成

Britva ルールは、入力として 1 件の広告を受け取り、それをどう扱うか — 一時停止するか、逆に有効化するか — を決める小さな JavaScript 関数です。この記事は、エディターで新しいルールを作成するためのステップバイステップガイドです。

すべてのルールは checkAd(ad) 関数です。その中で広告のメトリクス(ad.* フィールド経由)をチェックし、条件が満たされたらアクション — たとえば一時停止 — を呼び出します。この仕組み自体について詳しくは 自動ルールの仕組み のセクションをご覧ください。

ルールエディターの全体像 — 左に AI アシスタント、中央にコードエディター、右に«テスト»と«マクロ»タブ。

ルールを作成する方法

  1. Britva セクションを開き、ルール タブで + 新しいルール をクリックします。 ルール一覧、右上の«+ 新しいルール»ボタン。

    新しいルールエディターの独立したページが開きます(ポップアップウィンドウではありません)。

  2. 上部のフィールドにルールの 名前 を入力します — 短く分かりやすく、たとえば「デポなしで一時停止」など。

  3. 名前の隣のドロップダウンでルールの スコープ を選びます:globalteamuser。利用できる選択肢はあなたの役割によります(フィールドリファレンス をご覧ください)。 エディターのヘッダー — 名前フィールド、スコープセレクター、優先度フィールド、«有効»トグル。

  4. 中央のエディターでルールのコードを書きます。デフォルトでは checkAd(ad) 関数とコメントアウトされた例を含むテンプレートが入っています:

    JavaScript
    /** @param {Ad} ad */
    function checkAd(ad) {
    // Пример: пауза при 0 депов и большом расходе.
    // if (ad.deps_total === 0 && ad.spend_24h > 100) {
    // pauseAd('24h', 'no deps');
    // }
    }

    例のコメントを解除するか、独自のロジックを書いてください。どのメトリクスが使えるか思い出すには、右側の マクロ タブを開いてください — ad.* フィールドの完全なリファレンスが入っています。いずれかのフィールドをクリックするとコードに挿入されます。 «マクロ»タブ — 検索付きの ad.* フィールドのリファレンス。

  5. (任意)手でコードを書きたくない場合は、左の列の AIアシスタント にタスクを言葉で説明してください(「デポジットがなく 1 日の消化が 100 を超える広告を一時停止」)。アシスタントは完成したコードを提案し、ワンクリックでエディターに挿入できます。

    🎬 GIF:AI アシスタントへのリクエストと、提案されたコードのエディターへの挿入。

  6. 右側の テスト タブでルールをテストします — 現在の実際の広告に対して実行し、そのうちどれが影響を受けるかを表示します。これは安全です:テスト中は何も一時停止されません。詳しくは ルールのテスト のセクションをご覧ください。

  7. 有効 トグルがオンになっていることを確認し、作成 をクリックします。

    保存後、ルールは ルール タブの一覧に表示され、共通のチェックサイクルで動作を開始します。

ヒント

ルールを無効の状態で作成し(有効 チェックボックスを外す)、テスト タブで実行し、結果に確信が持ててから初めて有効化してください。こうすれば、設定中に実際の広告で発動することがありません。

フィールドリファレンス

フィールドはコンパクトなエディターヘッダーに、左から右へまとめられています。

名前 — ルールの短い名前で、一覧やログで見つける手がかりになります。保存に必須です。

スコープglobal / team / user)— 誰がルールを見て、どの広告をチェックするか:

  • user — あなた個人のルールで、あなたの広告だけをチェックします;
  • team — チームのルール(チームリードと管理者が利用可能);
  • global — 全員共通のルール(管理者のみ利用可能)。

選択肢の一覧はあなたの役割によります:通常のバイヤーは user のみ、チームリードは teamuser、管理者は 3 つすべてを見られます。スコープは作成時に設定されます。

rank(優先度)— ルールの順序を決める数値で、数が小さいほど優先度が高くなります。デフォルトは 100 です。複数のルールが 1 件の広告を主張する場合、rank の小さいルールが先に実行されます。

有効 / 無効 — トグルです。有効なルールだけがチェックに参加します。無効なルールは保存されますが発動しません — まだ調整中の間に便利です。

desc説明 フィールドを展開する矢印ボタンです。自由なテキスト:ルールが何をなぜ行うか。任意ですが、同僚や将来の自分のために役立ちます。

JS codefunction checkAd(ad))— 中央のエディター内のルール本体です。保存に必須です。関数の中では次にアクセスできます:

  • 広告フィールド ad.*(消化、デポジット、ROAS、ジオなど)— 完全なリストは マクロ タブにあります;
  • アクション — 一時停止と再開(アクション をご覧ください)。

最小の例 — 24 時間で消化はあるがデポジットがない場合に広告を 1 日一時停止する:

JavaScript
/** @param {Ad} ad */
function checkAd(ad) {
if (ad.deps_total === 0 && ad.spend_24h > 100) {
pauseAd('24h', 'нет депов при расходе > 100');
}
}

ここで pauseAd('24h', 'причина') は広告そのものを 24 時間一時停止します。広告セット(pauseAdset(...))やキャンペーン(pauseCampaign(...))も一時停止できます。アクションの完全なリスト、呼び出し形式、一時停止の種類は アクション のセクションにあります。

注意

関数の名前は正確に checkAd でなければならず、単一のパラメーター ad を取る必要があります。関数の上の /** @param {Ad} ad */ 行を削除しないでください — これがエディター内で ad.* フィールドのヒントを有効にします。

ヒント

フィールド名に自信がありませんか? マクロ タブを開いて、名前または説明で検索してください。フィールドはグループ分けされています:ad、creative、offer、geo、network、前期間のメトリクス。

作成後に表示されるもの

保存済み(既存)のルールには、エディターの下に 2 つのタブが利用できます:

  • 保留中 — このルールが現在一時停止で保留している広告。隣にその数のカウンターがあります。
  • アクション履歴 — このルールのすべての発動のログ:いつ、どの広告に、何が行われたか。

新しく未保存のルールにはこれらのタブはありません — 最初の保存後に表示されます。

ルールの削除

削除(エディター右上の メニューの項目)は履歴を消去しません:ルールは無効状態に移され、その発動のログは保持されます。しかしルール自体をワンクリックで有効に戻すことはできません — 慎重に行ってください。

次のステップ