Update creative

Update an existing creative by ID. Send only the fields you want to change; omitted fields are unchanged. Creative type cannot be changed. For Hosted Banner, include both imageUrl and landingPageUrl.

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

Endpoint: PUT /creative/{creativeId} (your base URL may include a version path, e.g. /v1/creative/{creativeId})

Purpose: Update an existing creative. The creative is identified by creativeId in the URL path. You can send only the fields you want to change; omitted fields keep their current values. The creative type (e.g. BANNER, VIDEO) cannot be changed.


Path parameter

NameTypeRequiredDescription
creativeIdintegerYesThe ID of the creative to update. The creative must already exist.

Request body

Content-Type: application/json

The body uses the same JSON shape as Create Creative. Only the fields you include in the body are updated; omitted fields keep their current values.

Exception — Hosted Banner (BANNER + HOSTED): When updating a hosted image banner, you must include both imageUrl and landingPageUrl in the body. Omitting either causes it to be cleared and triggers a validation error (e.g. "Landing Page URL is a required field.").

Not used on update: creativeType, creativeSubtype, and type are not applied; the creative’s type is fixed. advertiserId and campaignId are not required and do not change the creative’s advertiser.


Required and updatable fields

Path

FieldRequiredDescription
creativeIdYesIn the URL path. Identifies the creative to update.

Request body — common (all creative types)

FieldRequiredUpdatableNotes
nameNoYesMax 400 characters.
crawlableUrlNoYes
externalCreativeidNoYes
landingPageUrlNoYesOnly for creatives that support a click-through URL (e.g. hosted banner, hosted video/audio, native).
impressionTrackingPixel1 … 4NoYes
channelsNoYese.g. ["MOBILE","DESKTOP"].
statusNoYesAllowed values: APPROVED, DISABLED, INCOMPLETE, PENDING, VIOLATION, REJECTED.

Request body — by creative type and subtype

Only the fields listed for that creative kind are applied. Omitted or null fields leave the existing value unchanged unless noted.

creativeTypecreativeSubtypeUpdatable type-specific fieldsRequired when updating this type
BANNERHOSTEDimageUrl, landingPageUrlBoth imageUrl and landingPageUrl must be present in the body.
BANNERTAG (Custom Tag)htmlAsset (or display.htmlAsset), size (width, height)No.
BANNERTAG (Medialets)adTagId, size (width, height)No.
NATIVEIMAGEnative: headline, caption, sponsoredBy, imageUrl, imageIconNo.
NATIVEHOSTEDnative: headline, caption, sponsoredBy, imageUrl, imageIcon, mediaUrlsNo.
NATIVEVASTXML / VASTURLnative: headline, caption, sponsoredBy, imageUrl, imageIcon, vastXml or vastUrlNo.
AUDIOVASTXML / VASTURL / HOSTEDaudio: vastXml, vastUrl, or mediaUrlsNo.
VIDEOVASTXML / VASTURL / HOSTEDvideo: vastXml, vastUrl, or mediaUrlsNo.
DOOHIMAGEdooh.imageUrlNo.
DOOHVIDEOdooh.mediaUrlsNo.

Not updatable (ignored)

  • creativeType, creativeSubtype, type (mediaType, id, vendorId, videoType) — Creative kind is fixed.
  • advertiserId, campaignId — Not required on update; existing advertiser is unchanged.

Response

Response body includes messages (array) and, on success, entity (the updated creative object, same structure as in the Create Creative response).

StatusDescription
200Success or validation failure. Check messages for ERROR entries; if any, the update may have failed and entity may be null.
400Validation error (e.g. missing required field for that creative type).
401Authentication required.
403Permission denied for the creative’s advertiser.
404Creative not found.

Example request and response

Example 1: Update name only

Request: PUT /creative/24803058

Body:

{
  "name": "Updated creative name"
}

Example response (200):

{
  "messages": [],
  "entity": {
    "id": 24803058,
    "name": "Updated creative name",
    "creativeType": "BANNER",
    "creativeSubtype": "HOSTED",
    "type": { "mediaType": "BANNER" },
    "imageUrl": "https://cdn.example.com/banner.jpg",
    "landingPageUrl": "https://example.com/landing",
    "status": "PENDING"
  }
}

Example 2: Update Custom Tag (BANNER + TAG)

Request: PUT /creative/12345678

Body:

{
  "name": "Updated Custom Tag",
  "creativeType": "BANNER",
  "creativeSubtype": "TAG",
  "type": { "mediaType": "BANNER" },
  "size": { "width": 300, "height": 250 },
  "htmlAsset": "<script src=\"https://example.com/new-tag.js\"></script>"
}

Example 3: Update Hosted Banner (BANNER + HOSTED)

Request: PUT /creative/24803058

Body: (both imageUrl and landingPageUrl must be included)

{
  "name": "Test Banner Creative via Update 1234",
  "creativeType": "BANNER",
  "creativeSubtype": "HOSTED",
  "type": { "mediaType": "BANNER" },
  "imageUrl": "https://placehold.co/300x250.png",
  "landingPageUrl": "https://example.com/landing"
}

Example 4: Update status only

Request: PUT /creative/12345678

Body:

{
  "status": "DISABLED"
}

Example 5: Update Video (VIDEO + HOSTED)

Request: PUT /creative/12345678

Body:

{
  "name": "Updated Hosted Video",
  "creativeType": "VIDEO",
  "creativeSubtype": "HOSTED",
  "type": { "mediaType": "VAST" },
  "video": {
    "mediaUrls": ["https://cdn.example.com/new-video.mp4"]
  }
}

Example 6: Update Native (NATIVE + IMAGE)

Request: PUT /creative/12345678

Body:

{
  "name": "Updated Native",
  "creativeType": "NATIVE",
  "creativeSubtype": "IMAGE",
  "type": { "mediaType": "NATIVE" },
  "native": {
    "headline": "New headline",
    "caption": "New caption",
    "sponsoredBy": "Brand",
    "imageUrl": "https://cdn.example.com/native-main.jpg",
    "imageIcon": "https://cdn.example.com/icon.jpg"
  }
}

Example 7: Update DOOH Video (DOOH + VIDEO)

Request: PUT /creative/12345678

Body:

{
  "name": "Updated DOOH Video",
  "creativeType": "DOOH",
  "creativeSubtype": "VIDEO",
  "type": { "mediaType": "VAST" },
  "dooh": {
    "mediaUrls": ["https://cdn.example.com/new-dooh-video.mp4"]
  }
}
Path Params
int32
required

ID of the creative to update.

Body Params

Send only the fields you want to change; omitted fields keep their current values. Creative type cannot be changed. For Hosted Banner (BANNER+HOSTED), include both imageUrl and landingPageUrl or validation fails. creativeType, creativeSubtype, and type in the body are not applied on update.

string
length ≤ 400
type
object

Only mediaType is required for create. Use id/vendorId for vendor mapping (see Creative Type IDs).

size
object
integer
int32
string
enum
Allowed:
string
string
string
string
video
object
audio
object
native
object
dooh
object
display
object
channels
array of strings
channels
string
string
length ≤ 26
string
string
string
string
string
enum

Update creative status.

Allowed:
Responses

401

Unauthorized

403

Forbidden

404

Not Found

Language
Credentials
Basic
base64
:
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json