Skip to main content
POST
/
public
/
v1
/
offsite-ads
/
audiences
/
user-list
Create Offsite Audiences Job
curl --request POST \
  --url https://api.topsort.com/public/v1/offsite-ads/audiences/user-list \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "dsp": [],
  "description": "This is a user list audience description."
}
'
{
  "jobId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "url": "<string>"
}

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 | null

Limits the audience to a specific vendor when set; otherwise, the audience is available to all vendors.

Example:

"vendor_123"

Body

application/json
name
string
required

The name of the user list audience.

Minimum string length: 1
Example:

"My user list audience"

dsp
enum<string>[]
required

The DSPs to sync the audience to. Include one or more of: google_ads, meta, tiktok_ads, snapchat_ads.

Minimum array length: 1

DSPs an offsite audience is synced to.

Available options:
google_ads,
meta,
tiktok_ads,
snapchat_ads
Examples:
["google_ads"]
["google_ads", "meta"]
description
string | null

The description of the user list audience.

Minimum string length: 1
Example:

"This is a user list audience description."

Response

Successful Response

jobId
string<uuid>
required

The unique identifier for the queued job.

Example:

"123e4567-e89b-12d3-a456-426614174000"

url
string
required

The presigned url to upload the audience csv file. Presigned url must be used with PUT method and include the header Content-Type: text/csv.

Example:

"https://offsite-ads-user-list-uploads.s3.us-east-2.amazonaws.com/123e4567-e89b-12d3-a456-426614174000.csv"