Bid Request

Prev Next

Attributes

  • These attributes follow the IAB OpenRTB 2.5 specification. Some attributes also follow the OpenRTB 2.6 specification.

  • OTA follows the Digital Out-of-Home (DOOH) specifications that were recently added to OpenRTB. If you would like to be enabled on OTA inventory, please contact Triton Digital.

  • Unless otherwise specified, Triton provides an attribute only when it’s available.

  • icon-instream: Attribute applies to Instream and On-demand.

  • icon-podcast: Attribute applies to Podcast.

  • icon-ota: Attribute applies to OTA (Over The Air).


Attribute

Description

Value

icon-instream-podcast-ota

id

Unique ID of the bid request, provided by the exchange.

Always provided.

Example: "449a4ec8-fd49-4df9-9c4a-96f731d894d1"

icon-instream-podcast-ota

at

Auction type, where 1 = First Price, 2 = Second Price Plus.

Always provided.

Always sends: 2

icon-instream-podcast-ota

test

Indicator of test mode in which auctions are not billable, where 0 = live mode, 1 = test mode.

Always provided.

Always sends: 0

icon-instream-podcast-ota

tmax

Maximum time in milliseconds to submit a bid to avoid timeout.

Always provided.

Example: 500

icon-instream-podcast-ota

cur

Array of allowed currencies for bids on this bid request using ISO-4217 alpha codes.

Currently USD is the only supported currency.

Always provided.

Always sends: [“USD”]

icon-instream-podcast-ota

bcat

Blocked advertiser categories using the IAB content categories. Taxonomy version 1.0.

Support for this is required to enforce industry separation (frequency cap) and SSP ad quality rules.

Example: ["IAB24", "IAB1-12", "IAB3"]

icon-instream-podcast-ota

badv

Block list of advertisers by their domains.

This is based on SSP rules.

Example: ["example.com","blork.example"]

icon-instream-podcast-ota

wlang

Allow list of languages for creatives using ISO-639-1-alpha-2.

 

icon-instream-podcast-ota

imp

Array of Imp objects representing the impressions offered.

Currently Triton Digital only supports a single element.

Always provided.

 

icon-instream-podcast-ota

imp[].id

A unique identifier for this impression within the context of the bid request.

Always provided.

Example: "e3a72cb4-f5bb-11e5-9ce9-5e5517507c66"

icon-instream-podcast-ota

imp[].bidfloor

Minimum bid for this impression expressed in CPM.

Only provided when Open Auction is allowed.

Example: 0

icon-instream-podcast-ota

imp[].bidfloorcur

Currency specified using ISO-4217 alpha codes.

Only provided when Open Auction is allowed.

Always sends: "USD"

icon-instream-podcast-ota

imp[].secure

Flag to indicate if the impression requires secure HTTPS URL creative assets and markup. This only applies to the banner.

Example: 0

icon-instream-podcast-ota

imp[].exp

Advisory as to the number of seconds that may elapse between the auction and the actual impression.

When returning a bid, your ad impression URL shouldn't expire before this delay has elapsed.

Always provided.

Example: 1800

icon-instream-podcast-ota

imp[].ext.tid

Transaction ID that must be common across all participants in this bid request, which potentially includes multiple exchanges.
Always provided.

Example: "e3a72cb4-f5bb-11e5-9ce9-5e5517507c66"

icon-instream-podcast-ota

imp[].ext.gpid

A consistent unique id for each impression placement on a page.
Always provided.

Example: "123456"

icon-instream-podcast-ota

imp[].rwdd

Indicates whether the user receives a reward for viewing the ad, where 0 = no, 1 = yes.
Always provided.

Always sends: 0

icon-instream-podcast-ota

imp[].audio

An Audio object.

Upon request, demand partners that don't support the Audio object can have the data sent in an imp.video attribute.

Always provided.

 

icon-instream-podcast-ota

imp[].audio.mimes

Content MIME types supported.

List provided in this document is what is always supported by Triton Digital for every bid request regardless of publisher.

Always provided.

