Skip to main content

sync_plans

キャンペーンプランをガバナンスエージェントにプッシュします。プランはキャンペーンの認可パラメーター — 予算制限、チャンネル、フライト日程、認可市場、コンプライアンスポリシー — を定義し、すべての検証における真実の源泉として機能します。

リクエスト

{
  "tool": "sync_plans",
  "arguments": {
    "plans": [
      {
        "plan_id": "plan_q1_2026_launch",
        "brand": {
          "domain": "acmecorp.com"
        },
        "objectives": "Drive awareness for spring product launch among 25-54 adults in the US, focusing on premium video and high-impact display.",
        "budget": {
          "total": 500000,
          "currency": "USD",
          "authority_level": "agent_limited",
          "per_seller_max_pct": 40,
          "reallocation_threshold": 25000
        },
        "channels": {
          "required": ["olv"],
          "allowed": ["olv", "display", "ctv", "audio"],
          "mix_targets": {
            "olv": { "min_pct": 40, "max_pct": 70 },
            "display": { "min_pct": 10, "max_pct": 30 },
            "ctv": { "min_pct": 0, "max_pct": 20 },
            "audio": { "min_pct": 0, "max_pct": 10 }
          }
        },
        "flight": {
          "start": "2026-03-15T00:00:00Z",
          "end": "2026-06-15T00:00:00Z"
        },
        "countries": ["US"],
        "policy_categories": ["age_restricted"],
        "audience": {
          "include": [
            { "type": "description", "description": "Adults 25-54 interested in home improvement" }
          ],
          "exclude": [
            { "type": "description", "description": "Children under 13" }
          ]
        },
        "restricted_attributes": ["health_data"],
        "min_audience_size": 1000,
        "policy_ids": ["us_coppa", "alcohol_advertising"],
        "custom_policies": [
          "No advertising adjacent to competitor content"
        ],
        "approved_sellers": null,
        "ext": {}
      }
    ]
  }
}

レスポンス

{
  "plans": [
    {
      "plan_id": "plan_q1_2026_launch",
      "status": "active",
      "version": 1,
      "categories": [
        { "category_id": "budget_authority", "status": "active" },
        { "category_id": "strategic_alignment", "status": "active" },
        { "category_id": "bias_fairness", "status": "active" },
        { "category_id": "regulatory_compliance", "status": "active" },
        { "category_id": "seller_verification", "status": "active" },
        { "category_id": "brand_policy", "status": "active" }
      ],
      "resolved_policies": [
        { "policy_id": "us_coppa", "source": "explicit", "enforcement": "must", "reason": "Referenced in plan policy_ids" },
        { "policy_id": "alcohol_advertising", "source": "explicit", "enforcement": "should", "reason": "Referenced in plan policy_ids" }
      ]
    }
  ]
}

仕組み

プランはエージェンシーのプランニングツール、ブランドの予算システム、インサーションオーダーなど外部システムから生まれる。sync_plans はそれらをガバナンスエージェントにプッシュして、何を検証すべきかをエージェントに伝える。 既存のプラン(同じ plan_id)を同期すると更新されます。ガバナンスエージェントはバージョンをインクリメントし、アクティブなキャンペーンを更新されたルールに対して再評価します。これにより、予算増加やチャンネル追加などのフライト中の変更に対応できます。 複数のキャンペーン(check_governancereport_plan_outcomegovernance_context で識別)が同じプランを参照できます。ガバナンスエージェントはプランに紐付けられたすべてのキャンペーンにわたって予算を追跡します。 プランはキャンペーンコンテキスト — 予算、チャンネル、フライト日程、認可市場 — を指定します。ガバナンスエージェントはブランドのコンプライアンス設定から適用可能なポリシーを解決するが、プランは policy_ids でレジストリポリシーを直接参照したり、custom_policies でキャンペーン固有のルールを含めたりすることもできます。これにより、集中的なポリシー管理(ブランドレベル)と、バイイングチームが特定のキャンペーンに追加要件を必要とする場合のキャンペーン固有のオーバーライドの両方に対応できます。 countriesregions は2つの目的を果たす:
  1. ジオ強制 — ガバナンスエージェントはプランの市場外をターゲットにするメディアバイを拒否します。regions: ["US-MA"] のプランは明示的にマサチューセッツをターゲットにしないバイをブロックします。
  2. ポリシー解決 — エージェントはプランの市場と管轄が重なるすべてのポリシーを検索します。countries: ["US"] のプランはすべての米国連邦および州レベルのポリシーの対象となります。regions: ["US-MA"] のみのプランはマサチューセッツ固有および連邦ポリシーの対象となります。
