| layout | bidder |
|---|---|
| title | The Trade Desk |
| description | The Trade Desk Prebid Bidder Adapter |
| biddercode | ttd |
| tcfeu_supported | true |
| gvl_id | 21 |
| usp_supported | true |
| coppa_supported | true |
| gpp_supported | true |
| schain_supported | true |
| dchain_supported | false |
| userIds | all |
| media_types | banner, video |
| floors_supported | true |
| pbjs | true |
| pbs | true |
| prebid_member | true |
| sidebarType | 1 |
| pbs_app_supported | true |
| deals_supported | true |
| multiformat_supported | will-not-bid |
| ortb_blocking_supported | true |
| gpp_sids | false |
| fpd_supported | false |
{: .alert.alert-danger :} Note: The Trade Desk Header Bidding adapter requires setup and approval before beginning. Please reach out to OpenPathPublishers@thetradedesk.com for more details.
{: .table .table-bordered .table-striped }
| 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 |
customBidderEndpoint |
optional | Only set if TTD has provided a custom endpoint. If set the custom endpoint will take precedent over the hard-coded endpoints | https://customBidderEndpoint/bid/bidder/ |
String |
The following banner parameters are supported:
{: .table .table-bordered .table-striped }
| 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] |
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
}
}
]
}The TTD adapter for video requires certain parameters in the AdUnit's
mediaTypes.video definition. Specifically, maxduration, api, mimes, plcmt, 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'],
plcmt: 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
Publishers should set First Party Data in the ortb2 and ortb2Imp objects. These fields are supported:
ortb2.site.ext.dataortb2.user.ext.dataAdUnit.ortb2Imp.ext.data(for AdUnit data)