Recommendation Request¶
To get recommendations, you need to send a stripped down Open RTB bid request to
LiteSwitch. The Open RTB fields used by LiteSwitch are described in the Bid Request Object section.
In addition to the standard subset of fields expected for a valid bid request, LiteSwitch
requires one additional unique field, the ext.seat_user_matched
field.
The values in the
imp.id
andwseat
fields are used to define which Buyers to target with each adslot in the subsequent response.
Value |
Type |
Description |
---|---|---|
seat_user_matched |
array of strings |
(Optional) Indicates the buyers with whom you have synced users, the values
should match some of those sent in the |
Note
Fields marked with * are either recommended or optional
Bid Request Object¶
Value |
Type |
Description |
---|---|---|
id |
string |
(Required) Unique ID of the bid request, for example,
|
imp |
array of objects |
(Required) Array of objects representing the impressions offered. Must contain at least one Impression Object. |
device* |
object |
(Recommended) Device Object with details about the device to which the impression will be delivered |
site |
object |
(Required if |
app |
object |
(Required if |
wseat |
array of strings |
(Required) An array of Buyer seats allowed to bid on this auction, for example
[“58”, “61”, “99”]. A bid request may contain multiple seat IDs using the Supplier taxonomy. The bid response should contain the appropriate seat value corresponding to one of the values of the |
user* |
object |
(Recommended) User Object which describes the user. |
source* |
object |
(Optional) Source Object Indicates the entity responsible for the final impression sale decision. |
at* |
integer |
(Optional) Auction type, the default value is
|
ext* |
object |
(Optional) Ext Object used for Supplier specific properties |
Device Object¶
Value |
Type |
Description |
---|---|---|
geo* |
object |
(Recommended) Geo Object as derived from the device’s location services, or supplied by the Supplier if the device IP is missing. For more information, see the Geo Object Properties section. |
ip* |
string |
(Semi-Required) Specifies the IPv4 address closest to the device.
|
ipv6* |
string |
(Semi-Required) One of IP or IPv6 required. IP address in IPv6, for example,
|
ua* |
string |
(Recommended) Browser or application user agent string, for example,
|
language* |
string |
(Optional) Alpha-2/ISO 639-1 code of browser language, for example, |
model* |
string |
(Optional) Device mode, for example, |
os* |
string |
(Optional) Device operating system, for example, |
osv* |
string |
(Optional) Device operating system version, for example, |
ifa* |
string |
(Optional) In-app user ID |
Device Geo Object¶
Value |
Type |
Description |
---|---|---|
country* |
string |
(Recommended) Country using |
region* |
string |
(Recommended) Region using ISO-3166-2 region codes, for example, |
lat* |
float |
(Recommended) Latitude from -90 to 90, for example, |
lon* |
float |
(Recommended) Longitude from -180 to 180, for example, |
city* |
string |
(Optional) City name. |
Impression Object¶
Value |
Type |
Description |
---|---|---|
id |
string |
(Required) ID of the impression being shown, unique within the bid request, for
example |
banner |
object |
Required for banner impressions. |
video |
object |
Required for video impressions. |
audio |
object |
Required for audio impressions. |
native |
object |
Required for native impressions. |
tagid* |
string |
(Recommended) Identifier for specific ad placement or ad tag that was used to initiate the auction. |
secure* |
integer |
(Recommended) Specifies if the page is SSL compliant:
|
pmp* |
object |
(Optional) The private marketplace used for direct deals between Buyers and Suppliers. |
instl* |
integer |
(Optional) Specifies if the ad is an interstitial.
|
rwdd* |
integer |
(Optional) whether the user receives a reward for viewing the ad, where
|
bidfloor* |
float |
(Optional) Bid floor in CPM as set by the Supplier, for example, |
Impression Banner Object¶
Value |
Type |
Description |
---|---|---|
pos* |
integer |
(Recommended) Ad Position as defined in the OpenRTB protocol, for example, |
topframe* |
integer |
(Recommended) Indicates if the banner is in the top frame where |
w* |
integer |
(Recommended) Width of the impression in pixels, for example, |
h* |
integer |
(Recommended) Height of the impression in pixels, for example |
format* |
array of objects |
(Optional) An array of banner format objects denoting the alternative sizes that may be used for bidding. |
Impression Video Object¶
Value |
Type |
Description |
---|---|---|
w* |
integer |
(Recommended) Width of the impression in pixels, for example, |
h* |
integer |
(Recommended) Height of the impression in pixels, for example |
maxduration* |
integer |
(Optional) Maximum video ad duration in seconds, for example, |
Impression Private Marketplace Object¶
Value |
Type |
Description |
---|---|---|
private_auction* |
integer |
(Recommended) A value of |
deals |
array of objects |
(Required) Array of Deals objects |
Deals Object¶
Value |
Type |
Description |
---|---|---|
id |
string |
(Required) Deal ID, for example, |
wseat* |
array of strings |
(Optional) Array of Buyer seats allowed to bid on this Direct Deal, for example, [“58”, “99”]. |
Site Object¶
Value |
Type |
Description |
---|---|---|
publisher |
object |
(Required) Publisher object |
id* |
string |
(Recommended) An exchange specific identifier. |
domain* |
string |
(Recommended) Domain of the site, used for advertiser side blocking.
|
page* |
string |
(Recommended) URL of the page where the impression will be shown.
|
App Object¶
Value |
Type |
Description |
---|---|---|
publisher |
object |
(Required) Publisher object |
id* |
string |
(Recommended) The application ID. |
domain* |
string |
(Recommended) The domain of the app, for example, |
bundle* |
string |
(Recommended) Application bundle or package name, for example,
|
User Object¶
Value |
Type |
Description |
---|---|---|
id |
string |
(Recommended) Website user ID |
buyeruid* |
string |
(Optional) Buyer-specific ID for the user as mapped by the exchange for the Buyer |
Example Request¶
The following example includes all possible fields. In practice, only app
fields are
expected for in-app inventory and likewise site
for website inventory.
{
"site": {
"id": "ed2265d8",
"page": "http://ad32.answers.com/click.php?source=fb¶m4=fb-us-de-red¶m3=www.answers.com%2Farticle%2F31029589%2Finsanely-useful-life-hacks-to-make-everything-easier¶m1=tattoo¶m2=67660042¶m5=10153631993521186¶m6=6049542139960&adt=4342",
"publisher": {
"id": "946353442_12535"
},
"domain": "answers.com"
},
"wseat": [
"165",
"16"
],
"ext": {
"seat_user_matched": [
"16"
]
},
"user": {
"id": "5e29eb00-c30a-416e-9d2a-2e18901f0916",
"buyeruid": "CAESEHL-9O4oJOAiC1Y0O2EHTcE"
},
"device": {
"language": "en",
"model": "G100",
"w": 1920,
"geo": {
"country": "US",
"region": "FL"
},
"osv": "11",
"h": 1080,
"ua": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0"
},
"imp": [
{
"pmp": {
"private_auction": 1,
"deals": [
{
"id": "14a44.a7993.d401",
"wseat": "abc123"
}
]
},
"id": "1",
"banner": {
"topframe": 1,
"pos": 1,
"h": 600,
"w": 160
},
"tagid": "25108",
"secure": 0
}
]
}