Updating a Creative
Update a creative changes a creative in the Creative Library and, with it, every ad created from that creative, in every campaign it is assigned to. This is the "edit once, everywhere" behavior of the library.
Partial updates
Submit only the fields to change, in a POST or PUT request. Fields that are omitted or null remain unchanged.
PUT /backstage/api/1.0/demo-advertiser/creatives/4321000001{
"thumbnail_url": "https://cdn.demo-advertiser.com/thumbnails/summer-sale-v2.jpg",
"title": "Summer sale: up to 60% off"
}{
"id": 4321000001,
"status": "ACTIVE",
"thumbnail_url": "https://cdn.demo-advertiser.com/thumbnails/summer-sale-v2.jpg",
"title": "Summer sale: up to 60% off",
"ads": {
"ads": [
{
"id": 8765000101,
"campaign_id": 33,
"campaign_name": "Summer sale - US",
"creative_id": 4321000001
},
{
"id": 8765000270,
"campaign_id": 270,
"campaign_name": "Summer sale - UK",
"creative_id": 4321000001
}
]
},
...
}Both ads listed in ads.ads now carry the new image and title.
Guidelines
- A request that changes nothing returns 400 (
No changes were made to the creative). Re-sending the current values counts as no change.creative_typecannot be changed.app_installcan be set on creation only.id,account_id,status,orientation,create_time_in_utcandadsare read-only.- A creative in
CRAWLINGstatus is read-only. Poll it until it returns toACTIVE, then retry. See Creative statuses.- To update many creatives in one request, use Bulk upsert creatives.
What happens to the ads
- Every ad created from the creative that is not stopped is updated with the new values.
- Updated ads may need to be reviewed again. Until approved, they can stop serving temporarily.
- An ad whose
urlwas changed individually keeps its ownurl, and the other fields are still updated from the creative. If the update changes the creative's landing page, every ad'surlis replaced with the creative's newurl. - Changes to
verification_pixel,viewability_tag,start_date,end_dateandactivity_scheduleapply only to ads created after the update. Existing ads keep their values. See Tracking and scheduling.
To change one ad only, edit the ad, not the creativeEditing the creative reaches all campaigns. To change a single campaign's ad, update that ad with Update a campaign item. Changing the content of an ad whose creative is shared with other ads detaches that ad from the creative. See Change a single ad.
Creating a variation instead of updating
To keep the current ads running unchanged and run a changed version alongside them, do not update the creative. Instead, create a new creative with the changed content and assign it to the campaigns that should run the variation. There is no separate "duplicate" endpoint: duplicating is creating a new creative with the same fields.
Creative consolidation
The library does not keep 2 identical creatives. Identity is based on the creative's content (image, title, description, CTA, logo, and similar fields) and on its landing page. name and custom_id are not part of it.
The landing page is the final page the url leads to, not the raw url. URLs that differ only by a tracking or redirect wrapper and lead to the same page count as the same landing page.
- On create: if an identical creative already exists, no new creative is created. The existing creative is returned, with
creative_consolidation.matched_creative_idset to its ID. - On update: if the update makes the creative identical to another existing creative, the updated creative is merged into the existing one: its ads are moved to the existing creative and the updated creative is stopped. The response returns the existing creative, so the
idin the response can differ from theidin the request path.
{
"id": 4321000007,
"status": "ACTIVE",
"title": "Summer sale: up to 60% off",
"creative_consolidation": {
"source_creative_id": 4321000001,
"matched_creative_id": 4321000007,
"reassigned_ad_ids": [
8765000101,
8765000270
]
},
...
}Integrations that store creative IDs should read the id from the response after every create or update, rather than assume it is unchanged. See Creative fields.
See also
Updated about 20 hours ago
