Deprecated OpenRTB field still in use
The field still parses but is deprecated in the selected version. Migrate to its replacement.
What it means
The field is deprecated in the version you validated against. It still parses, and older consumers still read it, but the specification has named a successor. The highest-traffic example is imp.video.placement, deprecated in 2.6-202303 in favor of imp.video.plcmt.
Why it matters
Buyers move their logic to the replacement field. Inventory that only declares the deprecated form gets classified by defaults, which in the placement case means instream inventory priced as undeclared. Deprecated fields are also removal candidates in future snapshots.
How to fix it
Populate the replacement field. During migration it is common to send both the old and new field with consistent values, then drop the deprecated one once your partners confirm they read the successor.
Example that trips it
{ "device": { "didsha1": "9f86d081884c7d65" } }Hashed hardware ids were deprecated across the 2.6 line. Send ifa, or an eid, and let the buyer resolve identity from there.
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.