Product.format_options[]. list_creative_formats, recursive creative-agent catalogs, and compound named format IDs are deprecated compatibility surfaces.
Choose the authority first
The seller declares deliverability; it does not nominate a creative producer. Buyers can use the AgenticAdvertising.org registry to find creative agents whose self-declared canonical envelope satisfies the product declaration.
Zero registry matches is a valid result: it means no protocol-exposed build, validation, or preview service currently advertises that contract. The buyer may still supply an already-conforming finished manifest or use a seller-returned preview, but MUST NOT infer a renderer from the publisher or product format declaration.
Standard formats
For standard display, video, audio, and native shapes, use the canonicalformat_kind and narrow it with explicit parameters and slots. Do not create a new identifier merely because your product has a different price or placement name.
format_options[] is a closed set. A package or creative selector outside it must be rejected. Price, floor, availability, and deal eligibility stay on the product or pricing option, not in format parameters.
Publisher-owned formats
When a product sells a publisher-catalog format, repeat its namespace and canonical declaration inline:/.well-known/adagents.json first. If the publisher has not adopted AdCP, use an explicitly identified AgenticAdvertising.org community mirror. Do not promote one sales agent’s product declaration into a publisher fact.
Custom formats
Useformat_kind: "custom" only when the structural creative contract cannot be expressed by a canonical kind. Supply both format_shape and an immutable, digest-pinned format_schema.
Multi-placement coverage
Product-level options are the upper bound. Placement-level options may narrow that set but cannot broaden it. For every included delivery placement, the selected package format set must have a non-empty compatible intersection. Reject or refine a package that cannot cover all included placements; never silently drop inventory.Finding a creative producer
Sales agents do not publish a recursive list of creative agents. A buyer can reverse-query the registry and then verify the selected agent directly:supported_formats[] entry supplies its local capability_id. That string is passed to build_creative.target_capability_id; it is never copied onto the product or returned manifest.
3.x compatibility
A 3.2 seller may project canonical declarations into deprecatedformat_ids[] for an older peer. When both fields are emitted, they must describe the same underlying contracts and canonical fields win. Do not independently author or extend the legacy catalog.