Skip to main content

v3 レディネスチェックリスト

AdCP ストーリーボードテストは v3 プロトコルサポートを必要とします。v2 のみをサポートするエージェントは失敗します。このページは、v3 バイヤーとの統合テストのブロックを解除する最小限の変更をカバーします — 完全な移行ではありません。完全なリストについては 移行ガイド を参照。
ストーリーボードテストは、v3 サポートを宣言しない任意のエージェントをハードに失敗させます。まずこれら 8 項目を完了し、次に 完全な移行チェックリスト を進めてください。v2 は 2026 年 8 月 1 日(UTC)に完全に非推奨になります — v2 sunset ページ を参照。

1. get_adcp_capabilities を実装する

v3 バイヤーは、エージェントが何をサポートするかを発見するためにこのタスクを最初に呼びます。それなしでは、バイヤーはプロトコルバージョン、サポートチャネル、価格モデル、機能を判断できません。 これは最も重要な単一の変更です — バイヤー(とストーリーボードテスト)が v3 エージェントを v2 から区別する方法です。 最低限次を返します: major_versions: [3]supported_protocolsfeatures オブジェクト。

get_adcp_capabilities リファレンス

タスク仕様とレスポンススキーマ。

2. チャネルタクソノミーを更新する

v3 は v2 の 9 チャネルを 20 のプランニング指向チャネルに置き換えます。バイヤーは v3 チャネル値を送ります — エージェントはそれらを認識しなければなりません。 displaysocialctvpodcastdooh は変更なし。

チャネル移行

完全なマッピング表と例。

3. 価格フィールドをリネームする

2 つのフィールドリネーム — 同じセマンティクス、異なる名前: バイヤーは v3 スキーマに対して検証します。古いフィールド名はスキーマ検証失敗を引き起こします。

価格移行

before/after の例と price guidance の再構築。

4. creative_assignments をサポートする

creative_ids(文字列配列)は、配信重み付けとプレースメントターゲティングを持つ creative_assignments(オブジェクト配列)に置き換えられます。

クリエイティブ移行

重み付き割り当て、プレースメントターゲティング、アセットディスカバリー。

5. brand_manifest の代わりに brand ref を受け入れる

バイヤーは、インラインマニフェストの代わりに参照({ domain, brand_id })としてブランドアイデンティティを渡します。エージェントは実行時に brand.json またはレジストリからブランドデータを解決します。

ブランドアイデンティティ移行

BrandRef スキーマ、解決フロー、移行ステップ。

6. get_productsbuying_mode を扱う

buying_mode は今やすべての get_products リクエストで必須です。brief がキュレーションされたプロダクトディスカバリーのベースラインモードです。エージェントが media_buy.buying_modeswholesale または refine を宣言する場合、それらのモードセマンティクスも扱わなければなりません。

get_products リファレンス

buying_mode を含む完全なリクエストスキーマ。

7. buyer_ref を削除 — idempotency_key を使う

v3 はすべてのリクエストとレスポンスから buyer_refbuyer_campaign_refcampaign_ref を削除します。セラー割り当ての media_buy_idpackage_id が今や唯一の正準識別子です。 エージェントが重複排除に buyer_ref に依存していた場合、代わりに新しい idempotency_key フィールドを使ってください。idempotency_key(UUID v4)はすべての変更リクエストで 必須 です — エージェントはそれを省略するリクエストを INVALID_REQUEST で拒否しなければならず(MUST)、キーが異なるペイロードで再利用されたとき IDEMPOTENCY_CONFLICT を返さなければなりません(MUST)。規範的セマンティクスについては 冪等性実装ガイド を参照。 エージェントが内部トラッキングや相関(例: キャンペーン ID、セッショントレース、UI 状態へのマッピング)に buyer_ref を使った場合、代わりに context フィールドを使ってください。context は、すべてのレスポンスと webhook で変更なくエコーされる不透明なオブジェクトです — エージェントはそれを決してパースしたり、それに基づいて行動したりしてはなりません。create_media_buy のパッケージ相関については、非推奨のトップレベル buyer_ref ではなく packages[i].context(例えば context.buyer_ref)にパッケージごとのトラッキングを置いてください。3.1+ セラーは明示的なパッケージレスポンスに product_id をエコーしなければならず(MUST)、パッケージコンテキストはそうしないレガシーセラーのフォールバックのままです。
パッケージレベルのラインアイテム相関については、バイレベルのコンテキストを各パッケージのフォールバック相関ハンドルと分けて保ちます:
test=false

8. sync_accounts を実装する

v3 バイヤーは、バイを置く前に課金関係を確立します。エージェントは sync_accounts 呼び出しを受け入れ、バイヤーが後続のリクエストに含めるアカウント参照を返さなければなりません。

Accounts Protocol

アカウントプロビジョニング、ライフサイクル、sync_accounts タスク。

これら 8 項目の後

これらが整ったら、エージェントに対してストーリーボードテストを実行してください。既存のトラック(products、media buy、creative)は v3 スキーマを詳細に検証し、残るフィールドレベルの問題をサーフェスします。 完全な移行 — ジオターゲティング、最適化目標、シグナル、オーディエンス、アトリビューションを含む — については 完全な移行ガイド を参照。