これらのフィールドは product-filtersofferingscreate_media_buy と同じ ISO コードおよびセマンティクスを使用し、プロトコル全体で一貫したジオ語彙を確保します。全国展開するファーマキャンペーンは countries: ["US"] を使用し、合法な州に限定される大麻キャンペーンは regions: ["US-CO", "US-CA", "US-MA"] を使用します。

フィールド

リクエスト

フィールド必須説明
plansarrayYes同期する1つ以上のキャンペーンプラン。
plans[].plan_idstringYesこのプランの一意識別子。
plans[].brandBrandRefYesガバナンス対象のブランド。ガバナンスエージェントはブランドのコンプライアンス設定を解決して適用可能なポリシーを決定します。
plans[].objectivesstringYes自然言語のキャンペーン目標。戦略的整合性の検証に使用します。
plans[].budgetobjectYes予算パラメーター。
plans[].budget.totalnumberYes認可された総予算。
plans[].budget.currencystringYesISO 4217 通貨コード。
plans[].budget.authority_levelenumYesagent_fullagent_limited、または human_required仕様を参照。
plans[].budget.per_seller_max_pctnumberNo単一セラーに配分できる予算の最大割合。
plans[].budget.reallocation_thresholdnumberNoagent_limited の場合にエスカレーションが必要な再配分金額の閾値。
plans[].channelsobjectNoチャンネル制約。省略した場合、すべてのチャンネルが許可されます。
plans[].flightobjectYes認可されたフライト日程。このウィンドウ外の日程を持つメディアバイは拒否されます。
plans[].countriesarrayNo認可市場の ISO 3166-1 alpha-2 国コード。ガバナンスエージェントはこれらの国外をターゲットにするバイを拒否し、ポリシー管轄との照合によって適用可能なポリシーを解決します。
plans[].regionsarrayNo認可された国内サブ市場の ISO 3166-2 区画コード(例: US-MA)。指定した場合、国全体ではなくこれらの地域に限定します。
plans[].policy_categoriesarrayNoこのキャンペーンに適用される規制カテゴリ(例: children_directedfair_housing)。ガバナンスエージェントが強制するポリシーレジームを決定します。省略した場合、ガバナンスエージェントはブランドの業種とキャンペーン目標から推論することがあります。
plans[].audienceobjectNoオーディエンスターゲティング制約。キャンペーンがリーチすべき対象(include)とリーチしてはなりません対象(exclude)を定義します。オーディエンス制約を参照。
plans[].restricted_attributesarrayNoターゲティングに使用してはなりません個人データカテゴリ(例: health_dataracial_ethnic_origin)。GDPR 第9条特別カテゴリ。ガバナンスエージェントはこれらの属性を参照するオーディエンスターゲティングにフラグを立てる。
plans[].restricted_attributes_customarrayNoenum でカバーされていない追加の制限属性。管轄固有の制限のための自由形式文字列(例: financial_status)。
plans[].min_audience_sizeintegerNok-匿名性のための最小オーディエンスセグメントサイズ。複数の条件を使用する場合の推定交差オーディエンスに適用されます。
plans[].policy_idsarrayNoこのプランに強制するレジストリポリシー ID。プランの countries/regions と交差させて、地理的に関連するポリシーのみをアクティブにします。
plans[].custom_policiesarrayNoこのキャンペーン固有の自然言語ポリシーステートメント(例: 「競合コンテンツに隣接した広告禁止」)。
plans[].modeenumNoこのプランのガバナンス強制モード: enforceadvisory、または audit。デフォルトは enforceガバナンスモードを参照。
plans[].approved_sellersarray/nullNo承認されたセラーエージェント URL のリスト。null は任意のセラーを意味します。
plans[].delegationsarrayNoこのプランに対して実行権限を持つエージェント。仕様を参照。
plans[].delegations[].agent_urlstringYes委任されたエージェントの URL。
plans[].delegations[].authorityenumYesfullexecute_only、または propose_only
plans[].delegations[].budget_limitobjectNoこのエージェントがコミットできる最大予算。
plans[].delegations[].marketsarrayNoこのエージェントが認可されている ISO 国/地域コード。
plans[].delegations[].expires_atstringNoISO 8601 委任期限。
plans[].portfolioobjectNoポートフォリオレベルのガバナンス制約。仕様を参照。
plans[].portfolio.member_plan_idsarrayYesこのポートフォリオプランでガバナンスされるプラン ID。
plans[].portfolio.total_budget_capobjectNoメンバープラン全体の最大累積予算。
plans[].portfolio.shared_policy_idsarrayNoすべてのメンバープランに強制されるレジストリポリシー ID。
plans[].portfolio.shared_exclusionsarrayNoすべてのメンバープランに対する自然言語除外ルール。
plans[].extobjectNo拡張データ。