Always sends: ["audio/aac", "audio/mp4", "audio/mpeg", "audio/mpeg3", "audio/mp3", "audio/vnd.wave", "audio/wav", "audio/wave", "audio/ogg", "audio/vorbis"]

icon-instream-podcast-ota

imp[].audio.minduration

Minimum audio ad duration in seconds.

This is based on publisher rules.

Always provided.

Example: 15

icon-instream-podcast-ota

imp[].audio.maxduration

Maximum audio ad duration in seconds.

This is based on publisher rules.

Always provided.

Example: 60

icon-instream-podcast-ota

imp[].audio.maxextended

Maximum extended ad duration if extension is allowed.

Always provided.

Always sends: 5

icon-instream-podcast-ota

imp[].audio.maxseq

The maximum number of ads that can be played in an ad pod.

Always provided.

Always sends: 1

icon-instream-podcast-ota

imp[].audio.protocols

Array of supported audio protocols.

Always provided.

Always sends: [2,3,5,6,9,10]

icon-instream-podcast-ota

imp[].audio.startdelay

Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements.

Always provided.

Example: -1

icon-instream-podcast-ota

imp[].audio.minbitrate

Minimum bit rate in Kbps.

Always provided.

Always sends: 0

icon-instream-podcast-ota

imp[].audio.maxbitrate

Maximum bit rate in Kbps.

Always provided.

Always sends: 576

icon-instream-podcast-ota

imp[].audio.delivery

Supported delivery methods.  

Example: 3

icon-instream-podcast-ota

imp[].audio.feed

Type of audio feed.

Example: 3

icon-instream-podcast-ota

imp[].pmp

Collection of private marketplace (PMP) deals applicable to this impression.

 

icon-instream-podcast-ota

imp[].pmp.private_auction

Indicator of auction eligibility to seats named in the Direct Deals object, where 0 = all bids are accepted, 1 = bids are restricted to the deals specified and the terms thereof.

Always provided.

Always sends: 0

icon-instream-podcast-ota

imp[].pmp.deals

Array of Deal objects that convey the specific deals applicable to this impression.

Always provided.

 

icon-instream-podcast-ota

imp[].pmp.deals[].id

A unique identifier for the direct deal.

Always provided.

Example: "82751"

icon-instream-podcast-ota

imp[].pmp.deals[].bidfloor

Minimum bid for this impression expressed in CPM.

Always provided.

Example: 5

icon-instream-podcast-ota

imp[].pmp.deals[].bidfloorcur

Currency specified using ISO-4217 alpha codes.

Always provided.

Always sends: "USD"

icon-instream-podcast-ota

imp[].pmp.deals[].at

Override of the overall auction type of the bid request.

Always provided.

Example: 3

icon-instream-podcast-ota

imp[].pmp.deals[].wseat

Allow-list of buyer seat IDs, such as advertisers,  or agencies, allowed to bid on this deal.

Example: ["1765"]

icon-instream-podcast-ota

imp[].pmp.deals[].wadomain

Array of advertiser domains. Omission implies no advertiser restrictions.

Example: ["example.com"]

icon-instream-podcast-ota

imp[].pmp.deals[].ext

Exchange-specific extensions to OpenRTB.

 

icon-instream-podcast-ota

imp[].pmp.deals[].ext.guaranteed

Flag indicating the deal is for guaranteed inventory when the value is 1.

Example: 1

icon-ota

imp[].qty

This object includes the impression multiplier, and describes the source of the multiplier value.

This object is identical to the one in the DOOH proposal that is currently under review by IAB Tech Lab.

Always provided.

 

icon-ota

imp[].qty.multiplier

The quantity of billable events which will be deemed to have occurred if this item is purchased.

This is formatted as a float but Triton Digital will only send full integers.

Always provided.

Example: 4200.0

icon-ota

imp[].qty.sourcetype

The source type of the quantity measurement.

1 = Measurement Vendor Provided, 2  = Publisher Provided.

Always provided.

Example: 1

icon-ota

imp[].qty.vendor

The top level business domain name of the measurement vendor providing the quantity measurement.

Always provided.

Example: "blork.example"

icon-instream-podcast

site

Details via a Site object about the publisher’s website.

Only one of site or app or ota is always provided.

 

