Appearance
Current integration
OpenRTB 2.6
OpenRTB 2.6 is the recommended protocol version for new Nexus integrations. This guide is aligned with the current IAB Tech Lab 2.6-202606 maintenance release while retaining the Nexus-specific adm, billing, timeout, and supported-format rules described in Getting Started.
- Protocol header: x-openrtb-version: 2.6
- Reference release: OpenRTB 2.6-202606
- New integrations: 2.6 recommended
Living specification: Since 2.6, non-breaking fields and clarifications are published as dated releases. Parse unknown optional fields safely and pin the dated release used by your test fixtures.
Integration headers
bash
x-openrtb-version: 2.6
Content-Type: application/json; charset=utf-8
Content-Encoding: gzip # only when the body is compressed
Accept-Encoding: gzip # when a compressed response is acceptedImportant changes from 2.5
- Privacy: support the Global Privacy Platform fields
regs.gppandregs.gpp_sidwhen supplied. Existing GDPR/US privacy signals remain applicable. - Structured user-agent:
device.suamay carry structured browser and platform information. Continue accepting the legacydevice.uastring. - Extended identifiers: buyer-supported IDs may be supplied through
user.eids; every partner remains responsible for consent and applicable privacy rules. - Supply chain: consume the structured
source.schainobject when present. Do not confuse it with the textual payment-chainsource.pchainfield. - CTV and ad pods: 2.6 introduces additional video pod fields. Their use must be enabled during integration because inventory capabilities differ.
- DOOH and quantity:
doohandqtyobjects are optional and are accepted only for integrations configured for Digital Out-of-Home inventory. - AdCOM enumerations: use the current IAB Tech Lab AdCOM lists instead of assuming that old numeric lists are frozen.
2.5 to 2.6 migration checklist
| Legacy pattern | OpenRTB 2.6 pattern | Integration action |
|---|---|---|
regs.ext.gdpr | regs.gdpr, regs.gpp, regs.gpp_sid | Read privacy signals from their standard fields and apply them before using IDs. |
device.ua only | device.sua plus optional device.ua | Prefer the structured user-agent object when both are present. |
banner.wmin/wmax/hmin/hmax | banner.format[] | Match one advertised format and return the exact creative w/h. |
video.protocol | video.protocols[] | The singular request field was removed; use the supported protocol array. |
video.placement | video.plcmt | Use the current AdCOM placement subtype; placement is deprecated. |
video.sequence | video.slotinpod | Use pod fields only when the integration supports pod bidding. |
bid.api | bid.apis[] | Return every API framework required by the creative as an array. |
| Hashed device IDs and user demographics | Consent-aware user.eids and permitted device signals | Do not depend on deprecated didmd5, didsha1, yob, or gender. |
Duration rule:
video.rqddursis mutually exclusive withminduration/maxduration. A request must use one model or the other, never both.
Latest dated-release additions
The 2.6-202606 release adds content.realtime and content.firstbroadcast and documents new discount substitution macros. Treat these as optional until they are enabled in the individual Nexus integration.
Forward compatibility: Unknown optional fields and extension objects must be ignored safely. Do not reject an otherwise valid request only because it contains a newer optional 2.6 field.