Skip to main content
GET
Get a campaign

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

campaign_id
string
required

Campaign ID. Format: cmp_ followed by 32 lowercase hexadecimal characters.

Example:

"cmp_8a1d4e2f6b7c4d9e8f0a1b2c3d4e5f60"

Response

Successful response

A campaign that you can read.

id
string
required

Campaign ID.

Pattern: ^cmp_[0-9a-f]{32}$
Example:

"cmp_8a1d4e2f6b7c4d9e8f0a1b2c3d4e5f60"

brand_id
string
required

Brand ID.

Pattern: ^brd_[0-9a-f]{32}$
Example:

"brd_3f9c0a1b2c3d4e5f60718293a4b5c6d7"

name
string
required

The campaign name.

Example:

"Autumn Roast Launch"

slug
string
required

The short name of the campaign in ClipStake web addresses.

Example:

"autumn-roast-launch"

status
enum<string>
required

pending_payment: the budget is not paid yet. ready_to_launch: the budget is paid and the campaign is not live yet. active: the campaign is live and clips earn. paused: the campaign stopped paying for new views. ended: the campaign is over.

Available options:
pending_payment,
ready_to_launch,
active,
paused,
ended
Example:

"active"

budget_cents
integer
required

The campaign budget for clips, in cents. It does not include the ClipStake fee.

Required range: -9007199254740991 <= x <= 9007199254740991
Example:

500000

platforms
object[]
required

The platforms that the campaign accepts clips from, each with its rate.

geo_enabled
boolean
required

True when the campaign pays by the country of the viewers.

Example:

false

geo_targeting
object[]
required

The country rules of the campaign, include rules first, in the order the campaign shows them. A campaign has include rules or one exclude rule, never both. With include rules, views from other countries earn nothing. Empty when geo targeting is off.

Example:
max_payout_per_clip_cents
integer
required

The most that one clip can earn from the campaign, in cents.

Required range: -9007199254740991 <= x <= 9007199254740991
Example:

50000

start_date
string<date-time>
required

When the campaign starts.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
Example:

"2026-09-15T00:00:00.000Z"

end_date
string<date-time> | null
required

When the campaign ends. Null if the campaign has no end date.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
Example:

"2026-10-15T00:00:00.000Z"

launched_at
string<date-time> | null
required

When the campaign went live. Null if it never went live.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
Example:

"2026-09-15T09:00:00.000Z"

created_at
string<date-time>
required

When the campaign was created.

Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
Example:

"2026-09-10T14:20:00.000Z"

balance
object
required

The money in the campaign.