The Trade Desk
Features
Bidder Code | ttd | Prebid.org Member | yes |
---|---|---|---|
Media Types | display, video | GDPR TCF Support | yes |
User IDs | unifiedId, uid2 | USP/CCPA Support | yes |
Supply Chain Support | yes | COPPA Support | yes |
Demand Chain Support | no | GPP Support | yes |
Supports Deals | check with bidder | Prebid.js Adapter | yes |
IAB GVL ID | 21 | Prebid Server Adapter | no |
Floors Module Support | yes | First Party Data Support | check with bidder |
Multi Format Support | check with bidder | ORTB Blocking Support | check with bidder |
Safeframes OK | check with bidder |
"Send All Bids" Ad Server Keys
These are the bidder-specific keys that would be targeted within GAM in a Send-All-Bids scenario. GAM truncates keys to 20 characters.hb_pb_ttd |
hb_bidder_ttd |
hb_adid_ttd |
hb_size_ttd |
hb_source_ttd |
hb_format_ttd |
hb_cache_host_ttd |
hb_cache_id_ttd |
hb_uuid_ttd |
hb_cache_path_ttd |
hb_deal_ttd |
Disclosure:
This adapter is known to use an HTTP 1 endpoint. Header bidding often generates multiple requests to the same host and bidders are encouraged to change to HTTP 2 or above to help improve publisher page performance via multiplexing.
Note: The Trade Desk Header Bidding adapter requires setup and approval before beginning. Please reach out to OpenPathPublishers@thetradedesk.com for more details.
Bid Params
Name | Scope | Description | Example | Type |
---|---|---|---|---|
supplySourceId |
required | The TTD-provided supply source name. | 'supplier' |
String |
publisherId |
required | The publisher ID. If there is a sellers.json, this should be the same as the seller_id in the sellers.json for the site being trafficked. If there is no sellers.json, this should be hardcoded to “1”. | '1427ab10f2e448057ed3b422' |
String |
placementId |
optional | This field is optional if GPID is passed through the GPT module https://docs.prebid.org/dev-docs/modules/gpt-pre-auction.html. If that module isn’t used, the GPID value should be passed in this field. | '/1111/home#header' |
String |
banner |
optional | Display banner targeting parameters. See the banner section below. | {} |
object |
bidfloor |
optional | Sets a bid floor price | 0.95 |
Float |
Banner Object
The following banner parameters are supported:
Name | Scope | Description | Example | Type |
---|---|---|---|---|
expdir |
optional | Directions in which the banner may expand. See “Expandable Direction” in the OpenRTB 2.5 docs for possible values. | [1, 3] |
Array[integer] |
mediaTypes.banner
Parameters
The TTD adapter for banner uses certain parameters in the AdUnit’s
mediaTypes.banner definition. Specifically, sizes
is required for banner ad units. pos
is recommended.
Here’s a banner ad unit example:
var bannerAdUnit = {
code: 'myBannerAdUnit',
mediaTypes: {
banner: {
sizes: [400, 600],
pos: 1
}
},
bids: [
{
bidder: 'ttd',
params: {
supplySourceId: 'supplier'
publisherId: '1427ab10f2e448057ed3b422',
siteId: 'site-123',
placementId: 'sidebar_1',
banner: {
expdir: [1, 3]
},
bidfloor: 0.95
}
}
]
}
Video
mediaTypes.video
Parameters
The TTD adapter for video requires certain parameters in the AdUnit’s
mediaTypes.video definition. Specifically, maxduration
, api
, mimes
, placement
, and protocols
are all required for video ad units. playerSize
, startdelay
, playbackmethod
, and pos
are recommended. minduration
, minbitrate
, maxbitrate
, skip
, skipmin
, and skipafter
are optional.
Note: TTD does not currently support adpod
video contexts.
Here’s a video ad unit example:
var videoAdUnit = {
code: 'myVideoAdUnit',
mediaTypes: {
video: {
minduration: 1,
maxduration: 60,
playerSize: [640, 480],
api: [1, 3],
mimes: ['video/mp4'],
placement: 3,
protocols: [2, 3, 5, 6],
startdelay: -1,
playbackmethod: [1],
pos: 1,
minbitrate: 0,
maxbitrate: 5000,
skip: 1,
skipmin: 5,
skipafter: 10
}
},
bids: [
{
bidder: "ttd",
params: {
supplySourceId: 'supplier',
publisherId: '1427ab10f2e448057ed3b422',
siteId: 'site-123',
placementId: 'video1',
bidfloor: 0.95
}
}
]
}
Lists of api
, playbackmethod
, protocols
, pos
, and expdir
potential values are in the OpenRTB 2.5 docs, copied here for convenience:
api
1
: VPAID 1.02
: VPAID 2.03
: MRAID-14
: ORMMA5
: MRAID-26
: MRAID-37
: OMID-1
playbackmethod
1
: Initiates on Page Load with Sound On2
: Initiates on Page Load with Sound Off by Default3
: Initiates on Click with Sound On4
: Initiates on Mouse-Over with Sound On5
: Initiates on Entering Viewport with Sound On6
: Initiates on Entering Viewport with Sound Off by Default
protocols
1
: VAST 1.02
: VAST 2.03
: VAST 3.04
: VAST 1.0 Wrapper5
: VAST 2.0 Wrapper6
: VAST 3.0 Wrapper7
: VAST 4.08
: VAST 4.0 Wrapper9
: DAAST 1.010
: DAAST 1.0 Wrapper11
: VAST 4.112
: VAST 4.1 Wrapper
pos
0
: Unknown1
: Above the Fold3
: Below the Fold4
: Header5
: Footer6
: Sidebar7
: Full Screen
expdir
1
: Left2
: Right3
: Up4
: Down5
: Full Screen