> ## 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.

# Schemas

> AdCP JSON スキーマ: どこで取得するか、プロトコル tarball、スキーマバージョニング、bundled 対 $ref 解決バリアント、Sigstore 経由でのサプライチェーン来歴の検証方法。

L0 ワイヤー層は、公開された JSON Schema でフレーム化された JSON-over-HTTP です。このページはスキーマを取得するためのリファレンスです — それらがどこに存在するか、バージョンをピン留めする方法、サプライチェーン来歴を検証する方法、リリース内のディレクトリ形状。スキーマ自体ではなく SDK を選んでいるなら、[Choose your SDK](/docs/building/by-layer/L4/choose-your-sdk) を参照。

## Schema access

AdCP スキーマは 2 つのソースから利用可能です:

| Source  | URL                                                                | Best For               |
| ------- | ------------------------------------------------------------------ | ---------------------- |
| Website | `https://adcontextprotocol.org/schemas/v3/`                        | ランタイムフェッチ、バージョンエイリアス   |
| GitHub  | `https://github.com/adcontextprotocol/adcp/tree/main/dist/schemas` | オフラインアクセス、CI/CD パイプライン |

両ソースは同一のスキーマを含みます。GitHub リポジトリは、バンドルされたスキーマがコードベースに直接コミットされた、すべてのリリースされたバージョンを含みます。

## One-shot protocol bundle

数百の個別スキーマファイルを同期するのは積み重なります。すべての AdCP リリースは、完全なプロトコル — スキーマ、コンプライアンスストーリーボード、OpenAPI レジストリ — を含む単一の gzip 圧縮された tarball も公開するため、クライアントはツリーをクロールする代わりに 1 つのアーティファクトを引けます。

| Path                                                          | Contents        | Notes                                                                                        |
| ------------------------------------------------------------- | --------------- | -------------------------------------------------------------------------------------------- |
| `https://adcontextprotocol.org/protocol/latest.tgz`           | 現在の開発バンドル       | すべてのマージで変わる                                                                                  |
| `https://adcontextprotocol.org/protocol/{version}.tgz`        | ピン留めされたリリースバンドル | 公開されたら不変                                                                                     |
| `https://adcontextprotocol.org/protocol/{version}.tgz.sha256` | SHA-256 チェックサム  | ダウンロード完全性の検証に使う                                                                              |
| `https://adcontextprotocol.org/protocol/{version}.tgz.sig`    | Sigstore 分離署名   | 発行者アイデンティティの検証に使う。リリースが `release.yml` ワークフロー経由でカットされたときのみ存在 — 帯域外の再公開では欠如。                   |
| `https://adcontextprotocol.org/protocol/{version}.tgz.crt`    | Fulcio 発行の署名証明書 | `cosign verify-blob` のため `.sig` とペア。リリースが `release.yml` ワークフロー経由でカットされたときのみ存在 — 帯域外の再公開では欠如。 |

すべての tarball は単一の `adcp-{version}/` ディレクトリに展開されます（安全な展開、tarbomb なし）。内部:

```
adcp-{version}/
  README.md               # quickstart + links
  CHANGELOG.md            # release notes
  manifest.json           # version, generated_at, contents summary
  schemas/                # full JSON schema tree (same as /schemas/{version}/)
  compliance/             # protocols/, specialisms/, universal/, test-kits/, index.json
  openapi/registry.yaml   # OpenAPI description
```

展開前にチェックサムを検証:

```bash theme={null}
curl -OL https://adcontextprotocol.org/protocol/3.1.0.tgz
curl -OL https://adcontextprotocol.org/protocol/3.1.0.tgz.sha256
shasum -a 256 -c 3.1.0.tgz.sha256
tar xzf 3.1.0.tgz
cd adcp-3.1.0
```

バージョンごとに一度引き、SHA でキャッシュすれば、リクエストを検証し、ストーリーボードを実行し、ドキュメントをオフラインでレンダリングするのに必要なすべてを持ちます。`@adcp/sdk` の `sync-schemas` コマンドはこれを内部で使います。

