Native Request Object

Note

Fields marked with asterisk (*) are optional.

Native Request Object

Value

Type

Description

ver*

string

Version of the Native Markup in use, for example, "1"

layout*

integer

The Layout ID of the native ad unit as described in OpenRTB Native specification, for example, 3

adunit*

integer

The Ad unit ID of the native ad unit as described in OpenRTB Native specification.

plcmttype*

integer

The design/format/layout of the ad unit being offered. See the Native Placement Type for a list of supported placement types

plcmtcnt*

integer

The number of identical placements in this Layout, for example, 1

seq*

integer

0 for the first ad, 1 for the second ad, and so on. This is not the sequence number of the content in the stream.

assets

array of objects

An array of Asset Objects. Any bid must comply with this array of elements. See the Native Asset Object section for more details.

privacy*

integer

Set to 1 when the native ad supports buyer-specific privacy notices. Set to 0 (or leave absent) when the native ad does not support custom privacy links or if support is unknown.

context*

integer

The context in which the ad appears. See Context Type Description

contextsubtype*

integer

A more detailed context in which the ad appears. See Context SubType ID Description

eventtrackers*

array of objects

Specifies what type of event tracking is supported, see Event Tracker Request Object

Native Asset Object

Native Asset Object Properties

Value

Type

Description

id

integer

Unique asset id, for example 2

required*

integer

Set to 1 if asset is required (exchange will not accept a bid without it), default is 0.

title **

object

Native title object, see the Native Asset Title Object for more details.

img **

object

Native image object, see the Native Asset Image Object for more details.

video **

object

Native video object, see the Native Asset Video Object for more details.

data **

object

Native asset data object, see the Native Asset Data Object section for more details.

Note

(**) There may be exactly one of the fields marked with double asterisk in one asset object.

Native Asset Title Object

Native Asset Title Object

Value

Type

Description

len

integer

Maximum length of the text in the title element, for example, 30

Native Asset Image Object

The image asset object may contain the exact image size, the minimum image size, or both. If the exact image size (w/h) or the minimum image size (wmin/hmin) is specified in the bid request, then the image asset in the bid response should specify the values.

  • The size of the image should be equal to or larger than the minimum specified

  • The image asset in the bid response should contain the w and h fields, see the Native Assets Image Object.

Native Asset Image Object

Value

Type

Description

type*

integer

Image asset type, for example 3. Takes the following values:

  • 1 Icon

  • 2 Logo (Logo image for the brand/app)

  • 3 Main (Large image preview for the ad)

w*

integer

Width of the image in pixels, for example, 300

wmin*

integer

The minimum requested width of the image in pixels, for example, 100

h*

integer

Height of the image in pixels, for example, 250

hmin*

integer

The minimum requested height of the image in pixels, for example, 100

mimes*

array of strings

Whitelist of content MIME types supported, for example, ["image/gif"] If blank, assume all types are allowed.

Native Asset Video Object

Native Asset Video Object

Value

Type

Description

mimes

array of strings

Content MIME types supported, for example, ["video/mpeg", "video/mp4"]

minduration

integer

Minimum video ad duration in seconds, for example, 2

maxduration

integer

Maximum video ad duration in seconds, for example 15

protocols

array of integers

Accepted video bid response protocols as defined in OpenRTB, for example, [2,5]

ext*

object

Native Asset Video Object Extension

Native Asset Video Object Extension

Native Asset Video Object Extension Properties

Value

Type

Description

playbackmethod*

array of integers

Allowed playback methods as defined in the OpenRTB, for example [1, 2]. If none are specified, it is assumed all are allowed.

Native Asset Data Object

Native Asset Data Object

Value

Type

Description

type

integer

Data asset type as described in OpenRTB Native specification, for example, 1

len*

integer

Maximum length of the text in the element’s response, for example, 25

Native Placement Type

Native Placement Type Options

Value

Description

1

In the feed of content, for example as an item inside the organic feed/grid/listing/carousel.

2

In the atomic unit of the content, i.e. in the article page or single image page

3

Outside the core content, for example in the ads section on the right rail, as a banner-style placement near the content, etc.

4

Recommendation widget, most commonly presented below the article content.

500+

To be defined by the exchange

Context Type Description

Context Options

Value

Description

1

Content-centric context such as newsfeed, article, image gallery, video gallery, or similar

2

Social-centric context such as social network feed, email, chat, or similar

3

Product context such as product listings, details, recommendations, reviews, or similar

500+

To be defined by the exchange

Context SubType ID Description

Subtype Options

Value

Description

10

General or mixed content

11

Primarily article content (which of course could include images, etc as part of the article)

12

Primarily video content

13

Primarily audio content

14

Primarily image content

15

User-generated content, e.g. forums, comments, etc

20

General social content such as a general social network

21

Primarily email content

22

Primarily chat/IM content

30

Content focused on selling products, whether digital or physical

31

Application store/marketplace

32

Product reviews site primarily (which may sell product secondarily)

500+

To be defined by the exchange

Event Tracker Request Object

Event Tracker Request Object

Value

Type

Description

event

integer

Type of event available for tracking. See the Event Tracking Types

methods

array of integers

Array of the types of tracking available for the given event. See the Event Tracking Methods table

ext*

object

This object is a placeholder that may contain custom JSON agreed to by the parties to support flexibility beyond the standard defined in this specification

Event Tracking Types

Event Tracking Types

Value

Type

Description

1

Impression

Impression

2

viewable-mrc50

Visible impression using MRC definition at 50% in view for 1 second.

3

viewable-mrc100

Visible impression using MRC definition at 100% in view for 1 second, i.e. GroupM standard

4

viewable-video50

Visible impression for video using MRC definition at 50% in view for 2 seconds.

500+

exchange specific

Event Tracking Methods

Event Tracking Methods

Value

Type

Description

1

img

Image-pixel tracking – The URL provided in the response will be inserted as a 1x1 pixel at the time of the event.

2

js

Javascript-based tracking – The URL provided in the response will be inserted as a js tag at the time of the event.

500+

exchange specific

Could include custom measurement companies such as Moat, DoubleVerify, IAS, etc – in this case additional elements will often be passed.

Native Request Object Example

{
   "native":{
      "request":{
         "plcmtcnt":1,
         "plcmttype":2,
         "privacy":1,
         "context":1,
         "contextsubtype":12,
         "eventtrackers":[
            {
               "event":1,
               "methods":[
                  1,
                  2
               ]
            },
            {
               "event":2,
               "methods":[
                  1
               ]
            }
         ],
         "assets":[
            {
               "id":1,
               "data":{
                  "type":12
               },
               "required":1
            },
            {
               "title":{
                  "len":50
               },
               "id":2,
               "required":1
            },
            {
               "id":3,
               "img":{
                  "w":80,
                  "h":80,
                  "type":1
               },
               "required":1
            },
            {
               "id":4,
               "img":{
                  "w":1200,
                  "h":627,
                  "type":3
               },
               "required":1
            },
            {
               "data":{
                  "type":3
               },
               "id":5,
               "required":0
            },
            {
               "id":6,
               "data":{
                  "len":100,
                  "type":2
               },
               "required":1
            },
            {
               "id":7,
               "video":{
                  "mimes":[
                     "video/mpeg",
                     "video/mp4"
                  ],
                  "minduration":2,
                  "protocols":[
                     2,
                     5
                  ],
                  "maxduration":2,
                  "ext":{
                     "playbackmethod":[
                        1,
                        2
                     ]
                  }
               },
               "required":1
            }
         ],
         "ver":"1.2"
      }
   }
}