> ## Documentation Index
> Fetch the complete documentation index at: https://adcp-docs-ja.pier1.co.jp/llms.txt
> Use this file to discover all available pages before exploring further.

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

> AdCP ブランドアイデンティティを beta.3 から rc.1 に移行します。インライン brand_manifest オブジェクトを、brand.json またはコミュニティレジストリで解決される BrandRef 参照に置き換える。

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

AdCP 3.0 rc.1 はインラインの `brand_manifest` オブジェクトを軽量なブランド参照（`BrandRef`）に置き換える。ブランドデータは実行時に `/.well-known/brand.json` またはコミュニティブランドレジストリから解決されます。

## 変更内容

| beta.3                        | rc.1                         | 注記                                                                          |
| ----------------------------- | ---------------------------- | --------------------------------------------------------------------------- |
| `brand_manifest`（インラインオブジェクト） | `brand`（`BrandRef`）          | 参照は実行時に解決される                                                                |
| ブランドデータをすべてのリクエストで渡す          | ブランドデータを `brand.json` から一度取得 | キャッシュ推奨（24時間 TTL）                                                           |
| 標準的なアイデンティティフォーマットなし          | `/.well-known/brand.json` 仕様 | 4つのバリアント: House Portfolio、Brand Agent、House Redirect、Authoritative Location |

## BrandRef スキーマ

ブランド参照はドメインとオプションの `brand_id` でブランドを識別する:

```json theme={null}
{
  "$schema": "https://adcontextprotocol.org/schemas/latest/core/brand-ref.json",
  "domain": "nova-brands.com",
  "brand_id": "spark"
}
```

* `domain`（必須）— `/.well-known/brand.json` がホストされているドメイン、またはブランドの運営ドメイン
* `brand_id`（オプション）— ハウスポートフォリオ内のブランド識別子。シングルブランドドメインの場合は省略します。

シングルブランドドメインの場合:

```json theme={null}
{
  "domain": "acme-corp.com"
}
```

## brand が使われる場所

| タスク                | 必須? | 目的                             |
| ------------------ | --- | ------------------------------ |
| `create_media_buy` | はい  | キャンペーンアイデンティティ — 一度設定したら変更不可   |
| `get_products`     | いいえ | 探索コンテキスト。`catalog` が指定された場合は必須 |
| `build_creative`   | いいえ | クリエイティブ生成のためのカラー、ロゴ、トーンを解決する   |

`brand` は `update_media_buy`（作成時から不変）、`sync_creatives`（アカウントにスコープ）、`sync_catalogs`（アカウントにスコープ）には使われない。

## 変更前後

**beta.3 — create\_media\_buy でのインライン brand\_manifest:**

```json test=false theme={null}
{
  "brand_manifest": {
    "name": "Spark",
    "domain": "spark.nova-brands.com",
    "logo_url": "https://spark.nova-brands.com/logo.png",
    "industries": ["consumer_electronics"]
  },
  "account": { "account_id": "acct_nova" },
  "start_time": "2025-04-01T00:00:00Z",
  "end_time": "2025-04-30T23:59:59Z"
}
```

**rc.1 — ブランド参照:**

```json test=false theme={null}
{
  "brand": {
    "domain": "nova-brands.com",
    "brand_id": "spark"
  },
  "account": { "account_id": "acct_nova" },
  "start_time": "2025-04-01T00:00:00Z",
  "end_time": "2025-04-30T23:59:59Z"
}
```

セラーはブランドプロトコルを介して `nova-brands.com` + `spark` を完全なブランドアイデンティティ（ロゴ、カラー、トーン、プロパティ）に解決します。

## 解決フロー

`BrandRef` が与えられた場合、解決の手順は次のとおり:

1. `https://{domain}/.well-known/brand.json` を取得します
2. **House Redirect**（`house` フィールドを持つ）の場合、ハウスドメインに従う（最大3リダイレクト）
3. **House Portfolio** の場合、`brands` 配列で `brand_id` によりブランドを検索します
4. **Brand Agent** の場合、動的なブランドデータを取得するために MCP エージェントを呼び出す
5. **Authoritative Location** の場合、`location` URL に従う

セラーは解決されたブランドデータをキャッシュする（検証済みファイルの場合は24時間 TTL 推奨、失敗した検索の場合は1時間）。

## 移行ステップ

<Steps>
  <Step title="brand_manifest を brand に置き換える">
    すべてのタスクリクエスト（`create_media_buy`、`get_products`、`build_creative`）で、`brand_manifest` オブジェクトを `brand` BrandRef: `{ "domain": "...", "brand_id": "..." }` に置き換える。
  </Step>

  <Step title="brand.json をホストする">
    ブランドのドメインに `/.well-known/brand.json` を公開します。バリアントを選択する: マルチブランド企業には House Portfolio、動的データには Brand Agent、シンプルなケースにはシングルブランド。
  </Step>

  <Step title="ブランドレジストリに登録する">
    ブランドドメインが `brand.json` をホストしていない場合、セラーが解決できるようにコミュニティブランドレジストリに登録します。
  </Step>

  <Step title="セラーの解決を更新する">
    セラーエージェントは実行時に `BrandRef` を完全なブランドデータに解決する必要があります。キャッシュを実装し、4つの `brand.json` バリアントすべてを処理します。
  </Step>

  <Step title="インラインブランドデータを削除する">
    `brand_manifest` オブジェクトを構築または解析するコードを削除します。ブランドデータはインラインで渡されなくなります。
  </Step>

  <Step title="スキーマに対して検証する">
    リクエストを `brand-ref.json` スキーマに対して実行します。`domain` フィールドには有効な小文字のドメインパターンが必要です。
  </Step>
</Steps>

<Card title="ブランドアイデンティティ" icon="arrow-right" href="/docs/brand-protocol/brand-json">
  brand.json バリアント、ブランドレジストリ、BrandRef 解決の完全リファレンス。
</Card>

***

**関連:** [チャンネル](/docs/reference/migration/channels) | [カタログ](/docs/reference/migration/catalogs) | [ブランドプロトコル](/docs/brand-protocol) | [AdCP 3.0 概要](/docs/reference/whats-new-in-v3)
