Skip to main content
AdCP の主要リリースを高レベルでまとめ、移行のポイントを示します。詳細な技術的変更は CHANGELOG.md を参照してください。

Version 3.0.0-beta.1

ステータス: Beta | Full Changelog | Migration Guide
このリリースはベータ版です。 API はテストに耐える状態ですが、正式版 3.0.0 までに破壊的変更が入る可能性があります。早期利用者からのテストとフィードバックを歓迎します。

変更概要

Version 3.0.0 はメディアバイを超え、ガバナンス、ブランドセーフティ、会話型コマースへ領域を拡張する メジャーリリース です。詳細な移行手順は Migration Guide を参照してください。 🎯 主なテーマ:
  1. メディアチャネル分類 - 5 つのフォーマット起点チャネルから、バイヤーの予算配分を反映した 19 のプランニング指向チャネルへ全面刷新。詳しくは Media Channel Taxonomy
  2. ガバナンスプロトコル - プロパティリスト、コンテンツスタンダード、ブランドセーフティ評価を、協調的なキャリブレーションワークフローと共に定義。
  3. Sponsored Intelligence プロトコル - AI アシスタント内でのブランド会話体験。ブランドエージェントエンドポイントを途切れなく呼び出す方法を定義。詳細は Sponsored Intelligence
  4. プロトコルレベルの能力ディスカバリー - get_adcp_capabilities タスクがエージェントカード拡張を置き換え、実行時に機能、サポートプロトコル、ジオターゲティングシステムを公開。
  5. クリエイティブ割り当ての重み付け - 単純な creative ID 配列を、トラフィック配分とプレースメントターゲティングに対応する重み付き割り当てへ置換。
  6. グローバルなジオターゲティング - 名前付きシステム(Nielsen DMA、UK ITL、Eurostat NUTS2 など)による構造化ターゲティングで国際市場に対応。

破壊的変更の概要

Changev2.xv3.x
Channels5 values19 planning-oriented values
Creative assignmentcreative_ids: [...]creative_assignments: [{...}]
Metro targetinggeo_metros: ["501"]geo_metros: [{ system, code }]
Postal targetinggeo_postal_codesgeo_postal_areas with system
Asset discoveryassets_required: [...]assets: [{ asset_id, required }]
詳細な before/after と移行手順は Migration Guide を参照してください。

新しいプロトコルドメイン

ガバナンスプロトコル

ブランドセーフティと在庫キュレーション:
  • プロパティリスト - create_property_listget_property_listupdate_property_listdelete_property_listlist_property_lists
  • コンテンツスタンダード - create_content_standardsget_content_standardsupdate_content_standardscalibrate_contentvalidate_content_delivery
  • 商品フィルタリング - ガバナンスリストを get_products に渡し、コンプライアンス済み在庫を探索
会話型ブランド体験:
  • セッション管理 - si_check_availabilitysi_initiate_sessionsi_send_messagesi_terminate_session
  • 機能ネゴシエーション - ブランドがモダリティ(音声・動画・アバター)を宣言し、ホストが対応機能を返す
  • コマース連携 - 取引を ACP へ途切れなくハンドオフ
詳細は Sponsored Intelligence Overview

新機能

  • get_adcp_capabilities タスク - エージェントカード拡張に代わる実行時の能力ディスカバリー
  • 統一されたアセットディスカバリー - required ブール値付きの assets 配列で完全なアセット可視化
  • プロパティリストフィルタリング - ガバナンスリストを get_products に渡し、ブランドセーフな在庫を抽出

v3 で削除された項目

RemovedReplacement
adcp-extension.json agent cardget_adcp_capabilities task
list_authorized_properties taskget_adcp_capabilities portfolio section
assets_required in formatsassets array with required boolean
preview_image in formatsformat_card object
creative_ids in packagescreative_assignments array
geo_postal_codesgeo_postal_areas
fixed_rate in pricingfixed_price
price_guidance.floorfloor_price (top-level)

