Documentation Index
Fetch the complete documentation index at: https://docs.adcontextprotocol.org/llms.txt
Use this file to discover all available pages before exploring further.
A2: Your first media buy
Free module — No account required. ~20 minutes with Addie. Prerequisite: A1.
Learning objectives
- Execute the full media buy lifecycle: discovery, purchase, creative sync, delivery
- Identify the agent roles involved: buyer agent, sales agent, creative agent, signals agent
- Read and understand real protocol messages at each stage
- Recognize that 3.1 products may describe creative requirements with canonical
format_options[]that narrow sharedformat_kindcontracts - Observe a live agent-to-agent transaction
- Recognize the two things that make agent-to-agent requests safe: the request is signed (so the seller can verify who sent it) and it carries an
idempotency_key(so a retry doesn’t double-book)
Reading list
Protocol architecture
The complete architecture: domain map, identity layer, transaction domains, governance, and ecosystem layers.
MCP integration guide
How MCP works in practice: tool calls, response format, context management, async operations.
Capability discovery
How agents advertise their capabilities so other agents can discover what they offer.
AdAgents.json
Publisher authorization for which agents can sell or enrich inventory.
Seller setup
How sellers use brand.json with adagents.json for identity and supply path verification.
A2A guide
The Agent-to-Agent protocol — how specialized agents collaborate on complex campaigns.
Task lifecycle
How tasks move through states: from request to completion, including async operations.
Key terms
| Term | Definition |
|---|---|
| Sales agent | Represents a publisher and exposes inventory via get_products. May also implement the Creative Protocol to handle creatives from the same endpoint. |
| Buyer agent | Represents a brand or agency and purchases media via create_media_buy |
| Brand agent | Manages brand identity and guidelines via brand.json |
| Creative agent | Any agent implementing the Creative Protocol — produces and adapts advertising assets via build_creative. This can be a standalone service or a sales agent that declares "creative" in supported_protocols. |
| Signals agent | Provides measurement and audience data via get_signals |
| brand.json | Public identity record for an advertiser, publisher, seller, or platform: name, brand assets, agents, and signing-key discovery |
| adagents.json | Publisher-hosted file declaring properties and the agents authorized to sell or enrich them |
| Tool discovery | The process of an agent reading another agent’s capabilities to know what tasks it supports |
| Request signing | A cryptographic signature on the request that lets the seller verify who sent it and that it wasn’t tampered with in transit |
| Idempotency key | A unique tag on each mutating request that lets a buyer safely retry without creating a duplicate |
| Domain | A broad protocol area an agent supports — media_buy, creative, signals, governance, brand, sponsored_intelligence. Declared via supported_protocols. |
| Specialism | A narrow capability claim within a domain — e.g. sales-guaranteed, creative-generative, signal-marketplace. Declared via specialisms. See the Compliance Catalog. |
| Canonical formats | AdCP 3.1’s v2 path for creative requirements: products can publish format_options[] that narrow shared creative archetypes such as image or video_hosted. Validate against the canonical first, then the product’s narrowing. |
| Storyboard | A scripted compliance scenario shipped by the protocol at /compliance/{version}/ — agents don’t write them, they’re run against agents. An agent demonstrates its domain and specialism claims by passing the matching storyboards. |
Protocol versioning
Every request carriesadcp_major_version; sellers advertise supported versions on get_adcp_capabilities. A3 and B1 go deeper on version negotiation and the object-presence pattern sellers use to declare capabilities.
What you’ll do with Addie
Tell Addie what you want: audience, goals, budget. Then walk through each step as it happens:- Discovery —
get_productsagainst@cptestagent, examine real response structure - Purchase —
create_media_buywith targeting and budget. Addie points out two things on this request: it carries a signature (so the seller can verify the buyer) and anidempotency_key(so a retry after a network error never creates two buys). Note theconfirmed_attimestamp in the response — this is the seller’s order confirmation. - Creative —
sync_creativesto deliver assets to the publisher - Status check —
get_media_buysto see lifecycle state, creative approvals, andvalid_actions - Delivery —
get_media_buy_deliveryto see results
Assessment
| Dimension | Weight | What Addie looks for |
|---|---|---|
| Conceptual understanding | 25% | Can you describe the transaction flow and which agent handles what? |
| Practical knowledge | 35% | Can you direct a media buy and interpret the delivery report? |
| Problem solving | 15% | Can you reason about what happens when things go wrong? |
| Protocol fluency | 25% | Do you use correct task names and agent roles? |
Start this module
Start A2 with Addie
Open Addie and say “I’d like to start certification module A2.”