Upload creative

Upload a single asset file (image, video, or audio) to get a CDN URL (assetUrl). Use that URL when creating a hosted creative via Create Creative. Requires advertiserId, filename, and file (multipart/form-data).

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

Endpoint: POST /creative/upload (or POST /v1/creative/upload per your base URL)

Purpose: Upload an asset file (image, video, or audio) to storage. The API returns a CDN URL (assetUrl) for the uploaded file. It does not create a creative record. Use the returned URL in the Create Creative API (e.g. imageUrl, video.mediaUrls, audio.mediaUrls, dooh.imageUrl, dooh.mediaUrls).

Typical flow: 1) Call this API with your file → get assetUrl. 2) Call Create Creative with that assetUrl in the appropriate field.


Request

Content-Type: multipart/form-data

FieldTypeRequiredDescription
advertiserIdIntegerYesAdvertiser ID. The authenticated user must have campaign write permission for this advertiser.
filenameStringYesOriginal filename including a supported extension (see Allowed file extensions below). Case-insensitive.
fileBinaryYesThe file bytes (image, video, or audio).

All three fields are required. There are no optional form fields.


Allowed file extensions

The filename must end with one of these extensions (case-insensitive). If it does not, the API returns 400 with an error in messages.

CategoryExtensions
Image.jpg, .jpeg, .png, .gif
Video.webm, .flv, .mp4, .mpg4, .mov, .mxf, .mpeg, .mpg, .m4v, .avi
Audio.aac, .wma, .wav, .mp1, .mp2, .mp3, .ogg, .oga, .spx, .opus

The filename may be sanitized for storage (e.g. non-alphanumeric characters except the dot replaced with _).


Response

Content-Type: application/json

Success (200):

FieldTypeDescription
messagesArrayMay be empty on success.
entityObjectPresent on success.
entity.advertiserIdIntegerEcho of the request advertiserId.
entity.filenameStringEcho of the request filename.
entity.assetUrlStringCDN URL where the file is stored. Use this URL when creating a hosted creative (e.g. imageUrl, video.mediaUrls, audio.mediaUrls, dooh.imageUrl, dooh.mediaUrls).

Validation error (e.g. invalid or missing filename extension):

  • The API return 400 with messages containing an ERROR entry describing the problem (e.g. invalid filename or allowed extensions). Check messages before using entity.assetUrl.

Other errors: 4xx/5xx per API standards (e.g. authentication, permission, server error).


Example request and response

Example request

POST /v1/creative/upload with Content-Type: multipart/form-data:

KeyTypeExample value
advertiserIdform field107967
filenameform fieldbanner.jpg
filefile(binary image file)

Example response (200)

{
  "messages": [],
  "entity": {
    "advertiserId": 107967,
    "filename": "banner.jpg",
    "assetUrl": "https://media-cdn.adelphic-dev.com/image/107967/1a2b3c4d5e_banner.jpg"
  }
}

Use entity.assetUrl as imageUrl when creating a BANNER+HOSTED creative, or in video.mediaUrls / audio.mediaUrls / dooh.imageUrl / dooh.mediaUrls as appropriate. See Create Creative for payload examples.

Body Params

Multipart form data. All three fields are required. Filename must have an allowed extension (see Upload creative doc).

integer
required

Advertiser ID. User must have campaign write permission for this advertiser.

string
required

Original filename including a supported extension (e.g. .jpg, .png, .mp4, .mp3). Image jpg/jpeg/png/gif; Video webm/flv/mp4/mpg4/mov/mxf/mpeg/mpg/m4v/avi; Audio aac/wma/wav/mp1/mp2/mp3/ogg/oga/spx/opus.

file
required

The asset file bytes (image, video, or audio).

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