icon-instream-podcast

app

Details via an App object about the publisher’s app.

Only one of site or app or ota is always provided.

 

icon-ota

ota

Only one of site or app or ota is always provided.

 

icon-instream-podcast-ota

site|app|ota.id

Placement ID.

Always provided.

Example: "123456"

icon-instream-podcast-ota

site|app|ota.name

Placement name.

Always provided.

Example: "BLORKFM"

icon-instream-podcast-ota

site|app|ota.cat

Array of IAB content categories of the site.

Category of the content as defined by the IAB Tech Lab Content Taxonomy Version 2.0.

Example: ["342", "341"]

icon-instream-podcast-ota

site|app|ota.domain

Domain portion of the URL sent in site|app.page.

Example: "www.example.com"

icon-instream-podcast-ota

site|app|ota.page

Official URL where the content is published. In some cases inventory be from a third party "distributor" site or app where the content is accessed yet the official URL is still provided (not the third-party one).

Example: "http://www.example.com/player/mystation-hits"

icon-instream-podcast-ota

site|app|ota.publisher

Entity that controls the content of and distributes the site or app.

 

icon-instream-podcast-ota

site|app|ota.publisher.id

Exchange-specific publisher ID.

Publisher ID.

Example: "123456"

icon-instream-podcast-ota

site|app|ota.publisher.name

Publisher name. May be aliased at the publisher’s request.

Publisher name.

Example: "Blork Media"

icon-instream-podcast-ota

site|app|ota.content

Details about the published content itself, within which the ad will be shown.

Always provided.

 

icon-instream-podcast-ota

site|app|ota.content.context

Type of content, such as game, video, text, and so on.

3 = Music.

Always provided.

Always sends: 3

icon-instream-podcast-ota

site|app|ota.content.genre

Genre that best describes the content.
For Podcast this will be the ITunes Podcast Category.

For On-Demand and Live content this will be the IABv2 category name for the station..

Examples: "True Crime"

"Adult Contemporary Music"

"Adult Album Alternative"

icon-instream-podcast-ota

site|app|ota.content.id

ID uniquely identifying the content. For Podcasts.
For Podcast inventory, this is the GUID of the episode provided in the RSS feed.

Example: "07a66697-0400-4903-b3da-67a61d2b7058"

icon-instream-podcast-ota

site|app|ota.content.language

Content language using ISO-639-1-alpha-2.

Example: "en"

icon-instream-podcast-ota

site|app|ota.content.prodq

Production quality.

Always 1 for “professionally produced”.

Always provided.

Always sends: 1

icon-podcast

site|app.content.series

Content series.

Example: "Ecocentric"

icon-podcast

site|app.content.season

Season number.

Example: 3

icon-podcast

site|app.content.episode

Episode number.

Example: 5

icon-podcast

site|app.content.title

Episode title.

Example: "La vie est belle"

icon-podcast

site|app.content.url

Episode origin URL. For buy-side contextualization or review.

Example: "http://example.com/media/audio/multimedia/20200211/3/5fhdfghdfgh_1542275535.mp3"

icon-instream-podcast

app.bundle

A platform-specific application identifier intended to be unique to the app and independent of the exchange.

Triton only sends inventory as app when Triton gets this attribute.

Always provided.

Example: "com.tritondigital.tritonradio"

icon-instream-podcast-ota

device

Details of the device on which the content and impressions are displayed.

 

icon-instream-podcast

device.dnt

Standard “Do Not Track” flag as set in the header by the browser, where 0 = tracking is unrestricted, 1 = do not track.

Example: 0

icon-instream-podcast

device.ip

IPv4 address closest to device.

Only one of ip or ipv6 is always provided, not both.

Example: "198.51.100.13"

icon-instream-podcast

device.ipv6

IP address closest to device as IPv6.

Only one of ip or ipv6 is provided, not both.

Example: "2001:0db8:85a3:0000:0000:8a2e:0370:7334" 

icon-instream-podcast

device.ua

Browser user agent string. 

Always provided.

Example: "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10"

icon-instream-podcast

device.devicetype

The general type of device.

Example: 2

