Skip to main content

OpenRTB Native

IAB Specs: OpenRTB API Specification Version 2.5 and OpenRTB Native Ads Specification Final 1.2

OpenRTB Native

OpenRTB Native is a part of the OpenRTB specification and focuses on native advertising. Native ads match the form and function of the user experience in which they are placed, rather than being displayed in predefined, separate spaces. This makes native ads feel like content that is part of the page on which they are displayed.

Examples of native ads are:
- Sponsored products on a retailer's website
- Text ads or video content embedded in a newspaper website within the articles
- Video, product ads, etc... interspersed in social media feeds

OpenRTB Native in Adhese

OpenRTB Native is supported as an advar template in the Adhese UI. It is crucial that the structure of the template follows the specification. 
In the Adhese backend, we check the ad body for the string{\"native\":{  to determine whether this is an OpenRTB Native ad type, to prevent some characters from being escaped, which would break the JSON structure.
In the preprocessor, we check for {"native":{ string to determine the ad native type.
The body is string-encoded JSON. As mentioned in the specifications, we plan to support direct object representation in a future implementation. 

Example of the advar template body openrtb_native.json

{\"native\":{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"img\":{\"w\":\"<ADHESE_WIDTH_LARGE>\",\"h\":\"<ADHESE_HEIGHT_LARGE>\",\"url\":\"<ADHESE_SWF_SRC_2ND>\"}}],\"link\":{\"url\":\"<DESTINATION_LINK>\"}}}

Example of openrtb_native.json.descr

{
  "files": [
    {
      "default": "",
      "doc": "The background and visual, width: 714px. - height: 224px., used for Web",
      "label": "Banner image",
      "key": "2nd"
    }
  ],
  "fields": [
    {
      "default": "",
      "doc": "Enter the destination link (click-through URL)",
      "label": "Destination Link",
      "type": "singleLineText",
      "key": "<DESTINATION_LINK>",
      "id": "DestinationLink"
    }
  ],
  "advar": "openrtb_native.json"
}