//sdk/com.adsbynimbus.openrtb.request
Package-level declarations
Implementation of the OpenRTB 2.5 Spec
Types
| Name | Summary |
|---|---|
| App | @Serializable class App(var name: String? = null, var bundle: String? = null, var domain: String? = null, var storeurl: String? = null, var ver: String? = null, var keywords: String? = null, var cat: Array<String>? = null, var sectioncat: Array<String>? = null, var pagecat: Array<String>? = null, var privacypolicy: Byte? = null, var paid: Byte? = null, var publisher: Publisher? = null) This object should be included if the ad supported content is a non-browser application (typically in mobile) as opposed to a website. A bid request must not contain both an App and a Site object. At a minimum, it is useful to provide an App ID or bundle, but this is not strictly required. |
| Asset | @Serializable class Asset(var id: Int, var required: Byte, var ext: Map<String, String>? = null, var title: Asset.TitleObject? = null, var img: Asset.ImageObject? = null, var video: Asset.VideoObject? = null, var data: Asset.DataObject? = null) This object represents a native asset object, which is the main container for each asset requested or supported by Exchange on behalf of the rendering client. |
| Banner | @Serializable class Banner(var w: Int, var h: Int, var format: Array<Format>? = null, var bidfloor: Float = 0.0f, var battr: ByteArray? = null, var pos: Byte = 0, var api: ByteArray? = null, var vcm: Byte? = null) This object represents the most general type of impression. |
| BidRequest | @Serializable class BidRequest(var imp: Array<Impression> = emptyArray(), var app: App? = null, var device: Device? = null, var format: Format = Format(0, 0), var user: User? = null, var test: Byte = 0, var tmax: Int = 500, var badv: Array<String>? = null, var source: Source? = null, var regs: Regs? = null, var customSignals: Signals? = null, val ext: MutableMap<String, String> = mutableMapOf()) The top-level bid request object contains a globally unique bid request or auction ID. |
| Data | @Serializable class Data(var id: String? = null, var name: String? = null, var segment: Set<Segment>? = null) 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. |
| Device | @Serializable class Device(var ua: String, var ifa: String, val make: String, val model: String, var hwv: String? = null, val os: String, val osv: String, var h: Int, var w: Int, var pxratio: Float? = null, var language: String? = null, val devicetype: Byte = 0, var connectiontype: Byte = 0, var dnt: Byte = 0, var lmt: Byte = 0, var geo: Geo? = null, var ip: String? = null, var carrier: String? = null) This object provides information pertaining to the device through which the user is interacting. |
| EID | @Serializable class EID(val source: String, var uids: Set<UID>) An External User Id |
| Extension | @Serializable class Extension(var nimbusNative: NimbusNative? = null) |
| Format | @Serializable class Format(val w: Int, val h: Int) This object represents an allowed size (i.e., height and width combination) |
| Geo | @Serializable class Geo(var lat: Float? = null, var lon: Float? = null, var type: Byte? = null, var accuracy: Int? = null, var country: String? = null, var city: String? = null, var metro: String? = null, var state: String? = null) This object encapsulates various methods for specifying a geographic location. |
| Impression | @Serializable class Impression(var banner: Banner? = null, var video: Video? = null, var native: Native? = null, var instl: Byte = 0, var secure: Byte = 1, var ext: Impression.Extension) This object describes an ad placement or impression being auctioned. |
| Native | @Serializable class Native(var bidfloor: Float = 0.0f, var request: String? = null, var ver: String? = null, var api: ByteArray? = null, var battr: ByteArray? = null, var ext: Extension? = null) This public class represents a native type impression. |
| NimbusNative | @Serializable class NimbusNative(var ver: String = "1.2", var plcmttype: Byte?, var context: Byte?, var contextsubtype: Byte?, var assets: List<Asset>) |
| Publisher | @Serializable class Publisher(var name: String? = null, var domain: String? = null, var cat: Array<String>? = null) This object describes the publisher of the media in which the ad will be displayed. |
| Regs | @Serializable class Regs(var coppa: Byte = 0, var ext: Regs.Extension = Extension()) This object contains any legal, governmental, or industry regulations that apply to the request. |
| Segment | @Serializable class Segment(val id: String? = null, val name: String? = null, val value: String? = null, val ext: MutableMap<String, String> = mutableMapOf()) Segment objects are essentially key-value pairs that convey specific units of data. |
| Session | @Serializable class Session(var depth: Int = 0, var duration: Long = 0) Session related signals as used by Nimbus |
| Signals | @Serializable class Signals(var session: Session = Session()) Custom signals for this request |
| Source | @Serializable class Source(val ext: MutableMap<String, String> = mutableMapOf()) This object describes the nature and behavior of the entity that is the source of the bid request upstream from the exchange. |
| UID | @Serializable class UID(var id: String, var atype: Int = 0, var ext: Map<String, String> = mutableMapOf()) Object representing the extended ID UID |
| User | @Serializable class User(var age: Int = 0, var buyeruid: String? = null, var yob: Int = 0, var gender: String? = null, var keywords: String? = null, var custom_data: String? = null, var data: Array<Data>? = null, var ext: User.Extension? = null) This object contains information known or derived about the human user of the device (i.e., the audience for advertising). |
| Video | @Serializable class Video(var bidfloor: Float = 0.0f, var mimes: Array<String>? = null, var minduration: Int = 0, var maxduration: Int = 60, var protocols: ByteArray? = null, var w: Int = 0, var h: Int = 0, var startdelay: Int = 0, var placement: Byte = 0, var linearity: Byte = 0, var skip: Byte = 0, var delivery: ByteArray? = null, var skipmin: Int = 0, var skipafter: Int = 0, var minbitrate: Int = 0, var maxbitrate: Int = 0, var pos: Byte = 0, var playbackmethod: ByteArray? = null, var api: ByteArray? = null, var companionad: Array<Banner>? = null, var companiontype: ByteArray? = null, var ext: MutableMap<String, Byte> = mutableMapOf( "is_rewarded" to 0 )) This object represents an in-stream video impression. |