# AAMP Explorer — the full corpus map — full text corpus > What each of IAB Tech Lab's eight AAMP repositories defines, at the commit it was read from. Generated 2026-08-13. 9 documents. --- # agentic-rtb-framework Source: https://aampexplorer.com/repos/agentic-rtb-framework/ ARTF: prose specification plus protobuf contract and Go and Rust implementations for serve-time bid mutations. Version: v1.0-1-g7f48161 Commit: 7f481614ba22 Kind: specification Substance: substantial Listed in the AAMP hub README: yes The only specification here that is tagged and marked FINAL: a v1.0 prose document, a protobuf contract, Go and Rust implementations, and five worked request samples. ## Operations (1) - GetMutations: The single ARTF RPC: a host platform passes a bid request or response to an in-path agent, which returns mutations to apply. ## Objects (12) - RTBRequest (8 fields) - Ext (0 fields) - RTBResponse (3 fields) - Originator (0 fields) - Mutation (8 fields) - Metadata (2 fields) - IDsPayload (1 fields) - AdjustDealPayload (2 fields) - Margin (1 fields) - AdjustBidPayload (1 fields) - MetricsPayload (1 fields) - DataPayload (1 fields) --- # iab-agentic-primitives Source: https://aampexplorer.com/repos/iab-agentic-primitives/ The canonical shared wire contract imported by both reference agents. Not listed in the AAMP hub README. Version: v0.5.0-1-g2fc7029 Commit: 2fc7029fb9ec Kind: specification Substance: substantial Listed in the AAMP hub README: no The wire contract both reference agents pin: 48 versioned JSON Schemas for the shared objects and the request/response protocol, plus an OpenAPI document. Its own README opens with WORK IN PROGRESS — NOT YET RELEASED. ## Operations (8) - AgentDiscovery: Request body for ``POST /registry/agents/discover``: fetch and register a counterparty's card by its base URL. - Avails: Request body for ``POST /products/avails``. - ChangeRequest: Success envelope wrapping the ChangeRequest primitive. - DealBooking: Request body for ``POST /api/v1/deals`` (money-mutating: FD-12). - JsonRpc: JSON-RPC 2.0 request envelope, pinned to ``message/send``. - NegotiationRound: The seller's answer to a :class:`NegotiationMessage`. - ProductList: Query parameters for ``GET /products`` (pagination only). - Quote: Request body for ``POST /api/v1/quotes`` (money-mutating: FD-12). ## Objects (29) - Account (7 fields): Commercial relationship between a specific buyer and seller organization. - Agent (17 fields): An advertising agent: A2A (agent-to-agent protocol) card plus registry identity. - Assignment (9 fields): Binds a creative to a line with rotation rules. - ChangeRequest (20 fields): A request to modify an existing order or deal post-booking. - ConsentContext (8 fields): Privacy consent signals that travel with a deal (flagged decision FD-10). - Creative (14 fields): Creative metadata for an advertising asset. - CreativeApproval (7 fields): A durable seller-side creative approval decision (EP-10.5). - Deal (18 fields): A confirmed deal booked from a quote (Deals API v1.0 book phase). - DecisionRecord (13 fields): A durable record of why a money/state decision was made (EP-10.1). - Line (13 fields): Individual product booking within an order (OpenDirect Line). - MediaKit (9 fields): A seller's discoverable inventory catalog: the packages it offers buyers. - Negotiation (10 fields): Multi-turn offer history container for a buyer/seller negotiation. - Order (14 fields): Campaign container (insertion order) holding one or more lines. - Organization (7 fields): Legal/commercial entity participating in the ecosystem. - Package (20 fields): Curated inventory package for media kit discovery. - Product (16 fields): Sellable unit of publisher inventory. - Proposal (11 fields): A structured buy proposal under negotiation between the pair. - Quote (16 fields): A non-binding price quote from a seller (Deals API v1.0 quote phase). - RateCard (11 fields): The private, negotiated rates a specific buyer/seller pair has agreed to. - SellersJsonEntry (7 fields): One entry from a system's sellers.json file. - Session (11 fields): A persistent multi-turn buyer conversation with a seller. - SupplyChain (4 fields): OpenRTB SupplyChain object (``schain``): the ordered node path. - AgentTrustVerification (5 fields): Registry-verified trust result for an agent (replaces the buyer's ``AgentTrustInfo``). - Avails (8 fields): Spec per-product RESPONSE record for ``POST /products/avails``. - AvailsCollection (1 fields): Spec response envelope: the ``avails`` collection object. - ChangeRequestCreate (8 fields): Request body for ``POST /api/v1/change-requests`` (money-mutating: FD-12). - ErrorEnvelope (1 fields): The one wire shape for every protocol error: ``{"detail": {...}}``. - NegotiationMessage (9 fields): A buyer negotiation move (money-mutating: FD-12). - ProductAvailsSearch (10 fields): Spec REQUEST body for ``POST /products/avails``. --- # seller-agent Source: https://aampexplorer.com/repos/seller-agent/ Supply-side reference implementation: media kit, avails, quotes, negotiation, deals, order lifecycle. Version: v2.4.1 Commit: 2bb7ebce4589 Kind: reference implementation Substance: substantial Listed in the AAMP hub README: yes The largest machine-readable surface in the corpus: an OpenAPI 3.1 document with 74 paths carrying 87 operations, 91 component schemas, a changelog, and tags through v2.4.1. Its prose guides contradict the OpenAPI and each other. ## Operations (87) - GET /: Root - GET /health: Health - GET /events: List Events - GET /events/{event_id}: Get Event - GET /auth/api-keys: List Api Keys - POST /auth/api-keys: Create Api Key - GET /auth/api-keys/{key_id}: Get Api Key Details - DELETE /auth/api-keys/{key_id}: Revoke Api Key - GET /api/v1/supply-chain: Get Supply Chain - GET /api/v1/rate-card: Get Rate Card - PUT /api/v1/rate-card: Update Rate Card - GET /api/v1/inventory-sync/status: Get Inventory Sync Status - POST /api/v1/inventory-sync/trigger: Trigger Inventory Sync - GET /api/v1/inventory-sync/watermark: Get Sync Watermark - GET /gam/orders: Gam List Orders - GET /gam/report: Gam Delivery Report - GET /products: List Products - POST /products/avails: Check Avails - GET /products/{product_id}: Get Product - POST /pricing: Get Pricing - POST /discovery: Discovery Query - POST /api/v1/products/{product_id}/inventory-type: Override Inventory Type - GET /api/v1/products/{product_id}/inventory-type: Get Inventory Type Override - DELETE /api/v1/products/{product_id}/inventory-type: Delete Inventory Type Override - POST /proposals: Submit Proposal - POST /proposals/{proposal_id}/counter: Counter Proposal - GET /proposals/{proposal_id}/negotiation: Get Negotiation Status - POST /api/v1/negotiations/messages: Post Negotiation Message - POST /deals: Generate Deal - POST /api/v1/deals: Book Deal - POST /agentic-audience/match: Agentic Audience Match - GET /api/v1/deals/export: Export Deals - GET /api/v1/deals/{deal_id}: Get Deal By Id - POST /api/v1/deals/from-template: Create Deal From Template - GET /api/v1/deals/{deal_id}/performance: Get Deal Performance - POST /api/v1/deals/bulk: Bulk Deal Operations - POST /api/v1/deals/push: Push Deal To Buyers - GET /api/v1/deals/{deal_id}/buyer-status: Get Deal Buyer Status - POST /api/v1/deals/distribute: Distribute Deal Via Ssp - GET /api/v1/deals/{deal_id}/ssp-troubleshoot: Troubleshoot Deal Via Ssp - GET /api/v1/curators: List Curators - POST /api/v1/curators: Register Curator - GET /api/v1/curators/{curator_id}: Get Curator - POST /api/v1/deals/curated: Create Curated Deal - POST /api/v1/deals/{deal_id}/migrate: Migrate Deal - POST /api/v1/deals/{deal_id}/deprecate: Deprecate Deal - GET /api/v1/deals/{deal_id}/lineage: Get Deal Lineage - GET /approvals: List Pending Approvals - GET /approvals/{approval_id}: Get Approval - POST /approvals/{approval_id}/decide: Decide Approval - POST /approvals/{approval_id}/resume: Resume Flow - POST /sessions: Create Session - GET /sessions: List Sessions - GET /sessions/{session_id}: Get Session - POST /sessions/{session_id}/messages: Send Session Message - POST /sessions/{session_id}/close: Close Session Endpoint - GET /media-kit: Media Kit Overview - GET /media-kit/packages: List Media Kit Packages - GET /media-kit/packages/{package_id}: Get Media Kit Package - POST /media-kit/search: Search Media Kit - GET /packages: List Packages - POST /packages: Create Package - GET /packages/{package_id}: Get Package - PUT /packages/{package_id}: Update Package - DELETE /packages/{package_id}: Delete Package - POST /packages/assemble: Assemble Package - POST /packages/sync: Sync Packages - GET /.well-known/agent.json: Agent Card - GET /registry/agents: List Registered Agents - GET /registry/agents/{agent_id}: Get Registered Agent - DELETE /registry/agents/{agent_id}: Remove Registered Agent - POST /registry/agents/discover: Discover Agent - PUT /registry/agents/{agent_id}/trust: Update Agent Trust - POST /api/v1/quotes: Create Quote - GET /api/v1/quotes/{quote_id}: Get Quote - POST /api/v1/orders: Create Order - GET /api/v1/orders: List Orders - GET /api/v1/orders/report: Get Orders Report - GET /api/v1/orders/{order_id}: Get Order - GET /api/v1/orders/{order_id}/history: Get Order History - POST /api/v1/orders/{order_id}/transition: Transition Order - GET /api/v1/orders/{order_id}/audit: Get Order Audit - POST /api/v1/change-requests: Create Change Request - GET /api/v1/change-requests: List Change Requests - GET /api/v1/change-requests/{cr_id}: Get Change Request - POST /api/v1/change-requests/{cr_id}/review: Review Change Request - POST /api/v1/change-requests/{cr_id}/apply: Apply Change Request ## Objects none defined in this repository --- # agentic-audiences Source: https://aampexplorer.com/repos/agentic-audiences/ Draft embedding-exchange specification and taxonomy, contributed by LiveRamp, with a scoring service and a Prebid RTD example. Version: 106ebd6 Commit: 106ebd645668 Kind: specification Substance: partial Listed in the AAMP hub README: yes A readable draft and a detailed embedding taxonomy, described by its own README as LiveRamp's initial proposal. The schema that would connect it to the rest of AAMP is a zero-byte file, and so are the two example payloads and the roadmap. ## Operations none defined in this repository ## Objects (1) - EmbeddingExchangeMessage (11 fields) --- # agentic-direct Source: https://aampexplorer.com/repos/agentic-direct/ A2A and MCP wrapper over IAB OpenDirect 2.1, with a demo executor and browser client. Version: 915bda9 Commit: 915bda98f4de Kind: reference implementation Substance: partial Listed in the AAMP hub README: yes One real artifact inside a demo: opendirect.json, a manifest of 40 OpenDirect, AdCOM and OpenRTB object definitions. Its README calls that file an OpenAPI spec twice, the file has no openapi key, and the MCP server it feeds answers every tool call with generateMockResponse. ## Operations (33) - 0: Create a new Account. - 1: Update an existing Account - 2: Get a specific Account by ID - 3: List all Accounts - 4: Create a new Order. - 5: Update an existing Order - 6: Get a specific Order by ID - 7: List all Orders - 8: Create a new Line. - 9: Update an existing Line - 10: Get a specific Line by ID - 11: List all Lines - 12: Create a new Creative. - 13: Update an existing Creative - 14: Get a specific Creative by ID - 15: List all Creatives - 16: Create a new Assignment. - 17: Delete a Assignment - 18: Get a specific Assignment by ID - 19: List all Assignments - 20: Create a new Organization. - 21: Update an existing Organization - 22: Get a specific Organization by ID - 23: List all Organizations - 24: Get a specific Product by ID - 25: List all Products - 26: Search Products - 27: Create a new ChangeRequest. - 28: Get a specific ChangeRequest by ID - 29: List all ChangeRequests - 30: Create a new Message. - 31: Get a specific Message by ID - 32: List all Messages ## Objects (40) - OpenDirect.Account (5 fields): Defines a buyer-advertiser relationship for managing orders - OpenDirect.Order (15 fields): Specifies campaign plan with dates, budget, and currency for all line items - OpenDirect.Line (19 fields): Line items providing details about products being booked - OpenDirect.Product (31 fields): Product catalog item from ad placement to Run of Network - OpenDirect.Creative (9 fields): Ad creative to be displayed for order lines - OpenDirect.Assignment (6 fields): Associates a creative with an order line - OpenDirect.Organization (11 fields): Represents an advertiser, agency, or publisher - OpenDirect.Address (6 fields) - OpenDirect.Contact (9 fields) - OpenDirect.ChangeRequest (9 fields): Request to modify an existing order - OpenDirect.Message (11 fields): Communication between buyer and seller - OpenDirect.Placement (4 fields): Ad unit specifications for a line item - OpenDirect.AdUnit (3 fields): Contains AdCOM Ad Specification - AdCOM.CreativeSpec (7 fields): Desired characteristics of creatives - AdCOM.CreativeResp (5 fields): Creative instance with rendering information - AdCOM.VideoSpec (18 fields) - AdCOM.VideoResp (6 fields) - AdCOM.DisplaySpec (6 fields) - AdCOM.DisplayResp (9 fields) - AdCOM.BannerSpec (11 fields) - AdCOM.AudioSpec (11 fields) - AdCOM.AudioResp (5 fields) - AdCOM.NativeSpec (2 fields) - AdCOM.AMPSpec (2 fields) - AdCOM.Site (15 fields) - AdCOM.App (15 fields) - AdCOM.Publisher (4 fields) - AdCOM.Content (24 fields) - AdCOM.Producer (4 fields) - AdCOM.Device (30 fields) - AdCOM.Geo (13 fields) - AdCOM.User (8 fields) - AdCOM.Data (3 fields) - AdCOM.Segment (3 fields) - AdCOM.AdSpec (8 fields): Ad specification for bidding or OpenDirect packages - AdCOM.AdResp (10 fields) - OpenRTB.Deal (7 fields): Direct deal between buyer and seller - OpenRTB.PMP (3 fields): Private marketplace container for direct deals - OpenRTB.Regs (2 fields): Legal and regulatory requirements - OpenRTB.Source (3 fields): Source of bid request --- # buyer-agent Source: https://aampexplorer.com/repos/buyer-agent/ Demand-side reference implementation: campaign brief intake, channel specialists, negotiation, booking. Version: v2.3.0-24-g0c3a154 Commit: 0c3a1545e334 Kind: reference implementation Substance: partial Listed in the AAMP hub README: yes 58 files of documentation, the largest prose set in AAMP, over an OpenAPI that describes only the buyer's own 13 inbound paths. The buyer-to-seller protocol it implements is specified somewhere else. ## Operations (14) - GET /api/v1/buyer/orders: List Buyer Orders - GET /api/v1/buyer/orders/{order_id}/audit: Get Order Audit - GET /health: Health Check - POST /bookings: Create Booking - GET /bookings: List Bookings - GET /bookings/{job_id}: Get Booking Status - POST /bookings/{job_id}/approve: Approve Recommendations - POST /bookings/{job_id}/approve-all: Approve All Recommendations - POST /products/search: Search Products - GET /events: List Events - GET /events/{event_id}: Get Event - GET /reports/{job_id}: Get Campaign Report - GET /meta/campaigns: Meta List Campaigns - GET /meta/report: Meta Direct Report ## Objects none defined in this repository --- # AAMP Source: https://aampexplorer.com/repos/AAMP/ Umbrella index repository. Lists the component repos and states the release and governance model. README only. Version: 3b20e67 Commit: 3b20e67b5682 Kind: hub Substance: thin Listed in the AAMP hub README: yes A 270-word README. It lists six of the eight repositories, omits the wire contract, and gives an expansion of the acronym that two of the repositories it lists contradict. ## Operations none defined in this repository ## Objects none defined in this repository --- # registry-agent-example Source: https://aampexplorer.com/repos/registry-agent-example/ A 22-line sample chat agent that talks to an external agent-registry MCP server. Defines nothing itself. Version: 1ff8dda Commit: 1ff8dda0e487 Kind: example Substance: thin Listed in the AAMP hub README: yes A 22-line agent that points an MCP client at the registry defined in agent-registry, a repository outside AAMP. ## Operations none defined in this repository ## Objects none defined in this repository --- # Known gaps in the AAMP corpus Source: https://aampexplorer.com/ Found by reading the repositories, each checkable against the commit recorded above. - AgentDiscovery has a Request but no Response schema - ChangeRequest has a Response but no Request schema - NegotiationRound has a Response but no Request schema - agentic-audiences/specs/v1.0/schema/agent_interface.schema.json exists but is zero bytes — it defines nothing - agentic-audiences/specs/v1.0/examples/buyer_agent_request.json exists but is zero bytes — it defines nothing - agentic-audiences/specs/v1.0/examples/seller_agent_response.json exists but is zero bytes — it defines nothing - agentic-audiences/specs/roadmap.md exists but is zero bytes — it defines nothing ---