Skip to main content

A2B: 最初のエージェント呼び出しのテスト

無料モジュール — アカウント不要。Addie と約 20 分。前提条件: A2

学習目標

  • AdCP テストエージェントに対してステートフルな MCP セッションを初期化する
  • 自然言語ブリーフで get_products を呼び、製品レスポンスを読む
  • create_media_buy でメディアバイを配置し、3 つのレスポンス形状すべてを処理する
  • sync_creatives でクリエイティブを添付し、get_media_buys でバイステータスをチェックする
  • 認証失敗、スキーマ不一致、非同期ポーリング遅延を診断し解決する

読書リスト

AdCP クイックスタート

セットアップから配信までのエンドツーエンドバイヤーワークフロー。

メディアバイライフサイクル

メディアバイのステータス状態 — pending_creatives、pending_start、active、paused、completed — と各がバイヤーにとって何を意味するか。

Create media buy タスク

完全なフィールドリファレンス、必須フィールド、3 つのレスポンス形状すべて。

Sync creatives タスク

アセットをバイに添付する方法、ドライラン検証、割り当てパターン。

エラー処理

エラーコード、リトライ動作、errors[] 配列の読み方。

MCP 統合ガイド

セッション初期化、mcp-session-id ヘッダー、ツール呼び出しフォーマット。

テストエージェント

以下のすべての curl の例は AdCP トレーニングエージェントをターゲットします:
AgenticAdvertising.org ダッシュボード からの API キーが必要です。すべての例で <your-api-key> を置き換えてください。

Addie と行うこと

5 つの呼び出しを順番にウォークスルーします。Addie は各呼び出しをデモンストレーションし、生のレスポンスを示し、次にあなた自身がそれを再現するのを導きます。
  1. 初期化 — ステートフルな MCP セッションを開く; mcp-session-id ヘッダーを保存
  2. ディスカバリー — ブリーフで get_products; 提案を読む
  3. 購入create_media_buy; 3 つのレスポンス形状すべてを処理
  4. クリエイティブ添付sync_creatives; 最初にドライランで検証
  5. ステータスポールvalid_actions がバイが配信中であることを示すまで get_media_buys

ステップバイステップ curl リファレンス

Addie とモジュールを進める間のクイックリファレンスとして、または任意のステップを独立して再現するためにこれらを使います。

ステップ 1 — セッションを初期化

すべてのシーケンスは initialize 呼び出しで始まります。レスポンスがプロトコルバージョンを設定し、mcp-session-id ヘッダーを返します — それを保存します。
レスポンスはレスポンスヘッダーに mcp-session-id を含みます。後続のすべての呼び出しはそれを含まなければなりません:

ステップ 2 — 製品をディスカバリー

buying_mode: "brief" とキャンペーンゴールの平易な英語の記述で get_products を呼びます。エージェントはキュレートされた products[] と実行準備完了の proposals[] を返します。
結果は JSON として content[0].text にあります。proposals[0].proposal_id を探します — それを create_media_buy に渡します。

ステップ 3 — メディアバイを配置

ステップ 2 からの proposal_idtotal_budget を渡します。idempotency_key はネットワークが落ちた場合に安全にリトライできるようにします — リクエストごとに新しい UUID v4 を使います。
3 つのレスポンス形状 — これらの 1 つが見えます:

ステップ 4 — クリエイティブを添付

pending_creatives 状態のバイは、sync_creatives を呼ぶまで配信できません。最初に dry_run: true を使い、何も書き込まずにクリエイティブ形状を検証します。
適用するには "dry_run": true を削除します。レスポンスは creatives[].status を含みます — approvedpending_review、または rejected

ステップ 5 — ステータスをチェック

ステップ 3 からの media_buy_idget_media_buys をポールし、ライフサイクル状態と valid_actions を見ます。
media_buys[0].status フィールドは pending_creativespending_startactivepausedcompletedrejected、または canceled のいずれかです。valid_actions 配列はバイヤーが次に何ができるかを教えます。

Async polling

create_media_buystatus: "submitted"task_id を返すとき、バイはキューに入っています。タスクが完了するまでポールします:
get_task_status は AdCP アプリケーション層のタスクポーリングツールです。3.x では、このエイリアスを広告しないセラーも、同じ snake_case ペイロードでレガシー AdCP tasks/get 表面を露出します。いずれの AdCP ポーリング表面も、独自のタスクワイヤ形状を使うトランスポートネイティブな MCP/A2A tasks/* メソッドと混同しないでください。
2〜5 秒ごとにポールします。AdCP タスク statuscompleted のとき、result フィールドは media_buy_id を持つ完全な create_media_buy レスポンスを含みます。すべての AdCP タスクステータス値については タスクライフサイクル ドキュメントを参照。

一般的なエラー

評価

合格しきい値: 70%。

このモジュールを始める

Addie で A2B を始める

Addie を開いて「認定モジュール A2B を始めたい」と言ってください。
次: A3: AdCP ランドスケープ