Creative API
Creatives
List creatives
GET /v1/creatives/advar
Get a list of advar creatives filtered on at least one parameter.
Request body
| Parameter | In | Required | Type | Description |
creativeId |
path | Yes | integer | The creatives ID. |
campaignId |
parameter | No | integer | Campaign ID of the campaign whose advar creatives you want to list. |
creativeId |
parameter | No | integer | Comma separated list of creative ids you want to list. |
bookingId |
parameter | No | integer | Comma separated list of booking ids you want to list creatives for. |
search |
parameter | No | string | An url-encoded search string to apply to the list of creatives (ignoring case, on creative name). |
limit |
parameter | No | integer | Pagination property to limit the number of returned targets. |
offset |
parameter | No | integer | Pagination property to offset the returned targets. |
Response - 200
[
{
"creativeId": 18,
"campaignId": 17,
"creativeName": "27M2N8500/01 Rectangle 1",
"formatId": 1,
"advarTemplateName": "Image_FlexBanner.html",
"sku": null,
"lastEditedDate": "2026-07-01T10:16:32Z",
"templateParameters": {
"<CLICKURL>": "https://www.philips.be/c-p/27M2N8500_01/gamemonitor-qd-oled-gamemonitor",
"<ALT_TEXT>": "QD OLED-gamemonitor"
},
"templateFiles": {
"2": {
"fileName": null,
"filePath": "https://demo-preview.adhese.org/pool/lib/18_2nd_1.png"
}
},
"lastEdited": 1782900992000
},
{
"creativeId": 19,
"campaignId": 17,
"creativeName": "27M2N8500/01 Rectangle 2",
"formatId": 1,
"advarTemplateName": "Image_FlexBanner.html",
"sku": null,
"lastEditedDate": "2026-07-01T10:19:06Z",
"templateParameters": {
"<CLICKURL>": "https://www.philips.be/c-p/27M2N8500_01/gamemonitor-qd-oled-gamemonitor",
"<ALT_TEXT>": "QD OLED-gamemonitor 2"
},
"templateFiles": {
"2": {
"fileName": null,
"filePath": "https://demo-preview.adhese.org/pool/lib/19_2nd_1.png"
}
},
"lastEdited": 1782901146000
},
{
"creativeId": 27,
"campaignId": 17,
"creativeName": "Apitest advar banner ",
"formatId": 1,
"advarTemplateName": "Image_FlexBanner.html",
"sku": "",
"lastEditedDate": "2026-08-10T07:29:49Z",
"templateParameters": {
"<CLICKURL>": "",
"<ALT_TEXT>": ""
},
"templateFiles": {
"2": {
"fileName": null,
"filePath": "https://demo-preview.adhese.org/pool/lib/27_2nd_1.png"
}
},
"lastEdited": 1786346989000
}
]
Response codes
| Status | Meaning |
200 |
Creatives found. |
400 |
Bad request - invalid input or parameters. |
401 / 403 |
Not authenticated / not allowed. |
404 |
Not Found - Resource not found. |
409 |
Conflict. |
500 |
Internal Server Error - Unexpected failure. |
Update an advar creative
PUT /v1/creatives/advar/{creativeId}
Updates an advar creative by creative ID
Request body
| Parameter | In | Required | Type | Description |
creativeId |
path | Yes | integer | The creatives ID. |
Updating an advar creative
{
"campaignId": 17,
"creativeName": "Apitest advar banner update",
"sku": "string",
"formatId": 1,
"advarTemplateName": "Image_FlexBanner.html",
"templateParameters": {},
"templateFiles": {}
}
Response - 200
{
"creativeId": 27,
"campaignId": 17,
"creativeName": "Apitest advar banner update",
"formatId": 1,
"advarTemplateName": "Image_FlexBanner.html",
"sku": "string",
"lastEditedDate": "2026-08-10T13:36:10Z",
"templateParameters": {},
"templateFiles": {
"2": {
"fileName": null,
"filePath": "https://demo-preview.adhese.org/pool/lib/27_2nd_1.png"
}
},
"lastEdited": 1786368970000
}
Response codes
| Status | Meaning |
200 |
Creative updated. |
400 |
Bad request - invalid input or parameters. |
401 / 403 |
Not authenticated / not allowed. |
404 |
Not Found - Resource not found. |
409 |
Conflict. |
500 |
Internal Server Error - Unexpected failure. |
Upload a creative file
POST /v1/creatives/file
Uploads a creative file to temporary storage to use when uploading an advar creative.
Request body
| Parameter | In | Required | Type | Description |
Content-Disposition |
parameter | Yes | string | Contains the file name and is filled in accordingly attachment; filename=filename.extension |
formatId |
parameter | Yes | string | The ID of the format that will be associated with the creative. |
key |
parameter | No | string | Creative file index written as ordinal number (e.g. 2nd) with the exception of 1, which has key "main" (but is not used in advar creatives). Default value is main |
File contents |
body | Yes | binary data | File contents as binary data to be uploaded to temporary storage. |
Response - 201
{
"filePath": "/home/adhese/www/docker.adhese.org/tmp/file_by_user_1_747262096578706399.png"
}
Response codes
| Status | Meaning |
201 |
File uploaded successfully. |
400 |
Bad request - invalid input or parameters. |
401 / 403 |
Not authenticated / not allowed. |
404 |
Not Found - Resource not found. |
409 |
Conflict. |
500 |
Internal Server Error - Unexpected failure. |
Create an advar creative
POST /v1/creatives/advar
Creates an advar creative under the chosen campaign.
Request body
campaignId
body
Yes
string
Id of the campaign under wich you want to create a creative.
creativeName
body
Yes
string
The ID of the format that will be associated with the creative.
sku
body
No
string
SKU of the product related to the product.
formatId
body
Yes
integer
ID of the format that will be used for the creative.
advarTemplateName
body
Yes
string
Name of the advar template that will be used.
templateParameters
body
No
string
Additional parameters related to the advar. To be filled in as additionalProp#with # being the order of the prop in integers (e.g. 1) with the props defined by their own fileName and filePath.
templateFiles
body
No
string
Creative name and files.
- fileName
body
No
string
Name of the creative's file.
- filePath
body
No
string
Path where the file can be found. If a creative was uploaded via the API, this can be found in the response.