icon-instream-podcast

device.ext.ifa_type

Declared source of the device.ifa provided in the bid request.

Always provided.

Example: "idfa"

icon-instream-podcast

device.model

Device model.

Example: "ios-generic"

icon-instream-podcast

device.os

Device operating system.

Example: "ios"

icon-instream-podcast

device.language

Browser language using ISO-639-1-alpha-2.

Example: "en"

icon-instream-podcast

device.connectiontype

Network connection type.

Example: 2

icon-instream-podcast

device.ifa

ID sanctioned for advertiser use in the clear, not hashed.

Example: "70022383-d877-410b-bab2-e9c51c3854c1"

icon-instream-podcast-ota

device.geo

Location of the device assumed to be the user’s current location defined by a Geo object.

 

icon-instream-podcast-ota

device.geo.type

Source of location data.

Only IP or GPS. For registration-based geo, see user object.

Always provided.

Example: 2

icon-instream-podcast

device.geo.ipservice

Service or provider used to determine geolocation from IP address if applicable. Triton Digital uses MaxMind (3).

Always provided.

Always sends: 3

icon-instream-podcast

device.geo.lat

Latitude from -90.0 to +90.0, where negative is south. 

Example: +46.5

icon-instream-podcast

device.geo.lon

Longitude from -180.0 to +180.0, where negative is west. 

Example: -81.2

icon-instream-podcast-ota

device.geo.country

Country code using ISO-3166-1-alpha-3.

Example: "CAN"

icon-instream-podcast

device.geo.region

Region code using ISO-3166-2; 2-letter state code if USA.

Example: "NY"

icon-instream-podcast-ota

device.geo.metro

Google metro code; similar to but not exactly Nielsen DMAs.

Example: 530

icon-instream-podcast

device.geo.zip

Zip or postal code.

Example: "10001"

icon-instream-podcast

user

Human user of the device, or audience for advertising.

 

icon-instream-podcast

user.id

Triton Digital's internal ID.

Always provided.

Example: "cookie:8c41257f-b963-44a0-be46-8169f14431c5"

icon-instream-podcast

user.buyeruid

Buyer-specific ID for the user as mapped by the exchange for the buyer.

Example: "3300756426816551293"

icon-instream-podcast

user.yob

Year of birth as a 4-digit integer.

Example: 1986

icon-instream-podcast

user.gender

Gender, where “M” = male, “F” = female, “O” = known to be other. Omitted is unknown.

Example: "M"

icon-instream-podcast

user.ext.consent

GDPR Consent String from user based on the Transparency and Consent Framework format.

 

icon-instream-podcast-ota

source

 Always provided.

 

icon-instream-podcast-ota

source.ext

Placeholder for exchange-specific extensions to OpenRTB.

Always provided.

 

icon-instream-podcast-ota

source.ext.schain

This object represents both the links in the supply chain as well as an indicator whether or not the supply chain is complete.

Always provided.

 

icon-instream-podcast-ota

source.ext.schain.ver

Version of the supply chain specification in use, in the format of “major.minor”.

Always provided.

Always sends: "1.0"

icon-instream-podcast-ota

source.ext.schain.complete

Flag indicating whether the chain contains all nodes involved in the transaction leading back to the owner of the site, app or other medium of the inventory, where 0 = no, 1 = yes.

Always provided.

Always sends: 1

icon-instream-podcast-ota

source.ext.schain.nodes

Triton usually inserts only one node, but could add more if the publisher calls Triton Digital via a third-party advertising system.

Always provided.

 

icon-instream-podcast-ota

source.ext.schain.nodes.asi

The canonical domain name of the SSP, Exchange, Header Wrapper, or system that bidders connect to.

Always provided.

Example: "tritondigital.com"

icon-instream-podcast-ota

source.ext.schain.nodes.sid

The identifier associated with the seller or reseller account within the advertising system.

We provide the publisher's numerical identifier, the same as site|app.publisher.id.

Always provided.

Example: "123456"

icon-instream-podcast-ota

source.ext.schain.nodes.rid

The OpenRTB RequestId of the request as issued by this seller.

Always provided.

