Skip to content

updateCampaignDraft

PATCH
/api/v1/campaigns/{id}/draft
curl --request PATCH \
--url https://example.com/api/v1/campaigns/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/draft \
--header 'Content-Type: application/json' \
--header 'X-CSRF-Token: example' \
--data '{ "expectedDraftRevision": 1, "draft": { "name": "example", "description": "example", "ownerId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "timezone": "example", "campaignStart": "2026-04-15T12:00:00Z", "campaignEnd": "2026-04-15T12:00:00Z", "destinations": [ { "type": "screen", "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" } ], "blocks": [ { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "contentType": "playlist", "contentId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "contentRevision": 1, "priority": 1, "type": "one_time", "timezone": "example", "startDate": "2026-04-15", "endDate": "2026-04-15", "oneTimeStart": "2026-04-15T12:00:00Z", "oneTimeEnd": "2026-04-15T12:00:00Z", "dailyStart": "example", "dailyEnd": "example", "daysOfWeek": [ 1 ], "enabled": true } ] } }'
id
required
string format: uuid
X-CSRF-Token
required
string
Media typeapplication/json
object
expectedDraftRevision
required
integer format: int64
>= 1
draft
required
object
name
required
string
>= 1 characters <= 180 characters
description
required
string
<= 2000 characters
ownerId
string format: uuid
timezone
required
string
>= 1 characters <= 64 characters
campaignStart
string format: date-time
campaignEnd
string format: date-time
destinations
required
Array<object>
object
type
required
string
Allowed values: screen group
id
required
string format: uuid
blocks
required
Array<object>
object
id
required
string format: uuid
name
required
string
<= 180 characters
contentType
required
string
Allowed values: playlist layout
contentId
required
string format: uuid
contentRevision
integer format: int64
>= 1
priority
required
integer
type
required
string
Allowed values: one_time weekly
timezone
required
string
>= 1 characters <= 64 characters
startDate
string format: date
endDate
string format: date
oneTimeStart
string format: date-time
oneTimeEnd
string format: date-time
dailyStart
string
/^\d{2}:\d{2}$/
dailyEnd
string
/^\d{2}:\d{2}$/
daysOfWeek
Array<integer>
enabled
required
boolean

Campaign draft saved

Media typeapplication/json
object
data
required
object
id
required
string format: uuid
name
required
string
description
required
string
ownerId
string format: uuid
timezone
required
string
campaignStart
string format: date-time
campaignEnd
string format: date-time
destinations
required
Array<object>
object
type
required
string
Allowed values: screen group
id
required
string format: uuid
draft
required
object
name
required
string
>= 1 characters <= 180 characters
description
required
string
<= 2000 characters
ownerId
string format: uuid
timezone
required
string
>= 1 characters <= 64 characters
campaignStart
string format: date-time
campaignEnd
string format: date-time
destinations
required
Array<object>
object
type
required
string
Allowed values: screen group
id
required
string format: uuid
blocks
required
Array<object>
object
id
required
string format: uuid
name
required
string
<= 180 characters
contentType
required
string
Allowed values: playlist layout
contentId
required
string format: uuid
contentRevision
integer format: int64
>= 1
priority
required
integer
type
required
string
Allowed values: one_time weekly
timezone
required
string
>= 1 characters <= 64 characters
startDate
string format: date
endDate
string format: date
oneTimeStart
string format: date-time
oneTimeEnd
string format: date-time
dailyStart
string
/^\d{2}:\d{2}$/
dailyEnd
string
/^\d{2}:\d{2}$/
daysOfWeek
Array<integer>
enabled
required
boolean
draftRevision
required
integer format: int64
>= 1
status
required
string
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
Example
{
"data": {
"destinations": [
{
"type": "screen"
}
],
"draft": {
"destinations": [
{
"type": "screen"
}
],
"blocks": [
{
"contentType": "playlist",
"type": "one_time"
}
]
}
}
}

Draft revision conflict

Campaign shape invalid