get_creative_features
AdCP 3.0 プロポーザル - このタスクは AdCP 3.0 向けに開発中です。
クリエイティブマニフェストを評価し、クリエイティブガバナンスエージェントから機能値を返します。
ユースケース
- セキュリティスキャン: マルウェア、自動リダイレクト、資格情報収集、クロークの検出
- クリエイティブ品質: ブランド一貫性、プラットフォーム最適化、ガイドライン遵守の評価
- コンテンツ分類: IAB コンテンツタクソノミーまたはその他の標準に対するクリエイティブコンテンツの分類
- アクセシビリティ: WCAG コンプライアンス、スクリーンリーダー互換性のチェック
リクエスト
{
"$schema": "/schemas/creative/get-creative-features-request.json",
"creative_manifest": {
"format_id": {
"agent_url": "https://creative.adcontextprotocol.org",
"id": "html5-display-300x250"
},
"assets": {
"creative_html": {
"url": "https://cdn.agency.com/creative/abc123.html"
}
}
},
"feature_ids": ["auto_redirect", "credential_harvest", "cloaking"]
}
パラメーター
| パラメーター | 型 | 必須 | 説明 |
|---|
creative_manifest | object | Yes | format_id と assets を含むクリエイティブマニフェスト |
feature_ids | string[] | No | 特定の機能にフィルタリングします。省略した場合、エージェントがサポートするすべての機能を評価します。 |
レスポンス
{
"$schema": "/schemas/creative/get-creative-features-response.json",
"results": [
{ "feature_id": "auto_redirect", "value": false },
{ "feature_id": "credential_harvest", "value": false },
{ "feature_id": "cloaking", "value": false }
],
"detail_url": "https://scanner.example.com/reports/ctx_abc123"
}
レスポンスフィールド
| フィールド | 説明 |
|---|
results | 機能評価結果の配列 |
results[].feature_id | 評価された機能 |
results[].value | 機能値: boolean(バイナリ)、number(定量的)、または string(カテゴリ) |
results[].confidence | 信頼スコア(0-1)、該当する場合 |
results[].unit | 定量的値の単位(例: percentage、score) |
results[].expires_at | この評価が期限切れになり更新が必要な時刻 |
results[].measured_at | この機能が評価された時刻 |
results[].methodology_version | 使用された方法論のバージョン |
results[].details | ベンダー固有の詳細 |
detail_url | ベンダーの完全な評価レポートへの URL。ベンダーによるアクセス制御が適用されます。 |
エラーレスポンス
{
"errors": [
{
"code": "CREATIVE_INACCESSIBLE",
"message": "Could not retrieve creative assets for evaluation"
}
]
}
非同期評価
評価に時間がかかる場合(例: サンドボックスでのマルウェアスキャン)、エージェントは status: "working" を返し、完了時に Webhook で結果を配信します。標準の非同期タスクパターンを使うため、カスタムステータス値は不要です。
オーケストレーターのロジック
オーケストレーターはプロパティリストの機能要件と同じ方法で、クライアントサイドで機能要件を適用する:
const result = await agent.getCreativeFeatures({
creative_manifest: manifest
});
if (result.errors) {
// Handle error - reject or retry
return;
}
// Apply security requirements
const threats = result.results.filter(
f => ['auto_redirect', 'credential_harvest', 'cloaking'].includes(f.feature_id)
&& f.value === true
);
if (threats.length > 0) {
// Reject - security threat detected
return;
}
// Apply quality requirements
const quality = result.results.find(f => f.feature_id === 'brand_consistency');
if (quality && quality.value < 80) {
// Reject - below quality threshold
return;
}
プロパティガバナンスとの関係
クリエイティブガバナンスはプロパティガバナンスと同じパターンに従う:
| 概念 | プロパティガバナンス | クリエイティブガバナンス |
|---|
| 評価対象 | プロパティ(ウェブサイト、アプリ) | クリエイティブ(マニフェスト) |
| 機能宣言 | governance.property_features | governance.creative_features |
| 評価タスク | プロパティリストフィルター | get_creative_features |
| 機能値 | property-feature-value スキーマ | 同じフィールド(value、confidence、expires_at など) |
| 詳細インテリジェンス | detail_url / methodology_url の背後 | detail_url / methodology_url の背後 |