/schemas/v2/media-buy/list-creative-formats-request.json
Response Schema: /schemas/v2/media-buy/list-creative-formats-response.json
Sales Agent vs Creative Agent Behavior
Both sales agents and creative agents implementlist_creative_formats, but with different behaviors:
Creative agents (like https://creative.adcontextprotocol.org):
- Return authoritative format definitions they own
- May reference other creative agents for additional formats
- Provide full specifications for building and validating creatives
https://test-agent.adcontextprotocol.org):
- Return only formats used by active products
- Reference creative agents for format specifications
- Filter results based on what’s actually purchasable
Request Parameters
Multi-Render Dimension Filtering
Formats may produce multiple rendered pieces (e.g., video + companion banner). Dimension filters use “any render fits” logic:max_width: 300, max_height: 250- Returns formats where AT LEAST ONE render is ≤ 300×250- Use case: “Find formats that can render into my 300×250 ad slot”
- Example: Format with primary video (1920×1080) + companion banner (300×250) matches because companion fits
Response
See Format schema for complete format object structure.
Recursive Discovery
Creative agents may reference other creative agents that provide additional formats:Common Scenarios
Get Specs for Product Format IDs
Find Formats by Asset Types
Find Third-Party Tag Formats
Filter by Type and Dimensions
Search by Name
Responsive Formats
Format Structure
Each format includes:Asset Roles
Common asset roles help identify asset purposes:hero_image- Primary visualhero_video- Primary video contentlogo- Brand logoheadline- Primary textbody_text- Secondary textcall_to_action- CTA button text
Asset Types Filter Logic
Theasset_types parameter uses OR logic - formats matching ANY specified asset type are returned.
Example: asset_types: ['html', 'javascript', 'image']
- Returns formats accepting html OR javascript OR image
- Use case: “Show me formats I can use with any of my available asset types”
test=false
Dimension Filtering for Multi-Render Formats
Some formats produce multiple rendered pieces:- Video with companion banner - Primary video (1920×1080) + banner (300×250)
- Adaptive displays - Desktop (728×90) + mobile (320×50)
- DOOH installations - Multiple screens with different dimensions
test=false
Implementation Requirements
When implementinglist_creative_formats for a creative agent:
- Return authoritative formats - Include full specifications for formats you define
- Reference other agents - Use
creative_agentsto delegate to other creative agents - Include capabilities - Indicate what operations you support (validation, assembly, generation, preview)
- Support filtering - Implement filter parameters (type, asset_types, dimensions, etc.)
Error Handling
Best Practices
1. Use format_ids Parameter Most efficient way to get specs for formats returned byget_products.
2. Cache Format Specifications
Format specs rarely change - cache by format_id to reduce API calls.
3. Filter by Asset Types for Third-Party Tags
Search for asset_types: ['html'] or ['javascript'] to find tag-accepting formats.
4. Consider Multi-Render Formats
Check renders array length - some formats produce multiple pieces requiring multiple placements.
5. Validate Asset Requirements
Ensure your creative assets match format specifications before building creatives.
Next Steps
After discovering formats:- Build Creatives: Use
build_creativeto assemble assets into format - Preview: Use
preview_creativeto see visual output - Validate: Use
sync_creativeswithdry_run: true - Upload: Use
sync_creativesto upload to media buy
Learn More
- Format Schema - Complete format structure
- Asset Types - Asset specification details
- Standard Formats - IAB-compatible reference formats