Rule reference

openrtb.type.mismatch

errorRequest or response

What it means

The value at this path has the wrong JSON type for the field: a quoted number where an integer belongs ("at": "1"), a boolean where the spec defines an integer flag ("secure": true), an object where an array is expected, and so on. One code covers every typed field in the catalog; the path tells you which field tripped it.

Why it matters

Typed consumers (Go structs, Java POJOs, protobuf bridges) fail to deserialize the whole payload over one wrong type, not just the one field. That silently removes every strictly-typed bidder from your auction, and those tend to be the largest ones.

How to fix it

Emit the type the catalog defines: JSON numbers for integers and floats, integer flags (0/1) rather than booleans, arrays where the field is plural. The usual root cause is a template or string-building serializer; construct payloads with a typed JSON library instead.

Example that trips it

{ "at": "1", "tmax": "120", "imp": [{ "id": "1", "secure": true }] }

Three type mismatches that each break strict parsers.

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.