UNPKG

mk9-prebid

Version:

Header Bidding Management Library

452 lines (451 loc) 12 kB
{ "$schema": "http://json-schema.org/draft-06/schema#", "title": "Prebid Auctions", "description": "A batched data object describing the lifecycle of an auction or multiple auction across a single page view.", "type": "object", "required": [ "integration", "version" ], "anyOf": [ { "required": [ "auctions" ] }, { "required": [ "bidsWon" ] } ], "properties": { "integration": { "type": "string", "description": "Integration type that generated this event.", "default": "pbjs" }, "version": { "type": "string", "description": "Version of Prebid.js responsible for the auctions contained within." }, "fpkvs": { "type": "array", "description": "List of any dynamic key value pairs set by publisher.", "minItems": 1, "items": { "type": "object", "required": [ "key", "value" ], "properties": { "key": { "type": "string" }, "value": { "type": "string" } } } }, "session": { "type": "object", "description": "The session information for a given event", "required": [ "id", "start", "expires" ], "properties": { "id": { "type": "string", "description": "UUID of session." }, "start": { "type": "integer", "description": "Unix timestamp of time of creation for this session in milliseconds." }, "expires": { "type": "integer", "description": "Unix timestamp of the maximum allowed time in milliseconds of the session." }, "pvid": { "type": "string", "description": "id to track page view." } } }, "auctions": { "type": "array", "minItems": 1, "items": { "type": "object", "required": [ "adUnits", "samplingFactor" ], "properties": { "clientTimeoutMillis": { "type": "integer", "description": "Timeout given in client for given auction in milliseconds (if applicable)." }, "serverTimeoutMillis": { "type": "integer", "description": "Timeout configured for server adapter request in milliseconds (if applicable)." }, "accountId": { "type": "number", "description": "The account id for prebid server (if applicable)." }, "samplingFactor": { "$ref": "#/definitions/samplingFactor" }, "adUnits": { "type": "array", "minItems": 1, "items": { "type": "object", "description": "An array of adUnits involved in this auction.", "required": [ "status", "adUnitCode", "transactionId", "mediaTypes", "dimensions", "bids" ], "properties": { "status": { "type": "string", "description": "The status of the adUnit" }, "adUnitCode": { "type": "string", "description": "The adUnit.code identifier" }, "transactionId": { "type": "string", "description": "The UUID generated id to represent this adunit in this auction." }, "adSlot": { "type": "string" }, "mediaTypes": { "$ref": "#/definitions/mediaTypes" }, "videoAdFormat": { "$ref": "#/definitions/videoAdFormat" }, "dimensions": { "type": "array", "description": "All valid sizes included in this auction (note: may be sizeConfig filtered).", "minItems": 1, "items": { "$ref": "#/definitions/dimensions" } }, "adserverTargeting": { "$ref": "#/definitions/adserverTargeting" }, "bids": { "type": "array", "description": "An array that contains a combination of the bids from the adUnit combined with their responses.", "minItems": 1, "items": { "$ref": "#/definitions/bid" } }, "accountId": { "type": "number", "description": "The Rubicon AccountId associated with this adUnit - Removed if null" }, "siteId": { "type": "number", "description": "The Rubicon siteId associated with this adUnit - Removed if null" }, "zoneId": { "type": "number", "description": "The Rubicon zoneId associated with this adUnit - Removed if null" }, "gam": { "$ref": "#/definitions/gam" } } } } } } }, "bidsWon": { "type": "array", "minItems": 1, "items": { "allOf": [ { "$ref": "#/definitions/bid" }, { "required": [ "transactionId", "accountId", "samplingFactor", "mediaTypes", "adUnitCode", "bidwonStatus" ], "properties": { "transactionId": { "type": "string" }, "accountId": { "type": "number" }, "samplingFactor": { "$ref": "#/definitions/samplingFactor" }, "adUnitCode": { "type": "string" }, "videoAdFormat": { "$ref": "#/definitions/videoAdFormat" }, "mediaTypes": { "$ref": "#/definitions/mediaTypes" }, "adserverTargeting": { "$ref": "#/definitions/adserverTargeting" }, "bidwonStatus": { "description": "Whether the bid was successfully rendered or not", "type": "string", "enum": [ "success", "error" ] }, "siteId": { "type": "number", "description": "The Rubicon siteId associated with this adUnit - Removed if null" }, "zoneId": { "type": "number", "description": "The Rubicon zoneId associated with this adUnit - Removed if null" } } } ] } }, "wrapperName": { "type": "string" } }, "definitions": { "gam": { "type": "object", "description": "The gam information for a given ad unit", "required": [ "adSlot" ], "properties": { "adSlot": { "type": "string" }, "advertiserId": { "type": "integer" }, "creativeId": { "type": "integer" }, "LineItemId": { "type": "integer" }, "isSlotEmpty": { "type": "boolean", "enum": [true] } } }, "adserverTargeting": { "type": "object", "description": "The adserverTargeting key/value pairs", "patternProperties": { ".+": { "type": "string" } } }, "samplingFactor": { "type": "integer", "description": "An integer value representing the factor to multiply event count by to receive unsampled count.", "enum": [ 1, 10, 20, 40, 100 ] }, "videoAdFormat": { "type": "string", "description": "This value only provided for video specifies the ad format", "enum": [ "pre-roll", "interstitial", "outstream", "mid-roll", "post-roll", "vertical" ] }, "mediaTypes": { "type": "array", "uniqueItems": true, "minItems": 1, "items": { "type": "string", "enum": [ "native", "video", "banner" ] } }, "dimensions": { "type": "object", "description": "Size object representing the dimensions of creative in pixels.", "required": [ "width", "height" ], "properties": { "width": { "type": "integer", "minimum": 1 }, "height": { "type": "integer", "minimum": 1 } } }, "bid": { "type": "object", "required": [ "bidder", "bidId", "status", "source" ], "properties": { "bidder": { "type": "string" }, "bidId": { "type": "string", "description": "UUID representing this individual bid request in this auction." }, "params": { "description": "A copy of the bid.params from the adUnit.bids", "anyOf": [ { "type": "object" }, { "$ref": "#/definitions/params/rubicon" } ] }, "status": { "type": "string", "enum": [ "success", "no-bid", "error", "rejected-gdpr", "rejected-ipf" ] }, "error": { "type": "object", "required": [ "code" ], "properties": { "code": { "type": "string", "enum": [ "request-error", "connect-error", "timeout-error" ] }, "description": { "type": "string" } } }, "source": { "type": "string", "enum": [ "client", "server" ] }, "clientLatencyMillis": { "type": "integer", "description": "Latency from auction start to bid response recieved in milliseconds." }, "serverLatencyMillis": { "type": "integer", "description": "Latency returned by prebid server (response_time_ms)." }, "bidResponse": { "type": "object", "required": [ "mediaType", "bidPriceUSD" ], "properties": { "dimensions": { "$ref": "#/definitions/dimensions" }, "mediaType": { "type": "string", "enum": [ "native", "video", "banner" ] }, "bidPriceUSD": { "type": "number", "description": "The bid value denoted in USD" }, "dealId": { "type": "integer", "description": "The id associated with any potential deals" } } } } }, "params": { "rubicon": { "type": "object", "properties": { "accountId": { "type": "number" }, "siteId": { "type": "number" }, "zoneId": { "type": "number" } } } } } }