Example: "449a4ec8-fd49-4df9-9c4a-96f731d894d1"

icon-instream-podcast-ota

source.ext.schain.nodes.hp

Indicates whether this node will be involved in the flow of payment for the inventory.

Always provided.

Always sends: 1

icon-instream-podcast-ota

regs

This object contains any legal, governmental, or industry regulations that apply to the request.

Always provided.

 

icon-instream-podcast-ota

regs.gpp

Contains the Global Privacy Platform's consent string. See the Global Privacy Platform specification for more details.
GPP string allowing the transmission of privacy, consent, and consumer choice signals. The string must comply with the IAB Tech Lab
Global Privacy Platform specification.


icon-instream-podcast-ota

regs.gpp_sid


Array of the sections of the string which should be applied for this transaction. Generally will contain one and only one value, but there are edge cases where more than one may apply. GPP Section 3 (Header) and 4 (Signal Integrity) do not need to be included. See the GPP Section Information for more details.
Section ID to indicates which legislation (i.e., section of the GPP string) is considered “in force”.


icon-instream-podcast-ota

regs.ext

Placeholder for exchange-specific extensions to OpenRTB.

Always provided.

 

icon-instream-podcast-ota

regs.ext.coppa

Extension attribute “coppa” which is an optional integer that indicates: 0 = No, 1 = Yes.

Always provided.

 

icon-instream-podcast-ota

regs.ext.gdpr

Extension attribute “gdpr” which is an optional integer that indicates: 0 = No, 1 = Yes.

Always provided.

 

icon-instream-podcast-ota

regs.ext.us_privacy

Extension attribute “us_privacy” which is an optional integer that indicates: 0 = No, 1 = Yes.

 

Bid Request Example

{
  "id": "2e0fd98e-326a-4e8d-94ef-1c92c87e2250",
  "at": 2,
  "test": 0,
  "tmax": 1000,
  "cur": [
    "USD"
  ],
  "bcat": [
    "IAB26-1",
    "IAB26-2",
    "IAB26-3",
    "IAB26-4"
  ],
  "imp": [
    {
      "id": "410cb2ec-b5c0-4323-b0b9-b349817527a8",
      "audio": {
        "mimes": [
          "audio/aac",
          "audio/mp4",
          "audio/mpeg",
          "audio/mpeg3",
          "audio/vnd.wave",
          "audio/wav",
          "audio/wave",
          "audio/ogg",
          "audio/vorbis"
        ],
        "minduration": 10,
        "maxduration": 125,
        "protocols": [
          2,
          3,
          5,
          6,
          7,
          8,
          9,
          10
        ],
        "startdelay": -1,
        "maxextended": 5,
        "minbitrate": 0,
        "maxbitrate": 576,
        "delivery": [
          3
        ],
        "maxseq": 1
      },
      "bidfloor": 5,
      "bidfloorcur": "USD",
      "exp": 1800
    }
  ],
  "site": {
    "id": "31133",
    "name": "KSADFM",
    "publisher": {
      "id": "2193",
      "name": "Blork Broadcasting"
    },
    "content": {
      "context": 3,
      "prodq": 1
    }
  },
  "device": {
    "ua": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36",
    "geo": {
      "type": 2,
      "ipservice": 3,
      "lat": 41.417198181152344,
      "lon": -73.59709930419922,
      "country": "USA",
      "region": "ny",
      "metro": "501",
      "zip": "10509"
    },
    "ip": "67.100.191.29",
    "devicetype": 2
  },
  "user": {
    "id": "cookie:8c41257f-b963-44a0-be46-8169f14431c5",
    "buyeruid": "3662275784081453263"
  },
  "regs": {
    "ext": {
      "gdpr": 0,
      "coppa": 0
    }
  },
  "source": {
    "ext": {
      "schain": {
        "ver": "1.0",
        "complete": 1,
        "nodes": [
          {
            "asi": "tritondigital.com",
            "sid": "2193",
            "rid": "2e0fd98e-326a-4e8d-94ef-1c92c87e2250",
            "hp": 1
          }
        ]
      }
    }
  }
}



© 2026 Triton Digital. All rights reserved.