クイック移行チェックリスト

  • チャネル enum を更新(taxonomy guide
  • creative_idscreative_assignments に置き換える
  • メトロ/郵便ターゲティングに system 指定を追加
  • get_adcp_capabilities タスクを実装
  • フォーマット解析を assets 配列に対応させる
完全な移行ガイドを見る →

Version 2.5.0

リリース日: 2025 年 11 月 | Full Changelog

変更概要

Version 2.5.0 は 開発体験と API の磨き込み を目的としたリリースで、型安全性、スキーマ基盤、クリエイティブワークフロー性能を大幅に改善しました。TypeScript/Python のコード生成、厳密なバリデーションセマンティクス、柔軟なスキーマバージョニングにより、本番規模の導入に備えています。 🎯 主なテーマ:
  1. 型安全性とコード生成 - プロトコル全体に判別子フィールドを追加し、TypeScript/Python の型推論を向上、曖昧な共用体を排除。
  2. クリエイティブ一括プレビュー - 最大 50 件のクリエイティブを 1 回の API 呼び出しで生成し、直接 HTML 埋め込みも可能。プレビュー時間を 5〜10 倍短縮。
  3. スキーマ基盤 - セマンティックパス(/schemas/2.5.0/, /schemas/v2/, /schemas/v2.5/)でビルド時バージョン管理を実現し、バージョン固定と自動マイナートラッキングを提供。
  4. API 一貫性 - 原子的なレスポンスセマンティクス(success XOR error)と標準化された Webhook ペイロードで曖昧さを排除し、信頼性を向上。
  5. シグナルプロトコルの改善 - 認可に基づくデプロイメント別のアクティベーションキーを返却し、マルチプラットフォームでの適切なシグナル活性化を実現。
  6. テンプレートフォーマット - accepts_parameters により、実行時寸法や尺などを受け付ける動的フォーマットをサポート。
  7. 商品ディスカバリーの強化 - 日付範囲、予算制約、国ターゲティング、チャネルフィルタを持つ構造化フィルタで検索精度を向上。

主な改善点

型安全性とコード生成

  • 判別子フィールド を判別共用体全体(配信先、価格、プロパティセレクター、プレビューのリクエスト/レスポンス)に追加
  • 原子的レスポンスセマンティクス - すべてのタスクレスポンスで厳密な success XOR error パターン(oneOf 判別子)を採用
  • すべての const フィールドに 明示的な型宣言 を付与し、正確な TypeScript リテラル型を生成
  • 31 個の新しい enum スキーマ をインライン定義から抽出し再利用性を向上

スキーマ基盤

  • ビルド時バージョニング - セマンティックなパス(/schemas/2.5.0/)、メジャーエイリアス(/schemas/v2/)、マイナーエイリアス(/schemas/v2.5/)をサポート
  • 一貫したメディアバイレスポンス - create_media_buyupdate_media_buy が共に完全な Package オブジェクトを返す
  • 標準化された Webhook ペイロード - プロトコルエンベロープをトップレベルに、タスクデータを result フィールドに配置

商品ディスカバリー

  • 構造化フィルタ - フィルタオブジェクトを個別スキーマ(product-filters.jsoncreative-filters.jsonsignal-filters.json)に分離
  • 強化されたフィルタ - 日付範囲(start_dateend_date)、通貨付き予算範囲、国ターゲティング、チャネルフィルタを追加
  • 完全な enum 対応 - フィルタで全 enum 値を制限なく受け付け

シグナルプロトコル

  • アクティベーションキー - activate_signal が認証権限に基づきデプロイメント別のアクティベーションキー(セグメント ID、キー/バリュー)を返却
  • 用語の統一 - リクエストとレスポンス全体で「deployments」に統一

クリエイティブプロトコル

  • バッチプレビュー対応 - preview_creative が 1〜50 件のプレビューを 1 リクエストでサポート
  • 直接 HTML 埋め込み - iframe なしで表示できる生 HTML をレスポンスに含められる
  • シンプルな brand manifest - 必須フィールドを name のみにし、重複した型生成を排除
  • テンプレートフォーマット - accepts_parameters により display_[width]x[height]、video_[duration]s のような動的フォーマットを実現
  • インラインクリエイティブ更新 - sync_creatives タスクが既存キャンペーンへの upsert セマンティクスを提供

ドキュメントとテスト

  • テスト可能なドキュメント - すべてのコード例をライブスキーマで検証可能
  • クライアントライブラリの明示 - イントロに NPM バッジとインストール手順を掲載
  • 50 ファイルで 389 件のリンク切れを修正

移行ガイド

判別子フィールド(Breaking)

多くのスキーマで判別子フィールドが必須になりました。コードを更新してください。 Signal Destinations:
// Before
{
  "platform_id": "ttd"
}

// After
{
  "type": "platform",
  "platform_id": "ttd"
}
Property Selectors:
// Before
{
  "publisher_domain": "cnn.com",
  "property_ids": ["cnn_ctv_app"]
}

// After
{
  "publisher_domain": "cnn.com",
  "selection_type": "by_id",
  "property_ids": ["cnn_ctv_app"]
}
Pricing Options:
// Before
{
  "pricing_model": "cpm",
  "rate": 12.50
}

// After
{
  "pricing_model": "cpm",
  "is_fixed": true,
  "rate": 12.50
}

Webhook ペイロード構造(Breaking)

Webhook ペイロードがトップレベルでプロトコルエンベロープを使用するようになりました。 Before:
{
  "task_id": "task_123",
  "status": "completed",
  "media_buy_id": "mb_456",
  "packages": [...]
}
After:
{
  "task_id": "task_123",
  "task_type": "create_media_buy",
  "status": "completed",
  "timestamp": "2025-11-21T10:30:00Z",
  "result": {
    "media_buy_id": "mb_456",
    "packages": [...]
  }
}

Signal Activation レスポンス(Breaking)

activate_signal のレスポンスが単一キーから deployments 配列へ変更されました。 Before:
{
  "activation_key": "segment_123"
}
After:
{
  "deployments": [
    {
      "destination": {"type": "platform", "platform_id": "ttd"},
      "activation_key": "segment_123",
      "status": "active"
    }
  ]
}

テンプレートフォーマット

フォーマットがパラメーターを受け取り、動的サイズに対応できるようになりました。 テンプレートフォーマット定義:
{
  "format_id": {"agent_url": "https://creative.adcontextprotocol.org", "id": "display_static"},
  "accepts_parameters": ["dimensions"],
  "renders": [{
    "role": "primary",
    "parameters_from_format_id": true
  }]
}
parameters_from_format_id: true は、使用時の format_id から寸法を取得することを示します。 利用例(パラメータ化された format_id):
{
  "format_id": {
    "agent_url": "https://creative.adcontextprotocol.org",
    "id": "display_static",
    "width": 300,
    "height": 250
  }
}
これは display_static テンプレートの 300x250 版を生成します。

商品フィルタリングの強化

get_products に構造化フィルタが追加されました。
{
  "filters": {
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "budget_range": {
      "min": 10000,
      "max": 50000,
      "currency": "USD"
    },
    "countries": ["US", "CA"],
    "channels": ["display", "video"]
  }
}

スキーマバージョニング

利用可能な新しいバージョンパス:
  • /schemas/2.5.0/ - 正確なバージョン(本番利用に推奨)
  • /schemas/v2.5/ - 最新の 2.5.x パッチ(パッチリリースで自動更新)
  • /schemas/v2/ - 最新の 2.x リリース(マイナー/パッチで自動更新)
  • /schemas/v1/ - 後方互換エイリアス(v2 と同一)

破壊的変更

  • 配信先、プロパティセレクター、価格オプション、プレビューリクエストで 判別子フィールドが必須
  • Webhook ペイロード構造 - タスクデータが result フィールド下へ移動し、domain は不要に
  • シグナルアクティベーションレスポンス - activation_key 文字列から deployments 配列へ変更
  • レガシークリエイティブフィールドの削除 - list_creatives レスポンスから media_urlclick_urlduration を削除

非破壊的な追加

  • すべてのタスクリクエストで任意の Application context オブジェクト
  • ビジュアル UI 向けの任意フィールド product_cardformat_card
  • 後方互換の preview_creative バッチプレビューモード
  • 配信レポートでのパッケージ価格フィールド(既存ドキュメントをスキーマで強制)
  • マイナーバージョンのシンボリックリンク (/schemas/v2.5/)

Version 2.3.0

リリース日: 2025 年 10 月 | Full Changelog

変更概要

パブリッシャー所有のプロパティ定義 - プロパティをパブリッシャーが所有し、エージェントが参照するモデルへ変更(IAB Tech Lab sellers.json に倣う)。重複をなくし、プロパティ情報の単一のソース・オブ・トゥルースを提供。 プレースメントターゲティング - 商品が複数のプレースメント(ホームページバナー、記事サイドバーなど)を定義でき、バイヤーは商品購入内でプレースメントごとに異なるクリエイティブを割り当て可能。 シンプルな予算指定 - 予算をパッケージ単位のみに限定し、混在通貨キャンペーンを可能にするとともに、メディアバイレベルでの冗長な集約を排除。

移行ガイド

パブリッシャー所有のプロパティ

Before:
{
  "properties": [{
    "publisher_domain": "cnn.com",
    "property_name": "CNN CTV App",
    "property_tags": ["ctv", "premium"]
  }]
}
After:
{
  "publisher_properties": [
    {
      "publisher_domain": "cnn.com",
      "property_tags": ["ctv"]
    }
  ]
}
バイヤーは https://cnn.com/.well-known/adagents.json からプロパティ定義を取得します。

メディアバイ予算の削除

Before:
{
  "budget": 50000,
  "packages": [...]
}
After:
{
  "packages": [
    {"package_id": "p1", "budget": 30000},
    {"package_id": "p2", "budget": 20000}
  ]
}
予算はパッケージ単位のみで指定します。

破壊的変更

  • 商品の properties フィールド → publisher_properties
  • list_authorized_propertiespublisher_domains 配列を返却
  • create_media_buy/update_media_buy リクエストから budget を削除

Version 2.2.0

リリース日: 2025 年 10 月 | Full Changelog

変更概要

Build Creative の整合性 - build_creative タスクが明確な「manifest-in → manifest-out」の変換モデルに準拠し、パラメーター名を統一。

移行ガイド

Before:
{
  "source_manifest": {...},
  "promoted_offerings": [...]
}
After:
{
  "creative_manifest": {
    "format_id": {...},
    "assets": {
      "promoted_offerings": [...]
    }
  }
}

破壊的変更

  • build_creative パラメーターを source_manifest から creative_manifest に改名
  • トップレベルの promoted_offerings を削除(マニフェストの assets に移動)

Version 2.1.0

リリース日: 2025 年 1 月 | Full Changelog

変更概要

シンプルなアセットスキーマ - アセットのペイロードスキーマとフォーマット要件スキーマを分離し、冗長性を排除。アセットタイプはマニフェストの宣言ではなくフォーマット仕様で決定。

移行ガイド

Before:
{
  "assets": {
    "banner_image": {
      "asset_type": "image",
      "url": "https://cdn.example.com/banner.jpg",
      "width": 300,
      "height": 250
    }
  }
}
After:
{
  "assets": {
    "banner_image": {
      "url": "https://cdn.example.com/banner.jpg",
      "width": 300,
      "height": 250
    }
  }
}

破壊的変更

  • クリエイティブマニフェストから asset_type フィールドを削除
  • スキーマパスを /creative/asset-types/*.json から /core/assets/*-asset.json に変更
  • 制約フィールドをアセットペイロードからフォーマット仕様へ移動