Skip to main content
PUT
Edit a campaign

Authorizations

Authorization
string
header
required

Path Parameters

campaignId
string
required

Body

application/json

Body of a PUT /v2/campaigns/{campaignId}{version:(/version/.+)?} request.

description
string | null
required
name
string | null
required
program_type
string | null
required
tags
string[] | null
required
campaign_type
enum<string>
Available options:
CONFIGURATION,
EXTENSION,
INTEGRATION,
MARKETING
variant_selector

Choose between static or dynamic variant selector. Buildtime expressions use CampaignBuildtimeContext. Runtime expressions use VariantSelectionContext.

variants

Choose between static or dynamic variants. Buildtime expressions use CampaignBuildtimeContext.

Response

Published campaign.

Stored campaign definition. Fields variant_selector and variants are unevaluated and appear in buildtime-evaluatable form.

campaign_id
string
required
campaign_locks
enum<string>[]
required
Available options:
DUPLICATE,
EDIT
campaign_type
enum<string>
required
Available options:
CONFIGURATION,
EXTENSION,
INTEGRATION,
MARKETING
components
object[]
required
description
string
required
end_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

flow_steps
object[]
required
incentive
object
required
incentive_id
string
required
is_published
boolean
required
labels
object[]
required
last_published_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

name
string
required
parent_version
integer<int32> | null
required
pause_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

program_label
string
required
program_type
string
required
start_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

state
enum<string>
required
Available options:
ARCHIVED,
ENDED,
LIVE,
NOT_LAUNCHED,
PAUSED,
STOPPED
steps
object[]
required

Stored campaign controller definition. Fields enabled, name, scope, enabled_on_states, selectors, aliases, journey_names, send_policy, and step_builder are unevaluated and appear in buildtime-evaluatable form.

stop_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

tags
string[]
required
theme_name
string
required
updated_date
string
required

RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.

Pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$
Example:

"2025-10-24T02:00:00-07:00"

variant_selector
required

The variant selector as configured: a literal value, or an expression (type:string) when defined dynamically. Buildtime expressions use CampaignBuildtimeContext. Runtime expressions use VariantSelectionContext.

variants
required

The variants as configured: a literal value, or an expression (type:string) when defined dynamically. Buildtime expressions use CampaignBuildtimeContext.

version
integer<int32>
required