Skip to main content
PUT
Update creative manifest

Authorizations

Authorization
string
header
required

API key or access token

Path Parameters

campaignId
string
required

Campaign ID

Minimum string length: 1
creativeId
string
required

Creative manifest ID

Minimum string length: 1

Body

application/json

JSON metadata for updating a creative manifest

name
string

Updated manifest name

Required string length: 1 - 255
message
string

Updated creative brief

Maximum string length: 5000
format_id
object

Updated legacy-v1 ADCP named-format ref

format_kind

Updated AdCP 3.1 canonical format kind. Alternative to format_id for canonical formats.

Available options:
image
format_option_ref
object

Updated format_option_ref. Accepts scope:"publisher" (requires publisher_domain) or scope:"product". Legacy flat shape without scope is also accepted.

industry_identifiers
object[]

Updated industry identifiers. Replaces existing list.

target_format_ids
object[]

Additional format IDs this creative covers beyond its primary format_id. Replaces the existing list.

template_id
string

Updated creative template ID

click_url
string<uri>

Canonical click-through URL. Server assigns this to the AdCP click_url slot and refreshes click tracking metadata.

url_asset
object

Add a single URL asset (per AdCP url-asset spec). For multi-slot formats (e.g. native), use url_assets instead.

url_assets
object[]

URL assets assigned to specific AdCP format slots. Each entry replaces any existing asset assigned to the same slot asset_id.

Maximum array length: 50
text_assets
object[]

Text assets assigned to specific AdCP format slots. Each entry replaces any existing asset assigned to the same slot asset_id.

Maximum array length: 50
macro_additions
object[]

Full creative-local click-URL query parameter list. Empty clears local additions; null values suppress inherited keys.

Maximum array length: 50
webhook_asset
object

Add a webhook asset for DCO (dynamic content).

delete_asset_ids
string[]

Asset IDs to remove from the manifest (max 100)

Maximum array length: 100
Minimum string length: 1
primary_asset_id
string

Promote this asset to CREATIVE_SOURCE (the renderable "primary" asset). Demotes the current primary to USER_UPLOADED. Only IMAGE, VIDEO, AUDIO, HTML, and VAST assets may be set as primary.

Minimum string length: 1
reclassify_assets
object[]

Reclassify existing assets to a different type

Maximum array length: 100
new_assets
object[]

Metadata for newly uploaded files being added

frequencyCaps
object[]

Buyer-defined frequency caps for this creative. When provided, replaces the existing list; omit to preserve.

cards
object[]

Full replacement of carousel cards (image_carousel format). Max 10. Provide asset_id for existing media, filename for new uploads, or url for pre-hosted assets.

Maximum array length: 10

Response

Update creative manifest

Creative manifest with inline assets

creative_id
string
required

Creative manifest ID

name
string
required

Manifest name

assets
object[]
required

Uploaded assets in this manifest

created_at
string<date-time>
required

Created timestamp

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
updated_at
string<date-time>
required

Updated timestamp

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
revision
integer

Authoritative monotonic revision of the complete saved Creative state.

Required range: 0 < x <= 9007199254740991
assembly_state
enum<string>

Whether the Creative is an incomplete advertiser draft or a complete composition.

Available options:
draft,
complete
preview_revision
string

Exact opaque revision of the buyer-preview projection. Use it to bind short-lived previews to the current manifest content.

Pattern: ^[a-f0-9]{64}$
message
string

Creative brief text

brand_domain
string

Brand domain (auto-resolved)

template_id
string

Creative template used for this manifest

format_id
object

ADCP format identifier

format_kind
string

AdCP 3.1 canonical format kind (e.g. image_carousel, video_hosted)

params
object

URL-free canonical parameters retained with the canonical format_kind identity.

format_option_ref
object

AdCP 3.1 scope-discriminated format option reference.

requires_upgrade
boolean

True when this creative has no format_kind and must be upgraded before it can be assigned to new media buys. Call POST .../upgrade to set format_kind and clear this flag.

industry_identifiers
object[]

Industry identifiers (Ad-ID, ISCI, Clearcast clock, IDcrea)

target_format_ids
object[]

Target format IDs (from campaign products)

reuse_count
integer

Number of campaigns this creative is actively attached to. A reuse signal for the advertiser library (returned on the advertiser-scoped list); omitted on single-manifest reads.

Required range: 0 <= x <= 9007199254740991
creative_role
enum<string>

Advertiser-library role (evergreen or reference). Absent for flight-specific creatives that live on their campaign.

Available options:
evergreen,
reference
creative_source
enum<string>

Provenance of the creative (uploaded/generated/connected). Today always "uploaded".

Available options:
uploaded,
generated,
connected
preview_url
string<uri>

URL to preview the processed creative (processed HTML hosted in GCS)

Carousel card definitions for image_carousel creatives.

html_processing
object

Result of HTML processing (CDN URL rewriting + macro insertion)

auto_detected_template
object

Auto-detected template info (populated when template_id was not explicitly provided)

creative_manifest
any

Full ADCP creative manifest (built for sync)

sync_status
object

Sync status across sales agents

Provider/sales-agent creative identifiers captured from sync_creatives for round-trip comparison.

tracking
object

Templates of the Apostra impression and click trackers. They carry identity placeholders that Apostra fills per media buy and package at sync, so they are not trafficking-ready.

macro_additions
object[]

Creative-local click-URL parameter additions.

Maximum array length: 50
campaign_id
string

Campaign ID (omitted for advertiser-level masters)

advertiser_id
string

Advertiser ID this manifest belongs to

frequencyCaps
object[]

Buyer-defined frequency caps configured for this creative

already_exists
boolean

True when create returned a pre-existing manifest with the same (campaign_id, name) instead of inserting a new one. Only set on create responses.

ignored_files
integer

Number of files in the create request that were ignored because the request hit the (campaign_id, name) dedupe path and returned a pre-existing manifest. Use the update endpoint to add or replace assets on the existing manifest. Only set when already_exists is true.

Required range: 0 <= x <= 9007199254740991
warnings
string[]

Advisory warnings about the saved creative; the creative was saved. Set on update when an explicit format does not match any format accepted by the campaign products (reassign it or update the product configuration before executing). Set on create and update when the click-through URL already sets a query key that a configured click-URL parameter (utmConfig or macroAdditions) also sets: the URL keeps its own value and that parameter is not added.