Skip to main content
POST
Create a sponsored brand campaign.

Authorizations

Authorization
string
header
required

A valid API key generated in Topsort's UI. Use the TSE API key if calling auctions or events API, otherwise use the TSC API key.

Query Parameters

vendor_id
string
required

The ID of the vendor.

Minimum string length: 1

Body

application/json

Request body for creating a public sponsored brand campaign.

name
string
required

The name of the campaign.

Minimum string length: 1
Example:

"Bola-Bola Ad campaign"

slotId
string
required

The external slot ID where the sponsored brand campaign will be shown.

Minimum string length: 1
schedule
Schedule · object[]
required

The schedule for the campaign.

Required array length: 1 element
content
Content · object
required

Dynamic content validated against the slot's JSON template.

bids
PublicCreateSponsoredBrandBid · object[]
required

An array of bids for this campaign.

Required array length: 1 - 500 elements
bidType
enum<string>
required

The bidding type of the campaign.

Available options:
manual,
autobidding
budget
BudgetCreate · object
required

The assigned budget for the campaign.

isActive
boolean
default:true

Whether the campaign should be activated upon creation.

status
enum<string>
default:approved

The initial review status of the sponsored brand campaign.

Available options:
approved,
pending,
rejected
externalCampaignId
string | null

The external ID of the campaign in the marketplace.

isAutoTrigger
boolean
default:false

Whether the campaign is auto-triggered.

slotIds
string[] | null

Additional external slot IDs. If present, each ID replicates the whole bid set.

Maximum array length: 10
walletId
string<uuid> | null

The uuid of the wallet used with this campaign.

targetRoas
number | null

Indicates the vendor's target return on ad spend.

Required range: 0.5 <= x <= 30
targetRoasPreference
enum<string> | null

Target ROAS preference label.

Available options:
aggressive,
conservative,
moderate,
custom
chargeType
enum<string>
default:CPC

How campaigns are charged.

Available options:
CPM,
CPC,
CPA
autobiddingObjective
enum<string>
default:clicks

The objective of the campaign.

Available options:
impressions,
clicks,
conversions,
revenue

Response

Successful Response

A regular sponsored brand campaign returned by the public API.

campaignId
string<uuid>
required

The ID of the campaign.

marketplaceId
string<uuid>
required

The ID of the marketplace.

vendorId
string
required

The external vendor ID.

name
string
required

The name of the campaign.

Minimum string length: 1
Example:

"Bola-Bola Ad campaign"

isActive
boolean
required

Whether the campaign is active.

status
enum<string>
required

The approval status of the sponsored brand campaign.

Available options:
approved,
pending,
rejected
isAutoTrigger
boolean
required

Whether the campaign is auto-triggered.

slotId
string
required

The external slot ID where the sponsored brand campaign is shown.

schedule
Schedule · object[]
required

The schedule for the campaign.

Required array length: 1 element
content
Content · object
required

Dynamic content validated against the slot's JSON template.

createdAt
string<date-time>
required

When this campaign was created.

updatedAt
string<date-time>
required

When this campaign was last updated.

bidType
enum<string>
required

The bidding type of the campaign.

Available options:
manual,
autobidding
isAgency
boolean
required

Whether this campaign is promoted by an agency.

chargeType
enum<string>
required

How campaigns are charged.

Available options:
CPM,
CPC,
CPA
budget
Budget · object
required

The assigned budget for the campaign.

externalCampaignId
string | null

The external ID of the campaign in the marketplace.

walletId
string<uuid> | null

The uuid of the wallet used with this campaign.

targetRoas
number | null

Indicates the vendor's target return on ad spend.

Required range: 0.5 <= x <= 30
targetRoasPreference
enum<string> | null

Target ROAS preference label.

Available options:
aggressive,
conservative,
moderate,
custom
autobiddingObjective
enum<string> | null

The objective of the campaign.

Available options:
impressions,
clicks,
conversions,
revenue