io.predictor.v1

package io.predictor.v1

Members list

Type members

Classlikes

final case class AdRequestContext(exchange: String, appBundle: String, appId: String, os: String, osVersion: Option[OsVersion], country: String, deviceType: Int, deviceModel: String, deviceMake: String, displayManager: String, displayManagerVersion: Int, language: String, sellerName: String, sellerId: String, sourceId: String, sourceName: String, badv: Seq[String], bcat: Seq[String], bapp: Seq[String], adType: String, coppa: Boolean, test: Boolean, ifa: String, ifv: String, bidTimeSeconds: Long, rewardedBanner: Boolean, rewardedVideo: Boolean, skadnSupported: Boolean, region: String, city: String, zip: String, timezone: String, connType: Int, placementIsVertical: Boolean, ipAddress24: String, peakHours: Boolean, bidFloor: Float, placementW: Int, placementH: Int, placementSecure: Int, placementTopframe: Int, impInstl: Int, bannerApi: Seq[Int], bannerAttr: Seq[Int], bannerType: Seq[Int], bannerW: Int, bannerH: Int, videoMinduration: Int, videoMaxduration: Int, videoProtocols: Seq[Int], videoMimes: Seq[String], videoAttr: Seq[Int], videoW: Int, videoH: Int, bmExtensionWinnerDspId: String, bmExtensionWinnerBundle: String, bmExtensionWinnerPrice: Float, thirdPartyBidPrice: Float, minFloor: Float, cachedLurlPrice: Float, bmCachedLurlPrice: Float, cachedLurlMillisPassed: Long, sdkStackId: String, mediationStackId: String, mediationMode: String, originalFloor: Float, vectorId: String, bidmachinePlacementValue: Float, placementHistoricalValue: Float, depthAdreqs1H: Int, depthAdreqs1D: Int, depthAdreqs7D: Int, depthImps1H: Int, depthImps1D: Int, depthImps7D: Int, deviceExtBatterylevel: Float, deviceExtCharging: Int, deviceExtTotaldisk: Long, deviceExtTotalmem: Long, deviceExtFreemem: Long, deviceExtScreenbright: Float, userClickRate: Float, userLastClick: Long, userCompletionRate: Float, userSc: Float, userRetention: Float, userImwp: Float, userImd: Float, userImimd: Float, userImpDepth: Int, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[AdRequestContext]

Context derived from OpenRTB 2.5 bid request. All fields are optional — absent field means the filter that uses it is a pass-through.

Context derived from OpenRTB 2.5 bid request. All fields are optional — absent field means the filter that uses it is a pass-through.

Value parameters

adType
appBundle

app.bundle

appId

app.bundle used as ID by bidder

badv
bannerApi
bannerAttr

imp.banner.attr

bannerH

imp.banner.h

bannerType

imp.banner.type

bannerW

imp.banner.w

bapp

request.bapp — blocked app bundles

bcat

request.bcat — blocked IAB categories

bidFloor
bidTimeSeconds

wall-clock epoch seconds at bid evaluation time

bidmachinePlacementValue

request.ext.ml

bmCachedLurlPrice

request.ext.cachedLurlPrice

bmExtensionWinnerBundle

request.ext.winner.bundle

bmExtensionWinnerDspId
bmExtensionWinnerPrice

request.ext.winner.price

cachedLurlMillisPassed

request.ext.cached_lurl.millis_passed

cachedLurlPrice

request.ext.cached_lurl.price

city

device.geo.city

connType
coppa

request.regs.coppa != 0

country
depthAdreqs1D

request.ext.metrics.depth.adreqs.*.last_1d

depthAdreqs1H
depthAdreqs7D

request.ext.metrics.depth.adreqs.*.last_7d

depthImps1D

request.ext.metrics.depth.imps.*.last_1d

depthImps1H

request.ext.metrics.depth.imps.*.last_1h

depthImps7D

request.ext.metrics.depth.imps.*.last_7d

deviceExtBatterylevel
deviceExtCharging

device.ext.charging

deviceExtFreemem

device.ext.freemem, MB

deviceExtScreenbright

device.ext.screenbright

deviceExtTotaldisk

device.ext.totaldisk, MB

deviceExtTotalmem

device.ext.totalmem, MB

deviceMake

device.make, lowercase

deviceModel

device.model, lowercase

deviceType

device.devicetype: 1=mobile/tablet, 4=phone, 5=tablet

displayManager

imp.displaymanager, lowercase

displayManagerVersion

imp.displaymanagerver parsed as int

exchange
ifa

device.ifa (IDFA on iOS, GAID on Android)

ifv

device.ext.ifv or device.ext.idfv

impInstl

imp.instl: 1=interstitial

ipAddress24

derived: first 3 octets of device.ip + ".0"

language

device.language

mediationMode

request.ext.bm_ext.mediation_mode

mediationStackId

request.ext.mediation_stack_id

minFloor

request.ext.min_floor

originalFloor

request.ext.original_floor

os

device.os, lowercase: "ios" / "android"

osVersion

device.osv parsed as [major, minor, patch]

peakHours

derived: UTC hour > 14 or < 4

placementH

video.h or banner.h

placementHistoricalValue

request.ext.lurl

placementIsVertical

derived: imp.h > imp.w

placementSecure

imp.secure

placementTopframe

imp.banner.topframe

placementW

video.w or banner.w

region
rewardedBanner

derived from imp.banner.ext.* and imp.ext.*

rewardedVideo

derived from imp.video.ext.* and imp.ext.*

sdkStackId

request.ext.sdk_stack_id

sellerId

app.publisher.ext.sellerid

sellerName
skadnSupported

derived: sourceapp + overlay + matching skadnetid present

sourceId

app.publisher.ext.sourceid

sourceName

app.publisher.ext.sourcename

test

request.test != 0

thirdPartyBidPrice

request.ext.dsp_bid

timezone

device.geo.utcoffset formatted as +HHmm

userClickRate
userCompletionRate

user.ext.completionrate

userImd

user.ext.imd

userImimd

user.ext.imimd

userImpDepth

user.ext.impdepth or app.ext.imp.all

userImwp

user.ext.imwp

userLastClick

user.ext.lastclick, epoch seconds

userRetention

user.ext.retention

userSc

user.ext.sc

vectorId

request.ext.vector_id

videoAttr

imp.video.attr

videoH

imp.video.h

videoMaxduration

imp.video.maxduration

videoMimes

imp.video.mimes

videoMinduration
videoProtocols

imp.video.protocols

videoW

imp.video.w

zip

device.geo.zip

Attributes

Companion
object
Supertypes
trait Updatable[AdRequestContext]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object AdRequestContext extends GeneratedMessageCompanion[AdRequestContext]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[AdRequestContext]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class AdRequestFeatures(requestId: String, sellerId: String, adType: AdType, isRewardedRequest: Boolean, app: Option[String], os: Option[OperatingSystem], osVersion: Option[String], language: Option[String], country: Option[String], region: Option[String], city: Option[String], zip: Option[String], deviceWidth: Option[Int], deviceHeight: Option[Int], connectionType: Option[ConnectionType], deviceType: Option[DeviceType], ifa: Option[String], bmCachedLurlPrice: Option[Double], cachedLurlMillisPassed: Option[Long], originalFloor: Option[Double], mediationStackId: Option[String], sdk: Option[String], placementWidth: Option[Int], placementHeight: Option[Int], adRequestTimestamp: Option[Timestamp], sessionMetrics: Option[SessionMetrics], mediationMode: Option[String], topframe: Option[Boolean], lurlStats: Option[LurlMetricsForAdType], isCoppa: Option[Boolean], device: Option[Struct], userExt: Option[Struct], metrics: Option[Struct], userImwp: Option[Float], userWp: Option[Float], userImd: Option[Int], userImimd: Option[Int], userSc: Option[Int], userRetention: Option[Int], sessionDuration: Option[Long], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[AdRequestFeatures]

Shared First-Look ad-request features — the request-level base fields sent on every First-Look call, factored out so request messages reference them instead of re-declaring the block. Field numbers mirror the existing GetBidMachine*Request layout so the correspondence stays obvious.

Shared First-Look ad-request features — the request-level base fields sent on every First-Look call, factored out so request messages reference them instead of re-declaring the block. Field numbers mirror the existing GetBidMachine*Request layout so the correspondence stays obvious.

Value parameters

app

app bundle

country

Alpha2 code (e.g., "US")

device
language

ISO-639-1-alpha-2

metrics

request.ext.metrics (session., depth.)

originalFloor

Publisher's declared floor (request.ext.original_floor). At this pre-auction stage request.flr is unmodified, so this is the floor the predictor conditions on (the model's bid_floor feature). The unified flow also masks grid bins <= original_floor so the auction never lowers the declared floor.

requestId

Adrequest id, uuid

sdk

display manager

sessionDuration

user.ext.sessionduration

userExt

request.context.user.ext (e.g. retention, sessionduration, imwp/wp)

userImd

user.ext.imd, >= 0

userImimd

user.ext.imimd, >= 0

userImwp
userRetention

user.ext.retention

userSc

user.ext.sc

userWp

user.ext.wp, eCPM-like, >= 0

Attributes

Companion
object
Supertypes
trait Updatable[AdRequestFeatures]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object AdRequestFeatures extends GeneratedMessageCompanion[AdRequestFeatures]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[AdRequestFeatures]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
sealed abstract class AdType(val value: Int) extends GeneratedEnum

Enum values are aligned to analytics

Enum values are aligned to analytics

Attributes

Companion
object
Supertypes
trait GeneratedEnum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object BANNER
object INTERSTITIAL
object MREC
object NATIVE
trait Recognized
object VIDEO
class Unrecognized
Show all
object AdType extends GeneratedEnumCompanion[AdType]

Attributes

Companion
class
Supertypes
trait Sum
trait Mirror
trait GeneratedEnumCompanion[AdType]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
AdType.type
final case class AppliedBidShadingSettings(minMargin: Double, maxMargin: Double, epsilon: Double, strategyName: Option[String], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[AppliedBidShadingSettings]

Value parameters

strategyName

only when selected strategy under exploration differs from v4

Attributes

Companion
object
Supertypes
trait Updatable[AppliedBidShadingSettings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object AppliedBidShadingSettings extends GeneratedMessageCompanion[AppliedBidShadingSettings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[AppliedBidShadingSettings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BaselineV2Settings(maximumMargin: Float, minimumMargin: Float, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BaselineV2Settings]

Value parameters

maximumMargin

[-1, 1]

minimumMargin

[-1, 1]

Attributes

Companion
object
Supertypes
trait Updatable[BaselineV2Settings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BaselineV2Settings extends GeneratedMessageCompanion[BaselineV2Settings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BaselineV2Settings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BaselineV4Settings(maximumMargin: Float, minimumMargin: Float, epsilon: Float, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BaselineV4Settings]

Value parameters

epsilon

<=1

maximumMargin

[-1, 1]

minimumMargin

[-1, 1]

Attributes

Companion
object
Supertypes
trait Updatable[BaselineV4Settings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BaselineV4Settings extends GeneratedMessageCompanion[BaselineV4Settings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BaselineV4Settings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BidFloorResponse(floors: Seq[Float], model: Option[ModelIdentity], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BidFloorResponse]

Value parameters

floors

Selected floors, ordered descending. One per fill-probability threshold in the request, with equal prices collapsed. Empty if no price bucket cleared a threshold.

Attributes

Companion
object
Supertypes
trait Updatable[BidFloorResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BidFloorResponse extends GeneratedMessageCompanion[BidFloorResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BidFloorResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BidShadingExplorationStrategySettings(minMargin: Option[RandomWalkInterval], maxMargin: Option[RandomWalkInterval], epsilon: Option[RandomWalkInterval], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BidShadingExplorationStrategySettings]

Attributes

Companion
object
Supertypes
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BidShadingExplorationStrategySettings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BidShadingSettings(bidShadingSettings: BidShadingSettings, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BidShadingSettings]

Attributes

Companion
object
Supertypes
trait Updatable[BidShadingSettings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BidShadingSettings extends GeneratedMessageCompanion[BidShadingSettings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BidShadingSettings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BidderFloorDecision(floor: Float, bidRateProba: Float, winRateProba: Float, maxEs: Double, skip: Boolean, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BidderFloorDecision]

Per-bidder decision. Named fields replace the design doc's positional array [floor, bid_rate_proba, win_rate_proba, max_ES, skip].

Per-bidder decision. Named fields replace the design doc's positional array [floor, bid_rate_proba, win_rate_proba, max_ES, skip].

Value parameters

bidRateProba

P(bid | floor_bin, bidder)

floor

argmax-ES floor bin; always populated, even when skip = true.

maxEs

ES at the chosen bin — the value compared to λ_j to produce skip.

skip

true => auction service must BLOCK this bidder (the Demand-SRO output) false => call the bidder at floor.

winRateProba

P(impression | bid_price = floor_bin); v1 identity bid_price = floor

Attributes

Companion
object
Supertypes
trait Updatable[BidderFloorDecision]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BidderFloorDecision extends GeneratedMessageCompanion[BidderFloorDecision]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BidderFloorDecision]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class BidderInput(bidderId: Long, dunaCounter: Option[DunaCounter], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[BidderInput]

A single pretargeted bidder, with the per-(request, bidder) DUNA counter snapshot that feeds the bid_rate model.

A single pretargeted bidder, with the per-(request, bidder) DUNA counter snapshot that feeds the bid_rate model.

Attributes

Companion
object
Supertypes
trait Updatable[BidderInput]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object BidderInput extends GeneratedMessageCompanion[BidderInput]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[BidderInput]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
object BidderProto extends GeneratedFileObject

Attributes

Supertypes
class GeneratedFileObject
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class CampaignsDebugResponse(rejected: Map[String, RejectionInfo], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[CampaignsDebugResponse]

Value parameters

rejected

campaign_id → rejection info

Attributes

Companion
object
Supertypes
trait Updatable[CampaignsDebugResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CampaignsDebugResponse extends GeneratedMessageCompanion[CampaignsDebugResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[CampaignsDebugResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class CampaignsFilterResponse(eligibleCampaignIds: Seq[String], configHash: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[CampaignsFilterResponse]

Attributes

Companion
object
Supertypes
trait Updatable[CampaignsFilterResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CampaignsFilterResponse extends GeneratedMessageCompanion[CampaignsFilterResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[CampaignsFilterResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
sealed abstract class ConnectionType(val value: Int) extends GeneratedEnum

Copy of AdCom types, we don't reuse adcom types from this repo since they're de-facto SDK contract and could be contaminated with other fields

Copy of AdCom types, we don't reuse adcom types from this repo since they're de-facto SDK contract and could be contaminated with other fields

Attributes

Companion
object
Supertypes
trait GeneratedEnum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object CELL_2G
object CELL_3G
object CELL_4G
object CELL_5G
object CELL_UNKNOWN
trait Recognized
object WIFI
object WIRED
class Unrecognized
Show all
object ConnectionType extends GeneratedEnumCompanion[ConnectionType]

Attributes

Companion
class
Supertypes
trait Sum
trait Mirror
trait GeneratedEnumCompanion[ConnectionType]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class Creative(externalId: String, campaignIds: Seq[String], theme: String, bannerPresent: Boolean, videoPresent: Boolean, displaymanagerWhite: Seq[String], displaymanagerBlack: Seq[String], coppa: Boolean, targetingInstl: Seq[Int], bannerAttr: Seq[Int], bannerType: Seq[Int], bannerApi: Seq[Int], videoWidth: Int, videoHeight: Int, videoDuration: Int, videoProtocol: Int, videoMime: Seq[String], videoAttr: Seq[Int], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[Creative]

Creative targeting parameters. Contains only the fields needed for creative-level filtering.

Creative targeting parameters. Contains only the fields needed for creative-level filtering.

Value parameters

bannerApi

imp.banner.api

bannerAttr

imp.banner.attr

bannerPresent

true if creative has a banner sub-record

bannerType

imp.banner.type

campaignIds

campaigns this creative belongs to

coppa
displaymanagerBlack

blocked display managers

displaymanagerWhite
externalId

creative ID

targetingInstl
theme

creative theme, used for theme-global-black filter

videoAttr

video.attr

videoDuration

video.duration

videoHeight

video.height

videoMime

video.mime

videoPresent

true if creative has a video sub-record

videoProtocol

video.protocol (single value from Creative record)

videoWidth

video.width

Attributes

Companion
object
Supertypes
trait Updatable[Creative]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Creative extends GeneratedMessageCompanion[Creative]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[Creative]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
Creative.type
final case class CreativesDebugResponse(rejected: Map[String, RejectionInfo], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[CreativesDebugResponse]

Value parameters

rejected

creative external_id → rejection info

Attributes

Companion
object
Supertypes
trait Updatable[CreativesDebugResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CreativesDebugResponse extends GeneratedMessageCompanion[CreativesDebugResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[CreativesDebugResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class CreativesFilterResponse(eligibleCreatives: Seq[Creative], configHash: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[CreativesFilterResponse]

Attributes

Companion
object
Supertypes
trait Updatable[CreativesFilterResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object CreativesFilterResponse extends GeneratedMessageCompanion[CreativesFilterResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[CreativesFilterResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
sealed abstract class DeviceType(val value: Int) extends GeneratedEnum

Attributes

Companion
object
Supertypes
trait GeneratedEnum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object MOBILE_TABLET
object PHONE
trait Recognized
object TABLET
class Unrecognized
Show all
object DeviceType extends GeneratedEnumCompanion[DeviceType]

Attributes

Companion
class
Supertypes
trait Sum
trait Mirror
trait GeneratedEnumCompanion[DeviceType]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
DeviceType.type
final case class DisabledSettings(unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[DisabledSettings]

Attributes

Companion
object
Supertypes
trait Updatable[DisabledSettings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DisabledSettings extends GeneratedMessageCompanion[DisabledSettings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[DisabledSettings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class DunaCounter(requests: Long, bids: Long, totalPrice: Double, avgPrice: Double, bidRate: Double, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[DunaCounter]

Per-(request, bidder) DUNA density snapshot — the fast market-reactivity signal bid_rate consumes. Only the primitive counters cross the wire; the derived features the model uses (avg_price = total_price / requests, bid_rate = bids / requests, both 0 when requests == 0) are computed inside the Predictor so they always match how they were derived at training time.

Per-(request, bidder) DUNA density snapshot — the fast market-reactivity signal bid_rate consumes. Only the primitive counters cross the wire; the derived features the model uses (avg_price = total_price / requests, bid_rate = bids / requests, both 0 when requests == 0) are computed inside the Predictor so they always match how they were derived at training time.

Purpose-built for the serving contract and intentionally NOT reusing io.bidmachine.protobuf.ml.v1.DunaBidDensity (a logging/auction-event type): the request and logging schemas evolve on independent lifecycles.

Value parameters

avgPrice

average price

bidRate

bid rate

bids

bid responses received

requests

bid requests sent to this bidder

totalPrice

sum of bid prices

Attributes

Companion
object
Supertypes
trait Updatable[DunaCounter]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DunaCounter extends GeneratedMessageCompanion[DunaCounter]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[DunaCounter]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
object ExchangeProto extends GeneratedFileObject

Attributes

Supertypes
class GeneratedFileObject
class Object
trait Matchable
class Any
Self type
final case class FilterCampaignsRequest(context: Option[AdRequestContext], userIdentity: Option[UserIdentity], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[FilterCampaignsRequest]

Attributes

Companion
object
Supertypes
trait Updatable[FilterCampaignsRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object FilterCampaignsRequest extends GeneratedMessageCompanion[FilterCampaignsRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[FilterCampaignsRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class FilterCreativesRequest(context: Option[AdRequestContext], creatives: Seq[Creative], globalCreativeAppsBlacklist: Map[String, StringList], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[FilterCreativesRequest]

Value parameters

globalCreativeAppsBlacklist

theme → blocked app bundles

Attributes

Companion
object
Supertypes
trait Updatable[FilterCreativesRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object FilterCreativesRequest extends GeneratedMessageCompanion[FilterCreativesRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[FilterCreativesRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class GetBidMachineBidFloorRequest(requestId: String, sellerId: String, adType: AdType, isRewardedRequest: Boolean, app: Option[String], os: Option[OperatingSystem], osVersion: Option[String], language: Option[String], country: Option[String], region: Option[String], city: Option[String], zip: Option[String], deviceWidth: Option[Int], deviceHeight: Option[Int], connectionType: Option[ConnectionType], deviceType: Option[DeviceType], ifa: Option[String], bmCachedLurlPrice: Option[Double], cachedLurlMillisPassed: Option[Long], mediationStackId: Option[String], sdk: Option[String], placementWidth: Option[Int], placementHeight: Option[Int], adRequestTimestamp: Option[Timestamp], sessionMetrics: Option[SessionMetrics], mediationMode: Option[String], topframe: Option[Boolean], lurlStats: Option[LurlMetricsForAdType], isCoppa: Option[Boolean], userImwp: Option[Float], userWp: Option[Float], userImd: Option[Int], userImimd: Option[Int], userSc: Option[Int], userRetention: Option[Int], sessionDuration: Option[Long], bidfloorModelName: String, minProbability: Option[Float], maxProbability: Option[Float], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[GetBidMachineBidFloorRequest]

Value parameters

app

app bundle

bidfloorModelName

either model name and version or alias e.g. champion

country

Alpha2 code (e.g., "US")

isCoppa

request.context.regs.coppa

isRewardedRequest

whether request.placement.reward is set

language

language using ISO-639-1-alpha-2

lurlStats

from the table dlh.ml.lurl_features_v02

minProbability

First Look mobility thresholds: keep price buckets whose predicted fill probability is at or above the threshold. Each value is an independent threshold - selection runs once per value, so two values yield two floors. Range (0,1]. min_probability unset -> predictor uses its backup default. max_probability unset -> one floor, as before.

requestId

Categorical features Adrequest id, uuid

sdk

display manager

sessionDuration

user.ext.sessionduration

sessionMetrics

session metrics

topframe

request.placement.display.topframe

userImd

user.ext.imd, >= 0

userImimd

user.ext.imimd, >= 0

userImwp
userRetention

user.ext.retention

userSc

user.ext.sc

userWp

user.ext.wp, eCPM-like, >= 0

Attributes

Companion
object
Supertypes
trait Updatable[GetBidMachineBidFloorRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object GetBidMachineBidFloorRequest extends GeneratedMessageCompanion[GetBidMachineBidFloorRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[GetBidMachineBidFloorRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class GetBidMachineWinRateRequest(requestId: String, sellerId: String, adType: AdType, isRewardedRequest: Boolean, app: Option[String], os: Option[OperatingSystem], osVersion: Option[String], language: Option[String], country: Option[String], region: Option[String], city: Option[String], zip: Option[String], deviceWidth: Option[Int], deviceHeight: Option[Int], connectionType: Option[ConnectionType], deviceType: Option[DeviceType], ifa: Option[String], bmCachedLurlPrice: Option[Double], cachedLurlMillisPassed: Option[Long], bidFloor: Double, agencyId: String, originalFloor: Option[Double], mediationStackId: Option[String], sdk: Option[String], placementWidth: Option[Int], placementHeight: Option[Int], adRequestTimestamp: Option[Timestamp], sessionMetrics: Option[SessionMetrics], mediationMode: Option[String], topframe: Option[Boolean], lurlStats: Option[LurlMetricsForAdType], isCoppa: Option[Boolean], bidShadingSettings: Option[BidShadingSettings], userImwp: Option[Float], userWp: Option[Float], userImd: Option[Int], userImimd: Option[Int], userSc: Option[Int], userRetention: Option[Int], sessionDuration: Option[Long], bidPrice: Float, winrateModelName: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[GetBidMachineWinRateRequest]

https://appodeal.atlassian.net/wiki/spaces/Vector/pages/5423202325/Win+Rate+Model+Columns+Inference

Value parameters

app

app bundle

country

Alpha2 code (e.g., "US")

isCoppa

request.context.regs.coppa

isRewardedRequest

whether request.placement.reward is set

language

language using ISO-639-1-alpha-2

lurlStats

from the table dlh.ml.lurl_features_v02

requestId

Categorical features Adrequest id, uuid

sdk

display manager

sessionDuration

user.ext.sessionduration

sessionMetrics

session metrics

topframe

request.placement.display.topframe

userImd

user.ext.imd, >= 0

userImimd

user.ext.imimd, >= 0

userImwp
userRetention

user.ext.retention

userSc

user.ext.sc

userWp

user.ext.wp, eCPM-like, >= 0

winrateModelName

either model name and version or alias e.g. champion

Attributes

Companion
object
Supertypes
trait Updatable[GetBidMachineWinRateRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object GetBidMachineWinRateRequest extends GeneratedMessageCompanion[GetBidMachineWinRateRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[GetBidMachineWinRateRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class GetUnifiedSroFloorsRequest(request: Option[AdRequestFeatures], bidders: Seq[BidderInput], bidrateModelName: String, winrateModelName: String, lambda: Option[LambdaConfig], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[GetUnifiedSroFloorsRequest]

Auction service -> Predictor. The shared First-Look features, plus the pretargeted bidder batch, the model names to load, and the λ config.

Auction service -> Predictor. The shared First-Look features, plus the pretargeted bidder batch, the model names to load, and the λ config.

Value parameters

bidders

Every pretargeted bidder to score.

bidrateModelName

Model name or alias (e.g. bidrate&#64;champion) the Predictor must load.

lambda

λ config from the unified_sro_floors rollout flag.

Attributes

Companion
object
Supertypes
trait Updatable[GetUnifiedSroFloorsRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object GetUnifiedSroFloorsRequest extends GeneratedMessageCompanion[GetUnifiedSroFloorsRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[GetUnifiedSroFloorsRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class LambdaConfig(default: Double, overrides: Map[String, Double], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[LambdaConfig]

λ config resolved per bidder as overrides.get(bidder_id, default). v1 ships overrides = {} (every bidder resolves to default), behaviourally identical to a single global scalar.

λ config resolved per bidder as overrides.get(bidder_id, default). v1 ships overrides = {} (every bidder resolves to default), behaviourally identical to a single global scalar.

Value parameters

overrides

bidder_id -> λ_j

Attributes

Companion
object
Supertypes
trait Updatable[LambdaConfig]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object LambdaConfig extends GeneratedMessageCompanion[LambdaConfig]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[LambdaConfig]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class MediationBaselineV0Settings(maximumMargin: Float, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[MediationBaselineV0Settings]

Value parameters

maximumMargin

[0, 1]

Attributes

Companion
object
Supertypes
trait Updatable[MediationBaselineV0Settings]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object MediationBaselineV0Settings extends GeneratedMessageCompanion[MediationBaselineV0Settings]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[MediationBaselineV0Settings]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class ModelIdentity(name: String, version: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[ModelIdentity]

Attributes

Companion
object
Supertypes
trait Updatable[ModelIdentity]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object ModelIdentity extends GeneratedMessageCompanion[ModelIdentity]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[ModelIdentity]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
sealed abstract class OperatingSystem(val value: Int) extends GeneratedEnum

Attributes

Companion
object
Supertypes
trait GeneratedEnum
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object ANDROID
object IOS
trait Recognized
class Unrecognized
object OperatingSystem extends GeneratedEnumCompanion[OperatingSystem]

Attributes

Companion
class
Supertypes
trait Sum
trait Mirror
trait GeneratedEnumCompanion[OperatingSystem]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class OsVersion(major: Int, minor: Int, patch: Int, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[OsVersion]

Parsed OS version: [major, minor, patch]

Parsed OS version: [major, minor, patch]

Attributes

Companion
object
Supertypes
trait Updatable[OsVersion]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object OsVersion extends GeneratedMessageCompanion[OsVersion]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[OsVersion]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
OsVersion.type
final case class PredictBidPriceRequest(payload: ByteString, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[PredictBidPriceRequest]

Attributes

Companion
object
Supertypes
trait Updatable[PredictBidPriceRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object PredictBidPriceRequest extends GeneratedMessageCompanion[PredictBidPriceRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[PredictBidPriceRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class PredictBidPriceResponse(payload: ByteString, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[PredictBidPriceResponse]

Attributes

Companion
object
Supertypes
trait Updatable[PredictBidPriceResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object PredictBidPriceResponse extends GeneratedMessageCompanion[PredictBidPriceResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[PredictBidPriceResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class PredictBidPriceTestRequest(payload: ByteString, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[PredictBidPriceTestRequest]

Attributes

Companion
object
Supertypes
trait Updatable[PredictBidPriceTestRequest]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object PredictBidPriceTestRequest extends GeneratedMessageCompanion[PredictBidPriceTestRequest]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[PredictBidPriceTestRequest]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class PredictBidPriceTestResponse(payload: ByteString, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[PredictBidPriceTestResponse]

Attributes

Companion
object
Supertypes
trait Updatable[PredictBidPriceTestResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object PredictBidPriceTestResponse extends GeneratedMessageCompanion[PredictBidPriceTestResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[PredictBidPriceTestResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
object PredictorProto extends GeneratedFileObject

Attributes

Supertypes
class GeneratedFileObject
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
final case class RandomWalkInterval(lowerBound: Double, upperBound: Double, stepSize: Double, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[RandomWalkInterval]

Interval for random walk margin exploration

Interval for random walk margin exploration

Attributes

Companion
object
Supertypes
trait Updatable[RandomWalkInterval]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object RandomWalkInterval extends GeneratedMessageCompanion[RandomWalkInterval]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[RandomWalkInterval]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class RejectionInfo(stage: String, reason: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[RejectionInfo]

Rejection reason for a single campaign, used in debug mode only.

Rejection reason for a single campaign, used in debug mode only.

Value parameters

reason

human-readable rejection reason

stage

filter stage, e.g. "2.7", "2.22"

Attributes

Companion
object
Supertypes
trait Updatable[RejectionInfo]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object RejectionInfo extends GeneratedMessageCompanion[RejectionInfo]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[RejectionInfo]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class SessionMetrics(depth: Option[SessionDepth], session: Option[Session], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[SessionMetrics]

Session Metrics Messages

Session Metrics Messages

NOTE: Some of the fields are commented out for efficiency, because they are unused by actual WinRate Model. See bidmachine_metrics.rs file in grpc/winrate crate for details

This Metrics definition is based on Scala io.bidmachine.schema.analytics.Metrics from common-schema module.

Scala Metrics case class is intentionally used as reference (instead of Session Metrics Service session_depth.proto) to simplify data conversion on Auction Service side and not to create dependency on Session Metrics Proto.

This proto, Auction Service Metrics case class and Session Metrics proto could be unified into single proto definition at some moment.

Attributes

Companion
object
Supertypes
trait Updatable[SessionMetrics]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object SessionMetrics extends GeneratedMessageCompanion[SessionMetrics]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[SessionMetrics]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
object SessionMetricsProto extends GeneratedFileObject

Attributes

Supertypes
class GeneratedFileObject
class Object
trait Matchable
class Any
Self type
final case class StringList(values: Seq[String], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[StringList]

Wrapper for repeated string values, used as map value type.

Wrapper for repeated string values, used as map value type.

Attributes

Companion
object
Supertypes
trait Updatable[StringList]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object StringList extends GeneratedMessageCompanion[StringList]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[StringList]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
StringList.type
final case class UnifiedSroFloorsResponse(bidders: Map[String, BidderFloorDecision], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[UnifiedSroFloorsResponse]

Predictor -> Auction service. One entry per pretargeted bidder, selected and skipped alike, so the auction service has a complete record for logging.

Predictor -> Auction service. One entry per pretargeted bidder, selected and skipped alike, so the auction service has a complete record for logging.

Attributes

Companion
object
Supertypes
trait Updatable[UnifiedSroFloorsResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object UnifiedSroFloorsResponse extends GeneratedMessageCompanion[UnifiedSroFloorsResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[UnifiedSroFloorsResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
object UserAcquisitionProto extends GeneratedFileObject

Attributes

Supertypes
class GeneratedFileObject
class Object
trait Matchable
class Any
Self type
final case class UserIdentity(uid: String, uidVirtual: Boolean, ifv: String, ipModelHash: String, unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[UserIdentity]

User identity resolved from the bid request device fields.

User identity resolved from the bid request device fields.

Value parameters

ifv

IFV (iOS Identifier for Vendor), from device.ext.ifv

ipModelHash

MD5(ip + device_make + device_model + os_version)

uid

primary ID: ifa → ifv → virt:MD5(ip+make+model+osv)

uidVirtual

true if uid is a fingerprint, not a real IFA/GAID

Attributes

Companion
object
Supertypes
trait Updatable[UserIdentity]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object UserIdentity extends GeneratedMessageCompanion[UserIdentity]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[UserIdentity]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type
final case class WinRateResponse(winProbability: Float, fee: Float, appliedBidShadingSettings: Option[AppliedBidShadingSettings], model: Option[ModelIdentity], unknownFields: UnknownFieldSet) extends GeneratedMessage, Updatable[WinRateResponse]

Attributes

Companion
object
Supertypes
trait Updatable[WinRateResponse]
trait GeneratedMessage
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object WinRateResponse extends GeneratedMessageCompanion[WinRateResponse]

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
trait GeneratedMessageCompanion[WinRateResponse]
trait Serializable
class Object
trait Matchable
class Any
Show all
Self type