Rule reference

Buyer adm requires a declared protocol version of at least 4.0.

openrtb.profile.bidswitch.markup_versionerrorBid response

Buyer adm requires a declared protocol version of at least 4.0.

What it means

Buyer adm requires a declared protocol version of at least 4.0. This check applies to the selected vendor contract and integration direction.

Why it matters

The declared profile checks the published partner contract alongside canonical OpenRTB. It does not verify runtime approval or account configuration.

How to fix it

Use the documented field type, value and representation at the reported path for this integration direction.

Example that trips it

{
  "id": "r",
  "seatbid": [
    {
      "seat": "buyer",
      "bid": [
        {
          "id": "b",
          "impid": "i",
          "price": 1.2,
          "burl": "http://buyer.example/bill?p=${AUCTION_PRICE}",
          "adomain": [
            "advertiser.example"
          ],
          "crid": "creative",
          "adm": "<div>Example</div>",
          "iurl": "https://buyer.example/preview"
        }
      ]
    }
  ],
  "ext": {
    "protocol": "3.0"
  }
}

Profile bidswitch, OpenRTB 2.6-202606. The fixture asserts openrtb.profile.bidswitch.markup_version at seatbid[0].bid[0].adm.

Check your payload

Paste a bid request or response into the tester to see whether this code fires against it, or gate on the id in CI with the CLI: the id is stable, wording is not.

Back to the full diagnostic code reference.