build_creative
Transform or generate a creative manifest for a specific format. This task takes a source manifest (which may be minimal for pure generation) and produces a target manifest in the specified format. Key concept:build_creative is fundamentally a transformation - it takes a creative manifest as input and produces a creative manifest as output. For pure generation (creating from scratch), the source manifest is minimal (just format and seed assets). For transformation (e.g., resizing, reformatting), the source is a complete creative.
For information about format IDs and how to reference formats, see Creative Formats - Referencing Formats.
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
message | string | No | Natural language instructions for the transformation or generation. For pure generation, this is the creative brief. For transformation, this provides guidance on how to adapt the creative. |
creative_manifest | object | No | Creative manifest to transform or generate from (see Creative Manifest). For pure generation, this should include the target format_id and any required input assets (e.g., promoted_offerings for generative formats). For transformation, this is the complete creative to adapt. |
target_format_id | object | Yes | Format ID to generate. Object with agent_url and id fields. The format definition specifies required input assets. |
promoted_offerings should be included in the creative_manifest.assets object, not as separate task parameters. The format definition specifies what assets it requires.
Use Cases
Pure Generation (Creating from Scratch)
For pure generation, provide a minimal source manifest with the required input assets defined by the format:Transformation (Adapting Existing Creative)
For transformation, provide the complete source manifest:Format Resizing
Transform an existing creative to a different size:Response Format
The response contains the transformed or generated creative manifest:Field Descriptions
- creative_manifest: The complete creative manifest ready for use with
sync_creativesorpreview_creative - format_id: The target format (matches
target_format_idfrom request) - promoted_offering: Product/offering being advertised (optional)
- assets: Map of asset IDs to actual asset content, matching the format’s
assets_requiredspecification
Workflow Integration
Typical Generation Workflow
- Build: Use
build_creativeto generate/transform the manifest - Preview: Use
preview_creativeto see how it renders (see preview_creative) - Sync: Use
sync_creativesto traffic the finalized creative
promoted_offerings (if required by the format) is included in creative_manifest.assets for build, flows through to the output manifest, and is available in the output for preview. No need to pass it separately at each step.
Examples
Example 1: Pure Generation (Generative Format)
Generate a creative from scratch using a generative format that requirespromoted_offerings:
Example 2: Format Transformation
Transform an existing 728x90 leaderboard to a 300x250 banner:Example 3: Transformation with Specific Instructions
Adapt a creative for mobile with specific design changes:Key Concepts
Transformation Model
build_creative follows a manifest-in, manifest-out model:
- Input: Creative manifest (can be minimal or complete, includes required assets)
- Process: Transform/generate based on
messageand manifest assets - Output: Target creative manifest ready for preview or sync
Pure Generation vs Transformation
- Pure Generation: Provide minimal
creative_manifestwith just the format_id and required input assets (likepromoted_offeringsfor generative formats). The creative agent generates output assets from scratch usingmessageas guidance. - Transformation: Provide complete
creative_manifestwith all existing assets. The creative agent adapts existing assets to the target format, optionally following guidance inmessage.
Integration with Other Tasks
- build_creative → Generates manifest
- preview_creative → Renders the manifest (see preview_creative)
- sync_creatives → Traffics the finalized manifest
- Build once, preview multiple times with different contexts
- Iterate on build without re-syncing
- Preview before committing to traffic