AdCP uses two related but distinct concepts when working with creative formats. Their names are similar, which causes a recurring implementation error β this page defines both precisely and names the two failure modes.Documentation Index
Fetch the complete documentation index at: https://agenticadvertisingorg-changeset-release-main.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
format_id β structured reference object
format_id is always a JSON object, never a plain string. It identifies a format by the agent that declared it and the formatβs local slug:
format_id is a pointer β it names a format without carrying its definition.
format β full definition object
format is the complete specification of a creative format. It is returned by list_creative_formats and related tasks. A format object contains a format_id as one of its properties, plus the asset requirements, render specs, and all other metadata:
format is a definition β it describes what the format requires and how it renders.
Contrast at a glance
| Concept | Field name | JSON type | Use |
|---|---|---|---|
| Format identifier | format_id | object β { agent_url, id } | Pointer. Used in creative manifests, request filters, placement declarations. |
| Format definition | format | object β full spec | Returned by list_creative_formats. Contains format_id as a nested field. |
| Array of identifiers | format_ids | array of format_id objects | Filter parameter on list_creatives, list_creative_formats, and related requests. |
| Array of definitions | formats | array of format objects | Response field on list_creative_formats. |
Two named failure modes
Anti-pattern A β string in a format_id slot
Wrong β format_id must be an object, not a plain string:
format_id must be of type object. Cause: the .id string inside the format_id object looks like a self-contained name and is sometimes extracted and used directly.
Anti-pattern B β format_id object in a format / formats slot
Wrong β a formats[] element must be a full definition object, not a bare format_id:
formats[0] must have required property 'name'. Cause: format_id and format are both objects; the shorter object is sometimes put in the slot that expects the larger one.
See also
- Creative Formats β full format object structure, asset types, and render specs
- Template Format IDs β parameterized format IDs for dimension-variable templates