Update a creative

Update a Creative Library creative. Submit only the fields to change (POST or PUT). Omitted or null fields remain unchanged. The change is applied to every ad created from the creative.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Overview

Update a Creative Library creative. Submit a JSON object in a POST or PUT request body with only the fields to change. Fields that are omitted or null remain unchanged.

The change is applied to every ad created from the creative, across all of its campaigns. See Updating a creative.

Example - update the title and CTA of a creative:

POST /backstage/api/1.0/demo-advertiser/creatives/4321000001
{
  "title": "Summer sale: up to 60% off",
  "cta": {
    "cta_type": "BUY_NOW"
  }
}
{
  "id": 4321000001,
  "name": "Summer sale hero",
  "account_id": "demo-advertiser",
  "status": "ACTIVE",
  "creative_type": "STATIC_IMAGE",
  "url": "https://www.demo-advertiser.com/summer-sale",
  "thumbnail_url": "https://cdn.demo-advertiser.com/thumbnails/summer-sale.jpg",
  "title": "Summer sale: up to 60% off",
  "description": "Limited-time offer on the full summer collection",
  "display_data": null,
  "creative_crop": null,
  "performance_video_data": null,
  "cta": {
    "cta_type": "BUY_NOW"
  },
  "rating": null,
  "create_time_in_utc": "2026-09-01 10:15:30",
  "disclaimer": null,
  "orientation": "HORIZONTAL",
  "logo": null,
  "ads": {
    "ads": [
      {
        "id": 8765000101,
        "campaign_id": 33,
        "campaign_name": "Summer sale - US",
        "creative_id": 4321000001
      }
    ]
  },
  "app_install": null,
  "ai_disclosure": null,
  "custom_id": "SS-2026-HERO"
}
{
  "http_status": 400,
  "message": "No changes were made to the creative"
}
📘

Guidelines

  1. When updating a creative, you can use either PUT or POST.
  2. Submit only the fields of interest. Fields that are omitted or null remain unchanged.
  3. A request that changes nothing returns 400 with No changes were made to the creative. Re-sending the current values counts as no change.
  4. While the creative's status is CRAWLING, it cannot be updated. Poll the creative until it returns to ACTIVE. See Creative statuses.
  5. creative_type cannot be changed after creation. app_install can be set on creation only.
  6. id, account_id, status, orientation, create_time_in_utc and ads are read-only. Passing them returns 400.
🚧

The update reaches every ad

Every ad created from this creative is updated with the new values, in every campaign it is assigned to. Updated ads may go through review again and stop serving until approved. Changes to verification_pixel, viewability_tag, start_date, end_date and activity_schedule are the exception: they apply only to ads created after the update. To change a single ad only, edit that ad through the campaign item endpoint instead; see Updating a creative.

📘

Creative consolidation

An update that makes this creative identical to another creative in the library merges the two. The response then returns the other creative, with a creative_consolidation object describing the merge, and the id in the response differs from the one in the request path. See Creative consolidation.

📘

See also

Path Params
string
required

An alphabetic ID. See Get Account Details.

string
required

A numeric ID.

Body Params
json
required
Defaults to { "title": "Summer sale: up to 60% off", "cta": { "cta_type": "BUY_NOW" } }

The fields to update - refer to the notes provided.

Responses

Language
Credentials
OAuth2
LoadingLoading…
Response
Choose an example:
application/json