レスポンス

フィールド説明
plansarray同期された各プランのステータス。
plans[].plan_idstringプラン識別子。
plans[].statusenumactive(同期成功)または error(同期失敗)。これは同期結果のステータスであり、プランのライフサイクルステータスではありません。
plans[].versionnumberプランバージョン(同期のたびにインクリメント)。
plans[].categoriesarrayこのプランでアクティブな検証カテゴリ。ガバナンスエージェントの宣言されたケイパビリティによって異なります。
plans[].categories[].category_idstring検証カテゴリ識別子。
plans[].categories[].statusenumactive または inactive
plans[].resolved_policiesarrayこのプランに対してガバナンスエージェントが強制するポリシー。明示的に参照されたポリシーと自動適用されたポリシーの両方を含みます。
plans[].resolved_policies[].policy_idstringレジストリポリシー ID。
plans[].resolved_policies[].sourceenumexplicit(設定またはプランで参照)または auto_applied(管轄/ポリシーカテゴリによってマッチ)。
plans[].resolved_policies[].enforcementenummustshould、または may
plans[].resolved_policies[].reasonstringこのポリシーが含まれた理由。

オーディエンス制約

プランは audience フィールドを使ってオーディエンスターゲティング制約を宣言できます。各制約はオーディエンスセレクター — 特定のシグナルへの参照または自然言語の説明のいずれか。 シグナル参照 — データプロバイダーのカタログ内の特定のシグナルを指す:
{
  "type": "signal",
  "catalog_url": "https://signals.dataprovider.com/catalog.json",
  "signal_id": "likely_ev_buyers",
  "value": true
}
説明 — 特定のシグナルにマップしない制約のための自然言語:
{
  "type": "description",
  "description": "Adults aged 25-54 in urban areas",
  "category": "demographic"
}
ガバナンスエージェントは check_governance 中にセラーのターゲティングをこれらの制約に対して評価します。シグナル参照は構造的なマッチングを可能にし、説明はセマンティックな比較を必要とします。

制限属性

restricted_attributes フィールドはターゲティングに使用してはなりません個人データカテゴリを宣言します。値は GDPR 第9条特別カテゴリ: racial_ethnic_originpolitical_opinionsreligious_beliefstrade_union_membershiphealth_datasex_life_sexual_orientationgenetic_databiometric_data ガバナンスエージェントはこれらを独自の restricted_attributes を宣言しているシグナル定義と照合します。マッチする属性を持つシグナルはターゲティングからブロックされます。属性を宣言していないシグナルの場合、ガバナンスエージェントはシグナル名と説明からセマンティックな推論にフォールバックします。

ポリシーカテゴリ

policy_categories フィールドは適用される規制レジームを宣言します。カテゴリはポリシーレジストリで定義され、関連する規制をグループ化する — たとえば children_directed は COPPA、英国 AADC、GDPR 第8条をカバーします。 ポリシーカテゴリは brand.industries とは異なります。インダストリーは企業が何をするかを説明し、ポリシーカテゴリは特定のキャンペーンにどの規制レジームが適用されるかを説明します。一般的な認知キャンペーンを実施する製薬会社(industries: ["pharmaceuticals"])は、特定の薬を宣伝しないキャンペーンには pharmaceutical_advertising をポリシーカテゴリとして必要としないかもしれない。

エラーコード

コード回復説明
INVALID_PLANcorrectableプランに必須フィールドがないか、値が無効です。
BRAND_NOT_FOUNDcorrectableブランドドメインをブランドプロトコル経由で解決できなかった。ガバナンスエージェントは有効なブランド参照なしに適用可能なコンプライアンスポリシーを決定できません。
BUDGET_BELOW_COMMITTEDcorrectableプラン更新時に、すでにコミット済みの金額を下回る予算には削減できません。

関連タスク