Skip to main content

価格の移行

AdCP 3.0 は明確化のために価格フィールドの名前を変更し、ハード制約(パブリッシャーが適用する価格)とソフトヒント(バイヤーが入札を調整するための過去データ)を分離します。

変更内容

v2 フィールドv3 フィールド変更タイプ
fixed_ratefixed_price名前変更
price_guidance.floorfloor_priceトップレベルに移動
pricing_modelcurrencypricing_option_idprice_guidance パーセンタイル(p25p50p75p90)は変更なし。

ハード制約とソフトヒント

v3 は明示的なセマンティックの区別を設ける: ハード制約 — 違反した場合に入札が拒否されるパブリッシャー適用の価格:
  • fixed_price — ユニットあたりの正確な価格(固定価格ディール)
  • floor_price — 許容される最低入札額(オークション価格)
これらは相互排他的です。価格オプションは fixed_price(保証レート)または floor_price(最低価格付きオークション)のいずれかを持ち、両方は持たない。 ソフトヒント — バイヤーが入札を調整するための過去のパーセンタイル:
  • price_guidance.p25 — 最近の落札入札の25パーセンタイル
  • price_guidance.p50 — 最近の落札入札の中央値
  • price_guidance.p75 — 最近の落札入札の75パーセンタイル
  • price_guidance.p90 — 最近の落札入札の90パーセンタイル

ディールタイプのマッピング

これらのフィールドは標準的なプログラマティックディールタイプにマッピングされます:
ディールタイプAdCP フィールド説明
プログラマティックギャランティード(PG)fixed_price固定 CPM、保証配信
プリファードディールfixed_price固定 CPM、非保証(バイヤーがファーストルック)
プライベートマーケットプレイス(PMP)floor_price最低入札付きオークション
オープンオークションどちらでもないフロアや固定価格なし — オープン入札
PG とプリファードディールはどちらも fixed_price を使用します。両者の区別は価格ではなく配信コミットメントにある — PG は配信ボリュームを保証するが、プリファードディールはボリューム保証なしでファーストルックアクセスを提供します。

固定価格ディール

v2:
{
  "pricing_option_id": "cpm_usd_fixed",
  "pricing_model": "cpm",
  "currency": "USD",
  "fixed_rate": 25.00
}
v3:
{
  "$schema": "https://adcontextprotocol.org/schemas/v3/pricing-options/cpm-option.json",
  "pricing_option_id": "cpm_usd_fixed",
  "pricing_model": "cpm",
  "currency": "USD",
  "fixed_price": 25.00
}
fixed_ratefixed_price に名前変更します。構造的な変更はない。

オークション価格

v2:
{
  "pricing_option_id": "cpm_usd_auction",
  "pricing_model": "cpm",
  "currency": "USD",
  "price_guidance": {
    "floor": 10.00,
    "p50": 15.00,
    "p75": 18.00
  }
}
v3:
{
  "$schema": "https://adcontextprotocol.org/schemas/v3/pricing-options/cpm-option.json",
  "pricing_option_id": "cpm_usd_auction",
  "pricing_model": "cpm",
  "currency": "USD",
  "floor_price": 10.00,
  "price_guidance": {
    "p50": 15.00,
    "p75": 18.00
  }
}
2つの変更:
  1. price_guidance.floor がトップレベルの floor_price に移動
  2. price_guidance はパーセンタイルヒントのみを保持

価格ガイダンスオブジェクト

v3 の price_guidance オブジェクトには統計パーセンタイルのみが含まれます:
{
  "$schema": "https://adcontextprotocol.org/schemas/v3/pricing-options/price-guidance.json",
  "p25": 8.50,
  "p50": 15.00,
  "p75": 18.00,
  "p90": 22.00
}
すべてのフィールドはオプションです。パブリッシャーは提供できるパーセンタイルを含めます。

フラットレート価格

v2(識別子なしのパラメーター付き DOOH):
{
  "pricing_option_id": "dooh_times_square",
  "pricing_model": "flat_rate",
  "currency": "USD",
  "fixed_rate": 50000.00,
  "parameters": {
    "duration_hours": 24,
    "sov_percentage": 100,
    "estimated_impressions": 1500000
  }
}
v3:
{
  "$schema": "https://adcontextprotocol.org/schemas/v3/pricing-options/flat-rate-option.json",
  "pricing_option_id": "dooh_times_square",
  "pricing_model": "flat_rate",
  "currency": "USD",
  "fixed_price": 50000.00,
  "parameters": {
    "type": "dooh",
    "duration_hours": 24,
    "sov_percentage": 100,
    "estimated_impressions": 1500000
  }
}
2つの変更:
  1. fixed_ratefixed_price に名前変更(他の価格モデルと同じ)
  2. parameters に DOOH インベントリの必須 "type": "dooh" 識別子が追加
v2 で parameters がなかったスポンサーシップの flat_rate オプションは v3 でも引き続き省略します。fixed_price はフラットレートオプションでオプションであることに注意 — 存在しない場合、フラットレートはオークションベースだ(まれだが一部の DOOH インベントリで有効)。

最低支出

v3 はすべての価格オプションにオプションの min_spend_per_package フィールドを追加します:
{
  "$schema": "https://adcontextprotocol.org/schemas/v3/pricing-options/cpm-option.json",
  "pricing_option_id": "cpm_usd_premium",
  "pricing_model": "cpm",
  "currency": "USD",
  "floor_price": 15.00,
  "min_spend_per_package": 5000.00,
  "price_guidance": {
    "p50": 22.00,
    "p75": 28.00
  }
}
これにより、パブリッシャーはパッケージごとの最低支出要件を宣言できます。

移行期間中の処理

移行中に、リーダーは古いフィールド名と新しいフィールド名の両方に遭遇する場合があります。両方の確認を検討する:
test=false
const price = option.fixed_price ?? option.fixed_rate;
const floor = option.floor_price ?? option.price_guidance?.floor;
v3 ライターは新しいフィールド名のみを出力する必要があります。古いフィールド名(fixed_rateprice_guidance.floor)は v3 スキーマバリデーションで認識されない。上流のすべてのセラーが v3 スキーマに移行したら v2 フォールバックを削除します。

移行ステップ

1

fixed_rate の名前を変更する

すべての価格オプションで fixed_ratefixed_price に名前変更します。
2

floor を移動する

floorprice_guidance の内部からトップレベルの floor_price に移動します。
3

price_guidance をクリーンアップする

price_guidance オブジェクトから floor を削除する(パーセンタイルのみが残る)。
4

リーダーを更新する

新しいフィールド名を探すようにコードを更新します。移行中は両方の一時的なフォールバックを検討します。
5

オークション入札をテストする

フロア適用が新しいフィールド位置で機能することを確認します。
6

スキーマに対して検証する

各価格モデルは /schemas/v3/pricing-options/ に独自のスキーマを持ちます。

メディアプロダクト

プロダクトが価格オプション、チャンネル、ケイパビリティをどう宣言するか。

関連: チャンネル | ジオターゲティング | クリエイティブ | カタログ | アトリビューション | AdCP 3.0 概要