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

Always provided.

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

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

icon-instream-podcast-ota

at

Always provided.

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

Always sends: 2

icon-instream-podcast-ota

test

Always provided.

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

Always sends: 0

icon-instream-podcast-ota

tmax

Always provided.

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

Example: 500

icon-instream-podcast-ota

cur

Always provided.

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

Currently USD is the only supported currency.

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

Always provided.

Array of Imp objects representing the impressions offered.

Currently Triton Digital only supports a single element.

 

icon-instream-podcast-ota

imp[].id

Always provided.

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

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

icon-instream-podcast-ota

imp[].bidfloor

Only provided when Open Auction is allowed.

Minimum bid for this impression expressed in CPM.

Example: 0

icon-instream-podcast-ota

imp[].bidfloorcur

Only provided when Open Auction is allowed.

Currency specified using ISO-4217 alpha codes.

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

Always provided.

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.

Example: 1800

icon-instream-podcast-ota

imp[].ext.tid

Always provided.

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

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

icon-instream-podcast-ota

imp[].ext.gpid

Always provided.

A consistent unique ID for each impression placement on a page.

Example: "123456"

icon-instream-podcast-ota

imp[].rwdd

Always provided.

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

Always sends: 0

icon-instream-podcast-ota

imp[].audio

Always provided.

An Audio object.

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

 

icon-instream-podcast-ota

imp[].audio.mimes

Always provided.

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 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

Always provided.

Minimum audio ad duration in seconds.

This is based on publisher rules.

Example: 15

icon-instream-podcast-ota

imp[].audio.maxduration

Always provided.

Maximum audio ad duration in seconds.

This is based on publisher rules.

Example: 60

icon-instream-podcast-ota

imp[].audio.maxextended

Always provided.

Maximum extended ad duration if extension is allowed.

Always sends: 5

icon-instream-podcast-ota

imp[].audio.maxseq

Always provided.

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

Always sends: 1

icon-instream-podcast-ota

imp[].audio.protocols

Always provided.

Array of supported audio protocols.

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

icon-instream-podcast-ota

imp[].audio.startdelay

Always provided.

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

Example: -1

icon-instream-podcast-ota

imp[].audio.minbitrate

Always provided.

Minimum bit rate in Kbps.

Always sends: 0

icon-instream-podcast-ota

imp[].audio.maxbitrate

Always provided.

Maximum bit rate in Kbps.

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

Always provided.

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 sends: 0

icon-instream-podcast-ota

imp[].pmp.deals

Always provided.

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

 

icon-instream-podcast-ota

imp[].pmp.deals[].id

Always provided.

A unique identifier for the direct deal.

Example: "82751"

icon-instream-podcast-ota

imp[].pmp.deals[].bidfloor

Always provided.

Minimum bid for this impression expressed in CPM.

Example: 5

icon-instream-podcast-ota

imp[].pmp.deals[].bidfloorcur

Always provided.

Currency specified using ISO-4217 alpha codes.

Always sends: "USD"

icon-instream-podcast-ota

imp[].pmp.deals[].at

Always provided.

Override of the overall auction type of the bid request.

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

Always provided.

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.

 

icon-ota

imp[].qty.multiplier

Always provided.

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.

Example: 4200.0

icon-ota

imp[].qty.sourcetype

Always provided.

The source type of the quantity measurement.

1 = Measurement Vendor Provided, 2  = Publisher Provided.

Example: 1

icon-ota

imp[].qty.vendor

Always provided.

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

Example: "blork.example"

icon-instream-podcast

site

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

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

 

icon-instream-podcast

app

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

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

 

icon-ota

ota

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

 

icon-instream-podcast-ota

site|app|ota.id

Always provided.

Placement ID.

Example: "123456"

icon-instream-podcast-ota

site|app|ota.name

Always provided.

Placement name.

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 is 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

Always provided.

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

 

icon-instream-podcast-ota

site|app|ota.content.context

Always provided.

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

3 = Music.

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

Always provided.

Production quality.

Always 1 for “professionally produced”.

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

Always provided.

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.

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

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

IPv4 address closest to device.

Example: "198.51.100.13"

icon-instream-podcast

device.ipv6

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

IP address closest to device as IPv6.

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

icon-instream-podcast

device.ua

Always provided.

Browser user agent string. 

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

Always provided.

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

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

Always provided.

Source of location data.

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

Example: 2

icon-instream-podcast

device.geo.ipservice

Always provided.

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

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

Always provided.

Triton Digital’s internal ID.

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

Always provided.

Placeholder for exchange-specific extensions to OpenRTB.

 

icon-instream-podcast-ota

source.ext.schain

Always provided.

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

 

icon-instream-podcast-ota

source.ext.schain.ver

Always provided.

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

Always sends: "1.0"

icon-instream-podcast-ota

source.ext.schain.complete

Always provided.

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 sends: 1

icon-instream-podcast-ota

source.ext.schain.nodes

Always provided.

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

 

icon-instream-podcast-ota

source.ext.schain.nodes.asi

Always provided.

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

Example: "tritondigital.com"

icon-instream-podcast-ota

source.ext.schain.nodes.sid

Always provided.

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

Triton provides the publisher's numerical identifier, the same as site|app.publisher.id.

Example: "123456"

icon-instream-podcast-ota

source.ext.schain.nodes.rid

Always provided.

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

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

icon-instream-podcast-ota

source.ext.schain.nodes.hp

Always provided.

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

Always sends: 1

icon-instream-podcast-ota

regs

Always provided.

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

 

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

Always provided.

Placeholder for exchange-specific extensions to OpenRTB.

 

icon-instream-podcast-ota

regs.ext.coppa

Always provided.

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

 

icon-instream-podcast-ota

regs.ext.gdpr

Always provided.

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

 

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.