Overview
The body of TripleLift request/responses follows the standard IAB's OpenRTB 2.x specification. For more information on the OpenRTB 2.x syntax, please refer to the following specification:
Any elements of the syntax that may be unique to TripleLift however will be documented below.
BidRequest Object
The following object is the top-level or root object of the bid request that s2s supply partners are expected to send to the Triplelift Exchange. This table summarizes all of the objects within the BidRequest object and also highlights the objects that Triplelift requires:
| Object Name | Triplelift Required | Type | Description |
|---|---|---|---|
| id | yes | string | The unique ID of the respective auction. |
| imp | yes | array | An array of impression objects. At least 1 impression object is required. |
| site | no (recommended) | object | Provides details about the publisher's web page. Only applicable for websites. |
| app | no (recommended) | object | Provides details about the publisher's app. Only applicable for non-browser applications. |
| device | no (recommended) | object | Provides details about the user's device to which the impression will be delivered. |
| user | no (recommended) | object | Provides details about the human user of the device. |
| test | no | integer | Defaults to 0. Used when testing (test = 1). |
| at | no | integer | Auction type. First price auction, second price auction, etc. |
| tmax | no | integer | Maximum time in milliseconds that the exchange allows for bids to be received to avoid timing out. |
| wseat | no | array of strings | An allowlist of buyer seats that are permitted to bid on the respective impression. |
| bseat | no | array of strings | A blocklist of buyer seats that are NOT permitted to bid on the respective impression. |
| allimps | no | integer | A flag that indicates whether or not the impressions present in the request are representative of all available impressions in the given context. Defaults to 0. |
| cur | no | array of strings | An array of allowed currencies for bids on this respective request; following ISO-4217 alpha codes. |
| wlang | no | array of strings | An allowlist of languages for creatives; following ISO-639-1-alpha-2. Omission implies NO restrictions. |
| bcat | no | array of strings | A list of blocked advertiser categories; following the IAB's content category definitions. |
| badv | no | array of strings | A list of blocked advertisers by their domain. |
| bapp | no | array of strings | A list of blocked applications by their platform-specific exchange-independent application identifiers. |
| source | no | object | Provides data about the inventory source and which entity makes the final decision. |
| regs | no | object | Specifies any industry, legal, or governmental regulations on the respective inventory. |
| ext | no | object | Any exchange-specific extensions to OpenRTB. |
Impression Object
The following object is the impression (imp) object of the bid request that s2s supply partners are expected to send within the BidRequest object to Triplelift Exchange. The impression object describes the ad placement that is being auctioned. There can be one or more impression objects in a single bid request, but there must be at least 1.
Note: The existence of at least one Banner, Video, or Native object is required to describe the type of inventory being auctioned.
This table summarizes all of the objects within the Impression object and also highlights the objects that Triplelift requires:
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | yes | string | The unique ID of the impression object. If there are multiple imp objects, each will have its' own, unique ID. |
| metric | no | array of objects | Offers insights into the respective impression (viewability metrics, click-through rates, etc.) |
| banner | yes* | object | *Required if the impression is offered as a Banner opportunity |
| video | yes* | object | *Required if the impression if offered as a Video opportunity |
| audio | yes* | object | *Required if the impression if offered as a Audio opportunity |
| native | yes* | object | *Required if the impression as a Native opportunity |
| pmp | no | object | Contains any relevant private marketplace deals in effect for this impression |
| displaymanager | no | string | Name of ad mediation partner, SDK, or player that is responsible for rendering the ad |
| displaymanagerver | no | string | Version of ad mediation partner technology, SDK, or player |
| instl | no | integer | Defaults to 0. 1 indicates interstitial; 0 indicates not interstitial |
| tagid | yes | string | Identifier for the ad placement that initiated being requested. Associated with placement name/ID. |
| bidfloor | no | float | Minimum bid CPM for the respective impression |
| bidfloorcur | no | string | Defaults to 'USD'. Currency of the bid floor following ISO-4217 alpha codes |
| secure | no | integer | A flag that specifies whether the given impression requires HTTPS url creative assets and ad markup. 1 indicates secure; 0 indicates non-secure (HTTP) |
| iframebuster | no | array of strings | A list of exchange-specific names of supported iframe busters |
| exp | no | integer | Advisory to the number of seconds that elapse between the auction and actual impression |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
| refresh | no | object | Refresh object |
Regs Object
The regs object contains all legal, governmental or industry regulations that applies to the request. The coppa flag signals whether or not the request falls under the United States Federal Trade Commission's regulations for the United States Children's Online Privacy Protection Act.
For additional information on communicating with TripleLift on regulations affecting the bid request, please see the appropriate section:
- For GDPR (using the IAB's TCF), refer to GDPR & ePrivacy
- For CCPA (using the IAB's US Privacy string), refer to IAB CCPA Technical Framework
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| coppa | no | integer | Flag indicating if this request is subject to the COPPA regulations established by the USA FTC, where 0 = no, 1 = yes. |
| gdpr | no | integer | Flag that indicates whether or not the request is subject to GDPR regulations 0 = No, 1 = Yes, omission indicates unknown. |
| us_privacy | no | string | Communicates signals regarding consumer privacy under US privacy regulation. See the IAB's US Privacy String specifications. |
| gpp | no | string | Contains the Global Privacy Platform’s consent string. See the IAB's Global Privacy Platform specification for more details. |
| gpp_sid | no | integer array | Array of the section(s) of the string which should be applied for this transaction. |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB. GPP, GDPR, and CCPA privacy signals may also be placed in this object. |
Site Object
This object should be included if the ad supported content is a website as opposed to a non-browser\ application. A bid request must not contain both a Site and an App object. At a minimum, it is useful\ to provide a site ID or page URL, but this is not strictly required.
| Attribute | Triplelift required | Type | Description |
|---|---|---|---|
| id | recommended | string | Exchange-specific site ID. |
| name | string | Site name (may be aliased at the publisher’s request). | |
| domain | string | Domain of the site (e.g., “mysite.foo.com”) | |
| cat | string array | Array of IAB content categories of the site. | |
| sectioncat | string array | Array of IAB content categories that describe the current\ section of the site. | |
| pagecat | string array | Array of IAB content categories that describe the current page or view of the site. | |
| page | string | URL of the page where the impression will be shown. | |
| ref | string | Referrer URL that caused navigation to the current page. | |
| search | string | Search string that caused navigation to the current page | |
| mobile | integer | Indicates if the site has been programmed to optimize layout\ when viewed on mobile devices, where 0 = no, 1 = yes. | |
| privacypolicy | integer | Indicates if the site has a privacy policy, where 0 = no, 1 = yes. | |
| publisher | object | Details about the Publisher of the site. | |
| content | object | Details about the Content within the site. | |
| keywords | string | Comma separated list of keywords about the site. | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. |
Banner Object
The presence of the Banner object has a direct child of the Impression Object indicates that this particular impression is offered as a banner type impression. The publisher can also offer the same impression as a video, audio, or native type impression but at least one impression type must be specified.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| format | yes | array of objects | An array of format objects representing the banner sizes permitted for the ad slot. |
| w | no | integer | Exact width in device independent pixels; recommended if format isn't specified |
| h | no | integer | Exact height in device independent pixels; recommended if format isn't specified |
| wmax | no | integer | Maximum width in device independent pixels; deprecated in favor of format array |
| hmax | no | integer | Maximum height in device independent pixels; deprecated in favor of format array |
| wmin | no | integer | Minimum width in device independent pixels; deprecated in favor of format array |
| hmin | no | integer | Minimum height in device independent pixels; deprecated in favor of format array |
| btype | no | array of integers | Blocked banner ad types |
| battr | no | array of integers | Blocked creative attributes |
| pos | no | integer | Ad position on the screen. |
| mimes | no | array of strings | Content MIME types supported. |
| topframe | no | integer | Indicates if the banner is in the top frame as opposed to an iframe; 0 = no, 1 = yes |
| expdir | no | array of integers | Directions in which the banner may expand. |
| api | no | array of integers | List of supported API frameworks for this impression. |
| id | no | string | Unique identifier for this banner object. Highly recommended when sent along with a Video object to represent an array of companion ads. |
| ext | no | object | Placeholder for exchange-specific extensions of OpenRTB. |
Video Object
This object represents an instream video impression. The presence of a Video object as a direct child of the Impression object indicates that the impression is offered as a video type impression. The publisher can also offer the same impression as a banner, native, or audio type impression but at least one impression type must be specified.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| mimes | yes | array of strings | Content MIME tyes supported. |
| minduration | recommended | integer | Minimum video ad duration in seconds. |
| maxduration | recommended | integer | Maximum video ad duration in seconds. |
| protocols | recommended | array of integers | Array of supported video protocols. At least one supported protocol must be specified. |
| w | recommended | integer | Width of video player in device independent pixels. |
| h | recommended | integer | Height of video player in device independent pixels. |
| startdelay | recommended | integer | Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements. |
| placement | recommended | integer | Video placement type for the impression. Refer to List: Placement Subtypes - Video in AdCOM 1.0. |
| plcmt | recommended | integer | Video placement type for the impression. Refer to List: Plcmt Subtypes - Video in AdCOM 1.0. |
| linearity | no | integer | Indicates if the impression must be linear, nonlinear, etc. Supplying non indicates all are supported. |
| skip | no | integer | Indicates if the player will allow the video to be skipped. 0 = no, 1 = yes. |
| skipmin | no | integer | Videos of total duration greater than this number of seconds can be skippable; only applicable if the ad is skippable. Defaults to 0. |
| skipafter | no | integer | Number of seconds a video must play before skipping is enabled; only applicable if the ad is skippable. |
| sequence | no | integer | If multiple ad impressions are offered in the same bid request, the sequence number will allow for the coordinated delivery of multiple creatives. |
| battr | no | array of integers | Blocked creative attributes. |
| maxextended | no | integer | Maximum extended ad duration if the extension is allowed. |
| minbitrate | no | integer | Minimum bit rate in Kbps. |
| maxbitrate | no | integer | Maximum bit rate in Kbps. |
| boxingallowed | no | integer | Indicates if letter-boxing of 4:3 content into a 16:9 window is allowed. 0 = no, 1 = yes. Defaults to 1. |
| playbackmethod | no | array of integers | Playback methods that may be in use. |
| playbackend | no | integer | The event that causes a playback to end. |
| delivery | no | array of integers | Supported ad delivery methods. If none are specified, then all are assumed to be supported. |
| pos | no | integer | Ad position on screen. |
| companionad | no | array of objects | Array of Banner objects if companion ads are available. |
| api | no | array of integers | List of supported API frameworks for this impression. |
| companiontype | no | array of integers | Supported VAST companion ad types. Recommended if companion Banner objects are included in the companionad array. |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB. |
| poddur | no | string | Total amount of time in seconds that advertisers may fill for a “dynamic” video ad pod, or the dynamic portion of a “hybrid” ad pod. |
| podid | no | string | Unique identifier indicating that an impression opportunity belongs to a video ad pod. If multiple impression opportunities within a bid request share the same podid, this indicates that those impression opportunities belong to the same video ad pod. |
| podseq | no | string | The sequence (position) of the video ad pod within a content stream. Refer to in AdCOM 1.0 for guidance on the use of this field. |
| slotinpod | no | integer | For video ad pods, this value indicates that the seller can guarantee delivery against the indicated slot position in the pod. Refer to List: Slot Position in Pod in AdCOM 1.0. |
| maxseq | no | integer | Indicates the maximum number of ads that may be served into a “dynamic” video ad pod (where the precise number of ads is not predetermined by the seller). See Section 7.6 for more details |
Native Object
Native ad units are intended to blend seamlessly into the surrounding content of a publisher's page. The presence of a Native object as a direct child of the Impression object indicates that this impression is offered as a native type impression. The publisher can also offer the same impression as a banner, video, or audio type impression but at least one impression type must be specified.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| request | yes | string | The request payload complying with the Native Ad Specification. See docs on the Native Request Object. |
| ver | recommended | string | The version of the Dynamic Native Ads API to which the request complies. |
| api | no | array of integers | List of supported API frameworks for this impression. |
| battr | no | array of integers | Blocked creative attributes. |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB. |
Audio Object
This object represents an audio type impression. The presence of an Audio object as a direct child of the Impression object indicates that the impression is offered as a audio type impression. The publisher can also offer the same impression as a banner, video, or native type impression but at least one impression type must be specified.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| mimes | yes | array of strings | Content MIME types supported. |
| minduration | recommended | integer | Minimum audio ad duration in seconds. |
| maxduration | recommended | integer | Maximum audio ad duration in seconds. |
| protocols | recommended | array of integers | Array of supported audio protocols. |
| startdelay | recommended | integer | Indicates the start delay in seconds for ad placements. |
| sequence | no | integer | If multiple ad impressions are offered in the same bid request, the sequence number will for the coordinated delivery of multiple creatives. |
| battr | no | array of integers | Blocked creative attributes. |
| maxextended | no | integer | Maximum extended ad duration if extension in allowed. |
| minbitrate | no | integer | Minimum bit rate in Kbps. |
| maxbitrate | no | integer | Maximum bit rate in Kbps. |
| delivery | no | array of integers | Supported delivery methods. If non specified, all are assumed to be supported. |
| companionad | no | array of objects | Array of Banner objects if companion ads are available. |
| api | no | array of integers | List of supported API frameworks for this impression. |
| companiontype | no | array of integers | Supported DAAST companion ad types. |
| maxseq | no | integer | The maximum number of ads that can be played in an ad pod. |
| feed | no | integer | Type of audio feed. |
| stitched | no | integer | Indicates if the ad is stitched with audio content or delivered independently. |
| nvol | no | integer | Volume normalization mode. |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB. |
App Object
This object should be included in the bid request if the ad supported content is a non-browser application. A bid request must not contain both an App and Site object. At a minimum, it is useful to provide an App ID or bundle, but it is not strictly required.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | recommended | string | Exchange-specific app ID. |
| name | string | App name. | |
| bundle | yes | string | A platform-specific application identifier intended to be unique to the app and independent of the exchange. In Android this will be a bundle or package name. In IOS this will be a numeric ID. |
| domain | string | Domain of the app. | |
| storeurl | string | App store URL for an installed app. | |
| cat | array of strings | Array of IAB content categories of the app. | |
| sectioncat | array of strings | Array of IAB content categories that describe the current section of the app. | |
| pagecat | array of strings | Array of IAB content categories that describe the current page or view of the app. | |
| ver | string | Application version. | |
| privacypolicy | integer | Indicates if the app has a privacy policy, where 0 = no, 1 = yes. | |
| paid | integer | 0 = app is free; 1 = app is paid subscription. | |
| publisher | object | Details about the Publisher of the app. | |
| content | object | Details about the Content within the app. | |
| keywords | string | Comma separated list of keywords about the app. | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. | |
| cattax | optional | integer | Category taxonomy |
Publisher Object
This object describes the publisher of the media in which the ad will be displayed. The publisher is\ typically the seller in an OpenRTB transaction.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | string | Exchange-specific publisher ID. | |
| name | string | Publisher name (may be aliased at the publisher’s request). | |
| cat | string array | Array of IAB content categories that describe the publisher. | |
| domain | string | Highest level domain of the publisher (e.g., “publisher.com”). | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. |
Content Object
This object describes the content in which the impression will appear, which may be syndicated or nonsyndicated content. This object may be useful when syndicated content contains impressions and does\ not necessarily match the publisher’s general content. The exchange might or might not have\ knowledge of the page where the content is running, as a result of the syndication method. For\ example might be a video impression embedded in an iframe on an unknown web property or device.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | string | ID uniquely identifying the content. | |
| episode | integer | Episode number. | |
| title | string | Content title.\ Video Examples: “Search Committee” (television), “A New\ Hope” (movie), or “Endgame” (made for web).\ Non-Video Example: “Why an Antarctic Glacier Is Melting So\ Quickly” (Time magazine article). | |
| series | string | Content series.\ Video Examples: “The Office” (television), “Star Wars” (movie),\ or “Arby ‘N’ The Chief” (made for web).\ Non-Video Example: “Ecocentric” (Time Magazine blog). | |
| season | string | Content season (e.g., “Season 3”). | |
| artist | string | Artist credited with the content. | |
| genre | string | Genre that best describes the content (e.g., rock, pop, etc). | |
| album | string | Album to which the content belongs; typically for audio. | |
| isrc | string | International Standard Recording Code conforming to ISO3901. | |
| producer | object (see below) | Details about the content Producer. | |
| url | string | URL of the content, for buy-side contextualization or review. | |
| cat | string array | Array of IAB content categories that describe the content\ producer. | |
| prodq | string array | Production quality. | |
| videoquality | integer | Per ORTB Spec 2.5: Deprecated in favor of prodq. | |
| context | integer | Type of content (game, video, text, etc.). | |
| contentrating | string | Content rating (e.g., MPAA) | |
| userrating | string | User rating of the content (e.g., number of stars, likes, etc.). | |
| qagmediarating | integer | Media rating per IQG guidelines. | |
| keywords | string | Comma separated list of keywords describing the content. | |
| livestream | integer | 0 = not live, 1 = content is live (e.g., stream, live blog). | |
| sourcerelationship | integer | 0 = indirect, 1 = direct. | |
| len | integer | Length of content in seconds; appropriate for video or audio. | |
| language | string | Content language using ISO-639-1-alpha-2. | |
| embeddable | integer | Indicator of whether or not the content is embeddable (e.g.,\ an embeddable video player), where 0 = no, 1 = yes. | |
| data | object array (see below) | Additional content data. Each Data object represents a different data source. | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. | |
| cattax | optional | integer | Indicates the taxonomy in use for cat field (e.g., IAB 1.0 = 1, IAB 2.2 = 2) |
Producer Object
This object defines the producer of the content in which the ad will be shown. This is particularly useful\ when the content is syndicated and may be distributed through different publishers and thus when the\ producer and publisher are not necessarily the same entity.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | string | Content producer or originator ID. Useful if content is\ syndicated and may be posted on a site using embed tags. | |
| name | string | Content producer or originator name (e.g., “Warner Bros”). | |
| cat | string array | Array of IAB content categories that describe the content\ producer. | |
| domain | string | Highest level domain of the content producer (e.g.,\ “producer.com”). | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. |
Data Object
The data and segment objects together allow additional data about the related object (e.g., user,\ content) to be specified. This data may be from multiple sources whether from the exchange itself or\ third parties as specified by the id field. A bid request can mix data objects from multiple providers.\ The specific data providers in use should be published by the exchange a priori to its bidders
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | string | Exchange-specific ID for the data provider. | |
| name | string | Exchange-specific name for the data provider. | |
| segment | object array (see below) | Array of Segment objects that contain the\ actual data values | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. |
Segment Object
Segment objects are essentially key-value pairs that convey specific units of data. The parent Data\ object is a collection of such values from a given data provider. The specific segment names and value\ options must be published by the exchange a priori to its bidders.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | string | ID of the data segment specific to the data provider | |
| name | string | Name of the data segment specific to the data provider | |
| value | string | String representation of the data segment value. | |
| ext | object | Placeholder for exchange-specific extensions to OpenRTB. |
User Object
This object contains information known or derived about the human user of the device.
Publishers (except for special circumstances) are responsible for hosting the supply-side user match table. TripleLift expects to receive our TripleLift user ID (TLUID) from supply partners in the buyeruid field.
TripleLift (except for special circumstances) is responsible for hosting the buyer user match table on behalf of demand partners. We send the demand partner's user ID to them in the buyeruid field. The user ID (as with other fields) is not always passed to buyers, due to privacy requirements. Our partners can find our more about the relevant technical frameworks for privacy in our GDPR & ePrivacy and CCPA sections.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | recommended | string | Exchange-specific ID for the user. At least one of id or buyeruid is recommended. |
| buyeruid | recommended | string | Buyer-specific ID for the user as mapped by the exchange for the buyer. |
| yob | no | integer | Year of birth as a 4 digit integer. |
| gender | no | string | Gender, where "M" = male; "F" = female; "O" = other. |
| keywords | no | string | Comma separated list of keywords, interests, etc. |
| customdata | no | string | Optional feature to pass bidder data that was set in the exchange's cookie. String must be in base85 cookie safe characters and be in any format. |
| geo | no | object | Location of user's home base defined by the [Geo Object]. |
| data | no | array of objects | Additional user data. |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB. |
Device Object
This object providers information pertaining to the device through which the user is interacting. Device information includes its' hardware, platform, location, and carrier data.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| ua | no; recommended | string | Browser user agent |
| geo | no; recommended | object | Location of the device assumed to be the user's current location defined by a Geo object |
| dnt | no; recommended | integer | Standard "do not track" flag as set in the header by the browser. 0 = tracking is unrestricted, 1 = do no track |
| lmt | no; recommended | integer | "Limit Ad Tracking" signal commercially endorsed. 0 = tracking is unrestricted, 1 = tracking must be limited per commercial guidelines |
| ip | no; recommended | string | IPv4 address closest to device |
| ipv6 | no | string | IP address closest to device as IPv6 |
| devicetype | no | integer | The general type of device |
| make | no | string | Device make ("Apple") |
| model | no | string | Device model ("iPhone") |
| os | no | string | Device operating system ("iOS") |
| osv | no | string | Device operating system version |
| hwv | no | string | Hardware version of the device ("5S" for iPhone 5S) |
| h | no | integer | Physical height of the screen in pixels |
| w | no | integer | Physical width of the screen in pixels |
| ppi | no | integer | Screen size as pixels per linear inch |
| pxratio | no | float | The ratio of physical pixels to device independent pixels |
| js | no | integer | Support for JavaScript. 0 = no, 1 = yes |
| geofetch | no | integer | Indicates if the geolocation API will be available to JavaScript code running in the banner. 0 = no, 1 = yes |
| flashver | no | string | Version of Flash supported by the brwoser |
| language | no | string | Browser language using ISO-639-1-alpha-2 |
| carrier | no | string | Carrier or ISP using exchange ("Verizon") |
| mccmc | no | string | Mobile carrier as the concatenated MCC-MNC code |
| connectiontype | no | integer | Network connection type |
| ifa | no | string | ID sanctioned for advertiser use in the clear |
| didsha1 | no | string | Hardware device ID; hashed via SHA1 |
| didmd5 | no | string | Hardware device ID; hashed via MD5 |
| dpidsha1 | no | string | Platform device ID; hashed via SHA1 |
| dpidmd5 | no | string | Platform device ID; hashed via MD5 |
| macsha1 | no | string | MAC address of the device; hashed via SHA1 |
| macmd5 | no | string | MAC address of the device; hashed via MD5 |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
Geo Object
This object encapsulates methods for specifying a geographic location. When subordinate to the Device Object, it indicates the location of the device which can also be interpreted as the user's current location. When subordinate to the User Object, it indicates the user's home base, not necessarily their current location.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| lat | no | float | Latitude from -90 to 90, where a negative value is south |
| long | no | float | Longitude from -180 to 180, where a negative value is west |
| type | no | integer | Source of location data; recommended when passing lat and long |
| country | no | string | Country code using ISO-3166-1-alpha-3 |
| region | no | string | Region code using ISO-3166-2 |
| metro | no | string | Google metro code |
| city | no | string | City using United Nations Code for Trade and Transport Locations |
| zip | no | string | Zip or postal code |
| utcoffset | no | integer | Local time as the number +/- of minutes from UTC |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
Deal Object
This object constitutes a specific deal that was struck between a buyer and a seller. Its presence with the Pmp collection indicates that this impression is available under the terms of that deal.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| id | yes | string | A unique identifier for the direct deal |
| bidfloor | no | float | Minimum bid for this impression expressed in CPM |
| bidfloorcur | no | string | Currency specified using ISO-4217 alpha codes |
| at | no | integer | Optional override of the overall auction type of the bid request. 1 = First Price, 2 = Second Price Plus, 3 = the value passed in bidfloor is the agreed upon deal price |
| wseat | no | array of strings | Allowlist of buyer seats allowed to bid on this deal |
| wadomain | no | array of strings | Array of advertiser domains allowed to bid on this deal |
| ext | no | object | Placeholder for the exchange-specific extensions to OpenRTB |
PMP Object
This object is the private marketplace container for direct deals between buyers and sellers that may pertain to this impression. The actual deals are represented as a collection of Deal objects.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| private_auction | no | integer | Indicator of auction eligibility to seats named in the Direct Deals object, where 0 = all bids are accepted, 1 = bids are restricted to deals specified |
| deals | no | array of objects | Array of Deal objects that convey the specific deals applicable to this impression |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
Format Object
This object represents the allowed size for a banner impression. These are typically used in an array where multiple sizes are permitted.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| w | no | integer | Width in device independent pixels (DIPS) |
| h | no | integer | Height in device independent pixels |
| wratio | no | integer | Relative width when expressing size as a ratio |
| hratio | no | integer | Relative height when expressing size as a ratio |
| wmin | no | integer | The minimum width in device independent pixels at which the ad will be displayed the size is expressed as a ratio |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
Metric Object
This object is associated with an impression as an array of metrics. These metrics can offer insight into the impression to assist with decisioning such as average recent viewability, click-through rate, etc.
| Attribute | Triplelift Required | Attribute | Description |
|---|---|---|---|
| type | yes | string | Type of metric being represented using exchange curated string name which should be published to bidders |
| value | yes | float | Number representing the value of the metric |
| vendor | no; recommended | string | Source of the value using exchange curated string names which should be published to bidders |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |
Source Object
This object describes the nature and behavior of the entity that is the source of the bid request upstream from the exchange. The primary purpose of this object is to define post-auction or upstream decisioning when the exchange itself does not control the final decision.
| Attribute | Triplelift Required | Type | Description |
|---|---|---|---|
| fd | no; recommended | integer | Entity responsible for the final impression sale decision, where 0 = exchange, 1 = upstream source |
| tid | no; recommended | string | Transaction ID that much be common across all participants in this bid request |
| pchain | no; recommended | string | Payment ID chain string containing embedded syntax described in the TAG Payment ID Protocol v1.0 |
| ext | no | object | Placeholder for exchange-specific extensions to OpenRTB |