TheDocumentation Index
Fetch the complete documentation index at: https://docs.adcontextprotocol.org/llms.txt
Use this file to discover all available pages before exploring further.
sponsored_placement canonical covers retail-media catalog-driven creative — Amazon SP, Criteo SP, CitrusAd SP, Pinterest Collection, generative-per-SKU. The schema captures the binary axes (composition_model, fanout_mode, item_production_model) but the runtime contract — fan-out semantics, catalog-asset wiring, per-adopter tracking — differs enough between adopter families that a manifest validating against sponsored_placement tells the buyer little about whether it will actually serve on a given retail-media network.
This page documents the four contract families, their current experimental readiness, and the adopter-specific quirks that don’t live in the schema. The canonical stays experimental: true past 3.1 GA until at least two retail-media networks ship format_schema evidence (see canonical-formats.mdx §experimental — one field, both axes).
The four contract families
| Family | composition_model | fanout_mode | item_production_model | Nondeterminism flag | Adopters |
|---|---|---|---|---|---|
| Retail-media deterministic, buyer-uploaded | deterministic | per_item | buyer_uploaded | Not set | Amazon SP |
| Retail-media network-composed | deterministic | per_item | seller_pre_rendered_from_brief | Not set | Criteo SP, CitrusAd SP |
| Collection-layout per impression | deterministic (debatable) | multi_item_in_creative | buyer_uploaded | Not set | Pinterest Collection, Snap Collection |
| Generative-per-SKU | deterministic | per_item | agent_synthesized | synthesis_nondeterministic: true | Vendor-specific (Pencil, Persado, vertical retail-media platforms) |
1. Retail-media deterministic, buyer-uploaded (Amazon SP)
The buyer uploads the catalog assets (product image, headline, description) viasync_creatives. The retail-media network ingests the catalog row + assets and serves them deterministically against query/category triggers — no fan-out at render time. The buyer can predict per-impression rendering.
- Catalog-asset contract: buyer supplies one creative per catalog item; the
source_catalogslot points at the buyer’s product feed; per-item assets are required. - Tracking: Amazon ASIN + standard retail-media event vocabulary. Per-item attribution maps to the catalog row’s identifier.
- Adopter quirks: Amazon’s category-trigger system means the same uploaded creative may serve under different category contexts — buyers MUST treat impression-level category as untrusted-by-creative-shape; rely on Amazon’s reporting for category attribution.
- Experimental readiness: predictable enough for sandbox and controlled-adopter use. Most predictable family;
format_schemaevidence from Amazon would support promotion toward non-experimental.
2. Retail-media network-composed (Criteo SP, CitrusAd SP)
The buyer supplies a brief + brand assets (logo, brand colors); the retail-media network composes the placement against its own catalog + design templates. The buyer cannot predict per-impression rendering at the asset-bundle level, only at the brand-direction level.- Catalog-asset contract: buyer supplies brief + brand assets; the
source_catalogis the seller’s catalog (the retail-media network’s product index), not the buyer’s. The buyer’s product references are matched to seller-catalog rows via SKU / GTIN / category. - Tracking: retail-media network’s own event vocabulary; buyer attribution maps through the network’s reporting API, not direct creative events.
- Adopter quirks: Criteo’s composition logic varies by retailer integration — the same buyer brief produces different placements on Walmart vs. Target vs. Best Buy via Criteo. Buyers MUST treat per-retailer rendering as opaque and rely on Criteo’s aggregated reporting.
- Experimental readiness: suitable for controlled-adopter use. The composition opacity is the gap to non-experimental promotion —
format_schemaevidence would need to document the per-retailer variability.
3. Collection-layout per impression (Pinterest Collection, Snap Collection)
The buyer supplies a hero image + a collection of catalog items; the surface picks the collection layout per impression (grid, carousel, cover + reveal).composition_model: deterministic is technically true at the asset level but loose at the layout level.
- Catalog-asset contract: buyer supplies one creative with a hero asset slot + an items array (each item: image + caption + URL). The
source_catalogslot is the buyer’s curated item collection, not a full product feed. - Tracking: Pinterest’s collection-item events (
collection_item_click,collection_close_up) plus standard impression/click. Per-item attribution available; layout-variant attribution is not exposed. - Adopter quirks: Snap Collection’s “cover + reveal” layout requires a specific aspect ratio and asset count combination — schema doesn’t enforce; buyers SHOULD pre-validate before sync.
- Experimental readiness: suitable for controlled-adopter use. The “deterministic” claim survives at the asset level but layout variability blocks non-experimental promotion without per-surface conformance evidence.
4. Generative-per-SKU (vendor-specific)
The buyer supplies a brief + catalog reference; the seller’s generative pipeline produces a unique creative per SKU. 1 brief × N catalog items → N rendered creatives.composition_model remains deterministic because each rendered item is produced before delivery and then served as produced; the generative mechanism is captured by item_production_model: "agent_synthesized".
- Catalog-asset contract: buyer supplies the brief + a catalog scope (SKUs, categories, or full feed); the seller produces creatives via
build_creativewithitem_production_model: agent_synthesizedandfanout_mode: per_item. Thesource_catalogslot is the buyer’s product feed; assets are seller-generated. - Nondeterminism: products in this family SHOULD declare
synthesis_nondeterministic: truewhen generation cannot guarantee in-spec output before the QA loop completes. - Tracking: generative-output ID + buyer’s catalog-item key (SKU/GTIN). Buyers SHOULD treat each generated creative as a distinct rendered output with its own performance signal, not as a copy of the brief.
- Adopter quirks: generative seeds and prompts are typically not exposed back to the buyer; buyers cannot reproduce a specific generation. Plan for re-generation cycles rather than asset-edit cycles.
- Experimental readiness: leave
experimental: trueuntil generative-quality evidence is documented per-adopter. Controlled use is possible, but the composition is opaque to the buyer and needs per-vendor framing.
Experimental-readiness matrix
| Family | Controlled-adopter use | Default production routing | Promotion evidence |
|---|---|---|---|
| Retail-media deterministic, buyer-uploaded | Ready | Keep experimental until evidence lands | Amazon format_schema evidence |
| Retail-media network-composed | Ready | Keep experimental until evidence lands | Per-retailer variability documentation |
| Collection-layout per impression | Ready | Keep experimental until evidence lands | Per-surface conformance evidence |
| Generative-per-SKU | Vendor-specific only | Keep experimental | Generative-quality evidence; may not promote without per-vendor framing |
experimental lives on both the canonical and the product declaration. See canonical-formats.mdx §experimental — one field, both axes for the field-level contract.
What this page is not
- Not a normative spec extension. The four families share the existing
sponsored_placementschema; this doc names the variability sellers and buyers will encounter against the canonical, but adds no required fields. - Not a promotion gate. The canonical’s promotion to non-experimental is gated on
format_schemaevidence across at least two adopters, per canonical-formats.mdx. This page documents whatformat_schemaevidence will need to cover for each family. - Not exhaustive. Adopters whose runtime contract doesn’t fit one of the four families above SHOULD file an issue against the canonical-formats track so the matrix can be extended.
Refs
- #3307 — original
sponsored_placementcanonical - #4592 — this doc
canonical-formats.mdx— overall canonical-formats vocabulary