利用可能な tarball は [`/protocol/`](https://adcontextprotocol.org/protocol/) にもリストされています。

### Verifying protocol bundle signatures

SHA-256 サイドカーは tarball と同じオリジンに存在するため、転送中の改ざんからのみ保護します。サプライチェーン保護 — バンドルが AdCP リリースワークフローから来たこと、ホストが侵害されても悪意あるものとすり替えられなかったことを証明 — のため、すべてのリリースされた `{version}.tgz` は Sigstore 分離署名とともに公開されます。

署名は、keyless OIDC を使う GitHub Actions リリースワークフローによって生成されます: 漏洩する長寿命の AdCP 署名鍵はありません。証明書は署名をそれを発行したワークフローアイデンティティにバインドします。

```bash theme={null}
# Pull the tarball and the two signature sidecars
curl -OL https://adcontextprotocol.org/protocol/3.1.0.tgz
curl -OL https://adcontextprotocol.org/protocol/3.1.0.tgz.sig
curl -OL https://adcontextprotocol.org/protocol/3.1.0.tgz.crt

# Verify (requires cosign 2.x — `brew install cosign`)
cosign verify-blob \
  --signature 3.1.0.tgz.sig \
  --certificate 3.1.0.tgz.crt \
  --certificate-identity-regexp '^https://github\.com/adcontextprotocol/adcp/\.github/workflows/release\.yml@refs/(heads|tags)/.*$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  3.1.0.tgz
```

`cosign verify-blob` は、SHA が一致し TLS が有効でも、署名が AdCP リリースワークフロー以外のものによって作られた場合、非ゼロで終了します。プロトコルバンドルを取り込む任意のパイプラインで、強制ソースとしてこれを使ってください。`@adcp/sdk`、`adcp-client-python`、`adcp-go` SDK は、サイドカーが存在するときこの検証を自動的に実行します。

`refs/(heads|tags)/.*` ワイルドカードは意図的です — リリースは push トリガーのワークフロー実行中に署名するため、証明書サブジェクトはリリースブランチ（例: v3.0.1+ の `refs/heads/3.0.x`、v3.0.0 の `refs/heads/main`）を名指しします。信頼ゲートはコンシューマーの正規表現ではなく上流の `release.yml` の `on.push.branches` 許可リストです。リテラル許可リスト正規表現（`(main|2\.6\.x)` スタイル）は、新しい保守ブランチが追加されるたびに黙って壊れます — 完全な信頼モデルとリリースごとの証明書サブジェクトルックアップについては [プロトコル tarball の検証](/docs/reference/verifying-protocol-tarballs) を参照。

署名に先行する古いリリース、および帯域外で再公開されたバージョン（署名ワークフローをバイパス）は、チェックサムのみのままです — クライアントは欠けているサイドカーを検証失敗ではなく「チェックサムのみ」の信頼レベルとして扱うべきです。

## Compliance storyboards

ストーリーボードは `/compliance/{version}/` でスキーマと並んで存在します。それらは、AAO がエージェントのケイパビリティクレームを検証するために実行するテストシナリオを定義します。

| Path                                          | Purpose                                                                                               |
| --------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `/compliance/{version}/universal/`            | すべてのエージェントに必須（ケイパビリティディスカバリー、エラー処理、スキーマ検証）                                                            |
| `/compliance/{version}/protocols/{protocol}/` | プロトコル（`media-buy`、`creative`、`signals`、`governance`、`brand`、`sponsored-intelligence`）を主張するのに必要なベースライン |
| `/compliance/{version}/specialisms/{id}/`     | 任意の専門化クレーム（例: `sales-guaranteed`、`sales-broadcast-tv`）                                                |
| `/compliance/{version}/index.json`            | 利用可能なプロトコル、専門分野、universal ストーリーボードを列挙                                                                 |

`supported_protocols`（プロトコルベースライン用）と `specialisms`（狭いケイパビリティクレーム用）を `get_adcp_capabilities` に宣言します — コンプライアンスランナーが一致するバンドルを実行して検証します。エージェントが主張できるすべてのプロトコルと専門分野については完全な [Compliance Catalog](/docs/building/verification/compliance-catalog) を参照。

## Common schemas

| Schema          | URL                                                            |
| --------------- | -------------------------------------------------------------- |
| Product         | `https://adcontextprotocol.org/schemas/v3/core/product.json`   |
| Media Buy       | `https://adcontextprotocol.org/schemas/v3/core/media-buy.json` |
| Creative Format | `https://adcontextprotocol.org/schemas/v3/core/format.json`    |
| Schema Registry | `https://adcontextprotocol.org/schemas/v3/index.json`          |

<Tip>
  **AI コーディングエージェント向け:** MCP 統合ドキュメントについては、コーディングエージェントを **[https://docs.adcontextprotocol.org/mcp](https://docs.adcontextprotocol.org/mcp)** に向けてください。
</Tip>

## Schema versioning

AdCP はセマンティックバージョニングを使います。ユースケースに正しいパスを選んでください:

| Path      | Example                                                      | Best For        |
| --------- | ------------------------------------------------------------ | --------------- |
| 正確なバージョン  | `/schemas/3.0.0/`、`/compliance/3.0.0/`、`/protocol/3.0.0.tgz` | 本番、SDK 生成       |
| メジャーバージョン | `/schemas/v3/`、`/compliance/v3/`                             | 開発、ドキュメント       |
| マイナーバージョン | `/schemas/v3.0/`、`/compliance/v3.0/`                         | 安定した開発（パッチ更新のみ） |

同じバージョンセマンティクスが `/schemas`、`/compliance`、`/protocol/{version}.tgz` に適用されます — 1 つのリリースが 3 つすべてをカットします。

### Production (recommended)

安定性のため正確なバージョンにピン留め:

```javascript theme={null}
const SCHEMA_VERSION = '3.0.0';
const schema = await fetch(
  `https://adcontextprotocol.org/schemas/${SCHEMA_VERSION}/core/product.json`
);
```

### Development

後方互換の更新に追随するためメジャーバージョンエイリアスを使う:

```javascript theme={null}
const schema = await fetch(
  'https://adcontextprotocol.org/schemas/v3/core/product.json'
);
```

### SDK type generation

```bash theme={null}
# TypeScript
npx json-schema-to-typescript \
  https://adcontextprotocol.org/schemas/3.0.0/core/product.json \
  --output types/product.d.ts

# Python
datamodel-codegen \
  --url https://adcontextprotocol.org/schemas/3.0.0/core/product.json \
  --output models/product.py
```

## Bundled schemas

`$ref` 解決をサポートしないツールには、すべての参照がインラインで解決されたバンドルスキーマを使います。バンドルスキーマは website と GitHub の両方から利用可能です:

### Website access

```
https://adcontextprotocol.org/schemas/3.0.0/bundled/media-buy/create-media-buy-request.json
```

### GitHub access

バンドルスキーマは `dist/schemas/{VERSION}/bundled/` でリポジトリにコミットされています:

```bash theme={null}
# Clone and access locally
git clone https://github.com/adcontextprotocol/adcp.git
ls adcp/dist/schemas/3.0.0/bundled/media-buy/

# Or fetch directly via GitHub raw
curl https://raw.githubusercontent.com/adcontextprotocol/adcp/main/dist/schemas/3.0.0/bundled/media-buy/get-products-request.json
```

### Directory structure

```
dist/schemas/{VERSION}/
├── bundled/                      # Fully dereferenced schemas
│   ├── media-buy/                # Media buying tasks
│   ├── creative/                 # Creative tasks
│   ├── signals/                  # Signal protocol tasks
│   ├── property/                 # Property/governance tasks
│   ├── content-standards/        # Content standards tasks
│   ├── sponsored-intelligence/   # Sponsored intelligence tasks
│   ├── protocol/                 # Protocol tasks
│   └── core/                     # Core shared schemas and legacy task lifecycle schemas
├── core/                         # Modular schemas with $ref
├── trusted-match/                # Serve-time Context Match and Identity Match schemas
├── media-buy/
└── index.json                    # Schema registry
```

`index.json` がディレクトリ権威です。それはバンドルの `published_version`、安定性メタデータ、`protocol_layers` を宣言します: ネゴシエーション層（`media-buy`、`creative`、`signals`、`account`、`governance`、`brand`、`sponsored-intelligence`）と決定/配信層（`trusted-match`）。

### Bundled schema categories

すべてのリクエスト/レスポンスタスクスキーマがバンドルされます:

| Category                          | Tasks                                                                                                                                                                                                     |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `bundled/media-buy/`              | get-products, create-media-buy, update-media-buy, list-creative-formats, sync-creatives, build-creative, list-creatives, get-media-buy-delivery, list-authorized-properties, provide-performance-feedback |
| `bundled/creative/`               | list-creative-formats, preview-creative                                                                                                                                                                   |
| `bundled/signals/`                | get-signals, activate-signal                                                                                                                                                                              |
| `bundled/property/`               | create-property-list, get-property-list, list-property-lists, update-property-list, delete-property-list, validate-property-delivery                                                                      |
| `bundled/content-standards/`      | create-content-standards, get-content-standards, list-content-standards, update-content-standards, calibrate-content, validate-content-delivery, get-media-buy-artifacts                                  |
| `bundled/sponsored-intelligence/` | si-get-offering, si-initiate-session, si-send-message, si-terminate-session                                                                                                                               |
| `bundled/protocol/`               | get-adcp-capabilities, get-task-status, list-tasks                                                                                                                                                        |
| `bundled/core/`                   | tasks-get, tasks-list                                                                                                                                                                                     |

利用可能なすべてのスキーマについては [スキーマレジストリ](https://adcontextprotocol.org/schemas/v3/index.json) を参照。

## Version discovery

```bash theme={null}
# Get the canonical stable schema bundle and registry URL.
curl https://adcontextprotocol.org/schemas/latest.json | jq '{version: .latest_stable, index}'

# Or read the full file-based discovery index.
curl https://adcontextprotocol.org/schemas/index.json | jq '.aliases'

# The versioned registry also carries the full semver of its bundle.
# (Note: `published_version` carries full semver including patch.
# It's distinct from the per-request/response wire `adcp_version`
# field defined in core/version-envelope.json, which uses
# release-precision — never send `published_version` on the wire.)
curl https://adcontextprotocol.org/schemas/v3/index.json | jq '.published_version'
```

正準バージョンをディレクトリ順や `versions[0]` から推論しないでください。プレリリースアーティファクトはピン留めされた履歴ビルドのため発見可能なままです。正準の安定選択には `latest_stable` または `aliases` マップを使ってください。

バージョン履歴と移行ガイドについては [リリースノート](/docs/reference/release-notes) を確認してください。

## Registry API

AgenticAdvertising.org レジストリは、ブランド解決、プロパティ解決、エージェントディスカバリー、認可検証のためのパブリックな REST API を提供します。認証不要。

<Card title="Registry API Reference" icon="server" href="/docs/registry/index">
  REST 経由でブランドを解決、エージェントを発見、認可を検証。
</Card>
