Bidding Strategies

Buzz supports the ability to bid on impressions using flexible "bidding strategies" that are implemented into the Line Items. Each Line Item has a single bidding field, in which the bidding strategy, and all required parameters for that strategy, are defined. A list of existing strategies is here: List of Bidding Strategy Modules and Keys.

The format for the bidding field is as follows:

    "bidding_strategy": "<bidding_strategy_name>",
    "bid_shading": false,
    "values": {
        "<bidding_key1>": "<bidding_value1>",
        "<bidding_key2>": "<bidding_value2>"
    "custom": false

For example, if you want to set a static CPM bid of $1.21, use the "CPM" bidding strategy as follows:

    "bidding_strategy": "CPM",
    "values": {
        "cpm_bid": 1.21
    "bid_shading": true,
    "pacing": "lifetime",
    "custom": false

API Usage

Like Targeting or Creative Attributes, you can use the API to either validate bidding strategies with a POST, or get a list of fields for a bidding strategy, with a GET. The API endpoint for bidding strategies including the /bidding/ path is as follows:

curl -X POST -b cookies.txt [host]/rest/bidding/cpm -d '{"bidding_strategy":"CPM","bid_shading":false,"values":{"cpm_bid":1.21},"pacing":"none"}'

JSON Structure

The Bidding Strategy JSON has the following fields:


Example value




Keys are defined in the modules. For a list of modules and keys, see List of Bidding Strategy Modules and Keys.



Whether to apply an algorithm to reduce the bid based on historical price performance. This feature needs to be enabled for your account and for the specified bidding strategy. Fees may apply.



When bid_shading is set to true, this field determines how aggressive the Bid Shading algorithm should be. Valid values are MORE_AGGRESSIVE, NORMAL, and LESS_AGGRESSIVE with a default of NORMAL.



A value for the key. This can be an int, string, number, or array, depending on the key
Unlike Targeting or Creative Attributes, the value is not required to be in an array.



Used to indicate whether the bidding logic is on a Beeswax server or a custom algorithm. This field will generally be set automatically by the system and can be safely omitted.



If a bidding strategy can be paced, the pacing value can be set to daily, flight, or lifetime. If it cannot be paced, then it should be set to none. The flight type may only be used if the Line Item has Line Item Flights enabled and every flight includes a budget.