Skip to main content
AgenticAdvertising.org レジストリは、AdCP エコシステムにおけるブランドとプロパティの解決、エージェントの探索、認可バリデーションのためのパブリック REST API を提供します。

ベース URL

https://agenticadvertising.org
ほとんどのエンドポイントはパブリックで認証不要だ。認証済みエンドポイントは Bearer トークンが必要です。 完全なOpenAPI 3.1 仕様はコード生成とツーリングに利用可能です。

クイックスタート

ブランドドメインを正規アイデンティティに解決する:
curl "https://agenticadvertising.org/api/brands/resolve?domain=acmecorp.com"
Response
{
  "canonical_id": "acmecorp.com",
  "canonical_domain": "acmecorp.com",
  "brand_name": "Acme Corp",
  "keller_type": "master",
  "house_domain": "acmecorp.com",
  "source": "brand_json"
}

レート制限

エンドポイント制限
バルク解決(/api/brands/resolve/bulk/api/properties/resolve/bulkIP あたり 20 リクエスト/分
保存エンドポイント(/api/brands/save/api/properties/saveユーザーあたり 60 リクエスト/時間
その他すべてのエンドポイント制限なし
レート制限されたエンドポイントは制限を超えると 429 Too Many Requests を返します。

エンドポイントグループ

ブランド解決

ドメインを正規ブランドアイデンティティに解決し、brand.json ファイルを取得し、ブランドレジストリを閲覧します。

プロパティ解決

パブリッシャードメインをプロパティ情報に解決し、adagents.json を検証し、プロパティを閲覧します。

エージェント探索

登録・発見されたエージェント、パブリッシャーを一覧表示し、レジストリ統計を確認します。

ルックアップと認可

ドメインでエージェントを検索し、製品認可を検証し、プロパティ認可をリアルタイムで確認します。

ブランド解決

これらのエンドポイントはドメインをブランドアイデンティティに解決します。レスポンスの source フィールドはデータがどこから来たかを示します:
ソース意味
brand_jsonドメインの /.well-known/brand.json ファイルから解決
enrichedBrandfetch API 経由でエンリッチ
communityコミュニティメンバーが提出
すべてのソースは同じ解決レスポンス構造を生成します。完全なブランドアイデンティティデータ(ロゴ、カラー、トーン)を取得するには、/api/brands/enrich を使用するか、レジストリでブランドを検索します。
メソッドパス説明
GET/api/brands/resolveドメインを正規ブランドに解決する
POST/api/brands/resolve/bulk一度に最大100ドメインを解決する
GET/api/brands/brand-jsonドメインの生の brand.json を取得する
GET/api/brands/registryすべてのブランドを一覧表示する(検索、ページネーション)
GET/api/brands/enrichBrandfetch 経由でブランドデータをエンリッチする
GET/api/brands/historyブランドの編集履歴
POST/api/brands/saveコミュニティブランドを保存または更新する(認証必要)

プロパティ解決

メソッドパス説明
GET/api/properties/resolveドメインをプロパティ情報に解決する
POST/api/properties/resolve/bulk一度に最大100ドメインを解決する
GET/api/properties/registryすべてのプロパティを一覧表示する(検索、ページネーション)
GET/api/properties/validateドメインの adagents.json を検証する
GET/api/properties/historyプロパティの編集履歴
POST/api/properties/saveホスト型プロパティを保存または更新する(認証必要)

エージェント探索

メソッドパス説明
GET/api/registry/agentsすべてのエージェントを一覧表示する(タイプでフィルター、エンリッチメント付き)
GET/api/registry/publishersすべてのパブリッシャーを一覧表示する
GET/api/registry/statsレジストリ統計

ルックアップと認可

メソッドパス説明
GET/api/registry/lookup/domain/{domain}ドメインに認可されたエージェントを見つける
GET/api/registry/lookup/propertyプロパティ識別子でエージェントを見つける
GET/api/registry/lookup/agent/{agentUrl}/domainsエージェントのすべてのドメインを取得する
POST/api/registry/validate/product-authorizationエージェントの製品認可を検証する
POST/api/registry/expand/product-identifiersプロパティセレクターを識別子に展開する
GET/api/registry/validate/property-authorizationリアルタイム認可チェック

バリデーションツール

メソッドパス説明
POST/api/adagents/validateドメインの adagents.json を検証する
POST/api/adagents/createadagents.json コンテンツを生成する

検索

メソッドパス説明
GET/api/searchブランド、パブリッシャー、プロパティをまたいで検索する
GET/api/manifest-refs/lookupドメインのマニフェスト参照を見つける

エージェントプロービング

メソッドパス説明
GET/api/public/discover-agentエージェント URL のケイパビリティを調査する
GET/api/public/agent-formatsエージェントからクリエイティブフォーマットを取得する
GET/api/public/agent-productsセールスエージェントからプロダクトを取得する
GET/api/public/validate-publisherパブリッシャードメインを検証する

アクティビティ履歴

GET /api/brands/history?domain={domain}GET /api/properties/history?domain={domain} はレジストリエントリの編集履歴を最新順で返します。これらはパブリックエンドポイント — 認証不要。
Response
{
  "domain": "acmecorp.com",
  "total": 3,
  "revisions": [
    {
      "revision_number": 3,
      "editor_name": "Pinnacle Media",
      "edit_summary": "Updated logo URL",
      "source": "community",
      "is_rollback": false,
      "created_at": "2026-03-01T12:34:56Z"
    },
    {
      "revision_number": 2,
      "editor_name": "system",
      "edit_summary": "API: enriched via Brandfetch",
      "source": "enriched",
      "is_rollback": false,
      "created_at": "2026-02-15T08:00:00Z"
    }
  ]
}
editor_name: "system" のエントリは自動エンリッチメントによって書かれた。is_rollbacktrue のとき、rolled_back_to には復元されたリビジョン番号が含まれます。ページネーションは limit(最大100)と offset クエリパラメーターを使用します。

認証

パブリックエンドポイント(解決、探索、検索)は認証不要です。書き込みエンドポイントは AgenticAdvertising.org 加盟組織に発行された Bearer トークンが必要です。

API キーの取得

  1. agenticadvertising.org/dashboard/api-keysでサインインします
  2. Create key をクリックし、生成されたキーをコピーします

API キーの使用

キーを Authorization ヘッダーに渡す:
Authorization: Bearer sk_...

認証済みエンドポイント

これらのエンドポイントには有効な API キーが必要です。ユーザーあたり1時間に60リクエストのレート制限があります。

ブランドを保存します

POST /api/brands/save コミュニティブランドをレジストリに保存または更新します。既存のブランドの場合、リビジョン追跡された編集を作成します。brand.json で管理される権威あるブランドは編集できない — それらは 409 Conflict を返します。 リクエストボディ:
{
  "domain": "acmecorp.com",
  "brand_name": "Acme Corp",
  "brand_manifest": {
    "name": "Acme Corp",
    "description": "A fictional company",
    "logos": [{ "url": "https://acmecorp.com/logo.svg", "tags": ["icon"] }],
    "colors": [{ "hex": "#FF5733", "type": "accent" }]
  }
}
domainbrand_name は必須です。brand_manifest(ブランドアイデンティティデータ)はオプションです。ブランドの source はサーバーによって "community" に設定されます。ドメインは正規化されます(プロトコルを除去、小文字化)。
curl -X POST "https://agenticadvertising.org/api/brands/save" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain":"acmecorp.com","brand_name":"Acme Corp"}'
Response (create)
{
  "success": true,
  "message": "Brand \"Acme Corp\" saved to registry",
  "domain": "acmecorp.com",
  "id": "br_abc123"
}
Response (update)
{
  "success": true,
  "message": "Brand \"Acme Corp\" updated in registry (revision 2)",
  "domain": "acmecorp.com",
  "id": "br_abc123",
  "revision_number": 2
}

プロパティを保存します

POST /api/properties/save ホスト型プロパティをレジストリに保存または更新します。既存のプロパティの場合、リビジョン追跡された編集を作成します。adagents.json で管理される権威あるプロパティは編集できない — それらは 409 Conflict を返します。 リクエストボディ:
{
  "publisher_domain": "examplepub.com",
  "authorized_agents": [
    { "url": "https://agent.example.com", "authorized_for": "sell" }
  ],
  "properties": [
    { "type": "website", "name": "Example Publisher" }
  ],
  "contact": {
    "name": "Ad Ops",
    "email": "adops@examplepub.com"
  }
}
publisher_domainauthorized_agents(それぞれ必須の url とオプションの authorized_for)は必須です。properties(それぞれ typename が必要)と contact はオプションです。ドメインは正規化されます(プロトコルを除去、小文字化)。
curl -X POST "https://agenticadvertising.org/api/properties/save" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "publisher_domain": "examplepub.com",
    "authorized_agents": [{"url": "https://agent.example.com", "authorized_for": "sell"}],
    "properties": [{"type": "website", "name": "Example Publisher"}]
  }'
Response (create)
{
  "success": true,
  "message": "Hosted property created for examplepub.com",
  "id": "prop_xyz789"
}
Response (update)
{
  "success": true,
  "message": "Property 'examplepub.com' updated (revision 2)",
  "id": "prop_xyz789",
  "revision_number": 2
}

ブランドを提出する(レガシー)

POST /api/brands/discovered/community ブランドをレビューのために提出します。このエンドポイントは /api/brands/save より以前のもの — 新しいインテグレーションでは保存エンドポイントを優先します。

エラーレスポンス

ステータス説明
400必須フィールドが欠けているか無効なドメイン
401欠けているか無効な API キー
409権威あるブランド/プロパティは編集できない(brand.json または adagents.json で管理)
429レート制限超過(60リクエスト/時間)

プロトコル対 REST API

AdCP プロトコルはエージェント間通信のための MCP と A2A タスクを定義する(例: get_productscreate_media_buy)。レジストリ REST API は別物 — AgenticAdvertising.org レジストリのエンティティを検索するための HTTP エンドポイントを提供します。 REST API を使用するのは探索と認可のため:
  • プロトコル呼び出しを行う前にブランドまたはプロパティドメインを解決します
  • どのエージェントが存在し、何に認可されているかを発見します
  • 広告配信中にリアルタイムで認可を検証します
  • レジストリを閲覧または検索するインテグレーションを構築します
MCP/A2A タスクを使用するのはトランザクション操作のため:
  • セールスエージェントからプロダクトを取得する(get_products
  • メディアバイを作成する(create_media_buy
  • クリエイティブを構築する(build_creative
  • シグナルを取得する(get_signals
典型的なインテグレーションは両方を使用します: レジストリ API 経由でパブリッシャードメインを解決し、次に認可されたエージェントの MCP エンドポイントを呼び出してトランザクションを行います。