Pmp.deals

Array of Deal objects, one per deal the impression is available under. In OpenRTB 2.2 the entries were documented as Direct Deals objects; 2.3 renamed them Deal and kept the same fields.

Currentobject arrayOptionalSince 2.2

Field facts

Path
imp.pmp.deals
Object
Pmp
Type
object array
Requirement
Optional
Added
OpenRTB 2.2
Spec section
3.2.11

How it is used

Each entry carries its own floor, currency, auction type, and buyer restrictions, so one impression can sit in several deals with different terms at once.

Example

Where the field sits in a payload, with everything else left out:

{
  "id": "req-1",
  "imp": [
    {
      "pmp": {
        "deals": [
          {
            "id": "DEAL-2026-0142",
            "bidfloor": 12,
            "bidfloorcur": "USD",
            "at": 1,
            "wseat": [
              "seat-417"
            ]
          }
        ]
      }
    }
  ]
}

Common mistakes

  • Sending a single deal object instead of an array.
  • A bid whose Bid.dealid is not in this array. The validator warns with openrtb.bid.dealid_unknown, since deals arranged outside the request do exist.

Version history

Added in OpenRTB 2.2, and present in the latest snapshot. The table shows how each version's spec text types the field.

VersionsType in the specRequiredDeprecated
2.2array of objectsNoNo
2.3 to 2.3.1object arrayNoNo
2.4object arrayNoNo
2.5 to 2.6-202606object arrayNoNo

Versioned rules that name this field

Related fields

Other Pmp fields

For a walkthrough of the whole object, read Deals and PMP.