Rule reference

openrtb.envelope.missing

errorOpenRTB 3.0

What it means

A payload validated as OpenRTB 3.0 has no top-level openrtb envelope. 3.0 is a layered protocol: the envelope carries ver, domainspec, domainver, and the request or response. A 2.x-shaped payload sent to a 3.0 validator lands here, and the finding explains where each 2.x object moved.

Why it matters

3.0 is not an incremental upgrade of 2.6; objects were redistributed between the transport layer and AdCOM. A consumer expecting the envelope cannot read a 2.x document at all, so version negotiation between partners has failed somewhere upstream.

How to fix it

If you meant to speak 2.x, validate against a 2.x version; the payload is probably fine. If you are genuinely migrating to 3.0, wrap the transaction in the openrtb envelope and move context objects into AdCOM form per the migration guide.

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.