Skip to content
API

Get Campaigns

GET
/v1/campaign-service/campaigns

Endpoint to retrieve campaigns. Campaigns can be filtered by Vendor ID and status.

It is expected to use for getting all campaigns of a marketplace & all campaigns of a vendor in dashboards. Filtering by status is expected to use at review page getting campaigns approved, pending tabs.

Authentication

Topsort’s APIs are authenticated via bearer tokens. Requests must include an authorization header containing your private API key.

Don't have an API key yet? Learn how to generate one.

Authorization
required
string

The header containing a private API key. Format this header as follows:

Authorization: Bearer <YOUR-API-KEY>

Query Parameters

object
vendor_id

The ID of the vendor. Omit to get campaigns for all vendors.

string
>= 1 characters

The ID of the vendor. Omit to get campaigns for all vendors.

status

Filter by the approval status of banner campaigns.

string
Allowed values: approved pending rejected

Filter by the approval status of banner campaigns.

offset

The pagination offset.

integer

The pagination offset.

limit

The pagination limit.

integer
default: 100 <= 100

The pagination limit.

is_active

Filter by active/inactive campaigns.

boolean

Filter by active/inactive campaigns.

sort_by_date

Optional sort by date of campaign creation.

string
Allowed values: asc desc

Optional sort by date of campaign creation.

Responses

Successful Response

The campaigns response.

application/json
object
campaigns
required

An array of campaigns.

Array<object>

The campaign model.

object
adFormat
required

The ad format of the campaign. Can be listing or banner.

string
Allowed values: listing banner
bidCount
required

The amount of active bids associated with this campaign.

integer
budget

The budget assigned to the campaign.

object
amount
required

The amount of money in the budget in minor units of currency according to ISO 4217.

integer format: int64
< 2000000000
amountCarryover
required

The amount carried over from the last period.

integer format: int64
amountRemaining
required

The remaining amount of the budget.

integer format: int64
amountUsed
required

The used amount of the budget.

integer format: int64
type
required
string
Allowed values: daily weekly monthly total
campaignBehaviorData

Deprecated. This field is always null. For behavioral data use reporting service.

string
campaignBehaviorDataByDay

Deprecated. This field is always null. For behavioral data use reporting service.

string
campaignId
required

The ID of the campaign.

string format: uuid
campaignType
required

The bidding method for the campaign.

string
Allowed values: manual autobidding exclusive
chargeType
required

How campaigns are going to be charged, by click or by per mille impressions

string
Allowed values: CPM CPC
createdAt
required

When was this campaign created.

string format: date-time
endDate
required

The end date of the campaign.

string format: date-time
exclusivityPrice

Daily price for an exclusive campaign, can only be set if a campaign is exclusive

integer
externalVendorId
required

The ID of the vendor. Deprecated. Use vendor_id instead.

string
>= 1 characters
isActive
required

Whether this campaign is active.

boolean
isSmart
required

Whether this campaign is “smart”.

boolean
isVendorCampaign

Whether this is a promoted shop campaign.

boolean
marketplaceId
required

The ID of the marketplace.

string format: uuid
name
required

The name of the campaign.

string
>= 1 characters
promotionType
One of: discriminator: adFormat
object
adFormat
required
string
Allowed values: banner
bannerAssets
required

The assets for the banner campaign, if adFormat is banner.

Array<object>
>= 1 items

Represents the banner resource file, it’s location, mimetype, dimensions and size.

object
contentType
required

The mime type of the asset.

string
>= 1 characters
dimensions
required

The width and height of an asset.

object
height
required

The height of the image.

integer
width
required

The width of the image.

integer
size
required

The file size of the asset, in bytes.

integer
url
required

The url where the asset is located.

string format: uri
>= 1 characters <= 2083 characters
deviceType

The targeted device for this campaign, if adFormat is banner.

string
Allowed values: mobile desktop
slotId
required

The external slot id provided by the marketplace.

string
>= 1 characters /^[\w!\"#$%&'()*+,\-._/:;<>?@\[\]^\{\}~=\\]*$/
startDate
required

The starting date of the campaign.

string format: date-time
status
required

Represents the review status of a banner campaign.

string
Allowed values: approved pending rejected
statusUpdatedBy

The ID of the user who reviewed the campaign. If it’s null and the status is not "pending" then it means this campaign has autoapproval status.

string format: uuid
targetRoas

The target return on ad spend (ROAS) for this campaign. This is only applicable for autobidding listing campaigns.

number
vendorId
required

The ID of the vendor.

string
>= 1 characters
walletId
required

The uuid of the wallet to be used with this campaign.

string format: uuid
hasMore
required

Whether this is the last page of results or not.

boolean
next

The parameters that should be used to fetch the next page.

object
limit
required

How many items to return.

integer format: int32
offset
required

How many items to skip from the beginning of the list.

integer format: int32