monetization-server-to-server-api-integration-guides | API 3.1 Server to Server Integration Guidelines

Introduction

The InMobi Server to Server Ad Request API spec allows publishers to integrate with InMobi directly from their server. This document lays out the Ad request, response structures and the parameters included in each of them to enable publishers to integrate with InMobi.

API Versioning & End Point

The new version of the API spec is designated version 3.1. Consequently, the Ad Request URL must reflect the version. It then becomes:

HTTP End Point: http://api.w.inmobi.com/showad/v3.1
HTTPS End Point: https://api.w.inmobi.com/showad/v3.1

Request Method

Ad requests must be sent using the HTTP Post method. All request parameters must be sent within a JSON object within the POST body.

Integrating with the API

HTTP Headers

InMobi expects all HTTP headers including x-headers to be sent as a part of the request. For all forwarded headers (x-headers), InMobi expects the original values received from the user’s device.

Header Name

Type

Description

Values

Content-Type

Mandatory/Optional

The MIME type of the body of the request.

application/json

Request Object

The top-level ad request object contains the entire JSON payload with the request. This object is expected to contain, at a minimum, the following:

  • The imp object defining the request ad impressions properties
  • The site or app object containing the unique placement ID
  • The device object containing the client IP address and user agent information

The child objects and parameters under the Request object are described in the following table:

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

imp

object

request

Mandatory

Impression object. Contains details about the ad request.

site

object

request

Mandatory

Details about the publisher’s mobile website. Only applicable for mobile websites.

app

object

request

Mandatory

Details about the publisher’s mobile app. Only applicable for mobile apps.

device

object

request

Mandatory

Details about the user’s device to which the impression will be delivered.

user

object

request

Recommended

Details about the user of the device; the advertising audience.

ext

object

request

Mandatory

Extensions to the request object for sending publisher specific data.

responseformat

string

request.ext

Mandatory

json - For all ads

pchain

string

request.ext

Recommended

Payment id details for TAG compliance.

Impression (imp) Object

The imp object defines the type and number of ad impressions desired by the publisher. This is a mandatory object in the ad request and must contain one or more of the parameters dsiescribed in the table below.

iOS 9 and App Transport Security (ATS)

To receive secure ads on devices running iOS 9 and later, add the secure parameter to the impression request. This is especially important if you need secure responses. If this parameter is not present, InMobi will interpret it as a request for an unsecured ad.

For details on the other changes in iOS 9, please read our blog.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

banner

object

imp

Recommended

A Banner object; required if this impression is offered as a banner or interstitial ad opportunity.

native

object

imp

Recommended

A Native object; required if a native ad response is desired.

displaymanager

string

imp

Recommended

Name of ad mediation partner, SDK technology or player responsible for rendering the Ad (typically mobile).

displaymanagerver

string

imp

Recommended

Version of ad mediation partner, SDK technology or player responsible for rendering the Ad (typically mobile).

secure

integer

imp

Recommended

Flag to indicate if the impression requires secure HTTPS URL creative assets and markup, where 0 = non-secure, 1 = secure.

If omitted, non-secure HTTP response is assumed.

ext

object

imp

Recommended

Extensions to the impression object.

ads

integer

imp.ext

Recommended

Number of ads in the response. The maximum allowed value is 10 but the recommended value is 1.

trackertype

string

imp

Recommended

“url_ping”, indicates NoJS ad,
Native Ads
“webview”, indicates JS ad. Rest of the adformats

pmp

object

request

Mandatory for PDB deal

Details about PMP deal

For Banner Integration - Banner (imp.banner) Object

The Banner object is used to request for a banner ad. This object is used to specify the banner impression type required. This is a Recommended field and must not be sent if the native object is part of the request.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

w

integer

banner

Mandatory

Width of the impression in pixels.

h

integer

banner

Mandatory

Height of the impression in pixels.

api

integer array

banner

Recommended

1 if MRAID 1.0 is supported

2 if MRAID 2.0 is supported

ext

object

banner

Recommended

Extension object within the banner object to transmit parameters which are outside the spec

For Interstitial Integration - Banner (imp.banner) Object

The Banner object is used to request for an interstitial ad. This object is used to specify the banner impression type required. This is a Recommended field and must not be sent if the native object is part of the request. Please ensure that you use a separate placement id for interstitial integration in case you are integrating both banner and interstitial in your app.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

w

integer

banner

Mandatory

Width of the impression in pixels.

h

integer

banner

Mandatory

Height of the impression in pixels.

api

integer array

banner

Recommended

1 if MRAID 1.0 is supported

2 if MRAID 2.0 is supported

ext

object

banner

Recommended

Extension object within the banner object to transmit parameters which are outside the spec

For Native Integration - Native (imp.native) Object

The Native object is used to request for a Native ad. This object is used to indicate native ad specification of the response structure required. This is a Recommended field and must not be sent if the banner object is part of the request.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

layout

integer

native

Recommended

The Layout ID of the native ad unit. This field must be one of the following:

1 Paid Search Units

2 Recommendation Widgets

3 Promoted Listings

4 In-Ad (IAB Standard) with Native Element Units

5 Custom

ext

object

native

Recommended

Extension object within the native object to transmit parameters which are outside the spec.

screenWidth

integer

ext

Conditional Mandatory

Native object is also used for requesting inline banner ads. When request is made for inline banner ads (with placement id for inline banner), screenWidth field should be mandatory, set to slot width.

Site Object

This object should be included if the publisher’s property is a mobile website and not a mobile app. A request must not contain both a Site and an App object.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

id

string

site

Mandatory

InMobi Placement ID for the ad placement under the given property

name

string

site

Recommended

Site name

domain

string

site

Recommended

Domain of the site

page

string

site

Recommended

URL of the page where the ad will be shown

ref

string

site

Recommended

Referrer URL that caused navigation to the current page.

cat

string array

site

Recommended

Array of IAB content categories of the app.

Please refer to the Appendix for a full list of allowed categories.

keywords

string

site

Recommended

Comma separated list of keywords about the site.

ext

object

site

Recommended

Extension object within the site object to transmit parameters which are outside the spec

reftag

string

site.ext

Recommended

Reference Tag for the ad request. The value of this parameter should be a string by which Reporting/Performance Metrics groupings are needed by the publisher.

For example, reftag=login can be used to group Reporting / Performance metrics based on advertisements served on a login page, only.

Notes:

  • Reftag parent object is site. Please pass the reftag in the following way:
    Example
    "site":
    {"id":
    "caeb5f745b85499da8c09bcb4c571206","reftag":" watchopnow.com"
    }
  • If you are sending app traffic through reftag, then pass the bundle ID (playstore or itunes) of the app via reftag. (We will update you actionable points on non-playstore and non-iOS apps shortly).reftag=”<package name> "
  • Example:

    • iOS, reftag=”com.test.inmobi”
    • Android, reftag= “com.test.inmobi”

App Object

This object should be included if the publisher’s property is a mobile app and not a mobile website. A request must not contain both a Site and an App object.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

id

string

app

Mandatory

InMobi Placement ID for the ad placement under the given property.

name

string

app

Recommended

App name

bundle

string

app

Recommended

Application bundle or package name as provided in the Apple App Store or Google Play Store.

domain

string

app

Recommended

Domain of the app.

storeurl

string

app

Recommended

App store URL for an installed app.

cat

string array

app

Recommended

Array of IAB content categories of the app.

Please refer to the Appendix for a full list of allowed categories.

ver

string

app

Recommended

Application version.

paid

integer

app

Recommended

Indicates if it is a free or a paid app. The value must be one of:

0 if the app is free

1 if the app is a paid app

keywords

string

app

Recommended

Comma separated list of keywords about the app.

ext

object

app

Optional

Extension object within the app object to transmit parameters which are outside the spec

reftag

string

app.ext

Optional

Reference Tag for the ad request. The value of this parameter should be a string by which Reporting/Performance Metrics groupings are needed by the publisher.

For example, reftag=login can be used to group Reporting / Performance metrics based on advertisements served on a login page, only

Device Object

This object provides information pertaining to the device through which the user is interacting. Device information includes its hardware, platform, location, and carrier data. This is a mandatory object in the request and must contain all mandatory parameters listed in the following table.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

ua

string

device

Mandatory

User Agent of the device. This must be the original user agent without any modifications.

geo

object

device

Recommended

Location of the device assumed to be the user’s current location defined by a Geo object.

lmt

integer

device

Mandatory with IDFA or GPID

Limit Ad Tracking setting of the device. The value should be:

Android:

1 If the user has turned ON “Opt out of interests-based ads”

0 If the user has turned OFF “Opt out of interests-based ads”

iOS:

1 If the user has turned ON “Limit Ad Tracking” switch on the device

0 If the user has turned OFF “Limit Ad Tracking” switch on the device

If absent, a value of 0 is assumed.

ip

string

device

Mandatory

IP Address of the device in IPv4 format. Required if the ipv6 field is absent.

ipv6

string

device

Mandatory

IP address of the device in IPV6 format. Required if the ip field is absent.

make

string

device

Recommended

Device Make.

model

string

device

Recommended

Model name of the device.

os

string

device

Recommended

Name of the Operating System currently installed on the device.

osv

string

device

Recommended

Version of the Operating System currently installed on the device.

hwv

string

device

Recommended

Hardware version of the device.

h

integer

device

Recommended

Height of the device screen in pixels.

w

integer

device

Recommended

Width of the device screen in pixels.

ppi

integer

device

Recommended

Pixels per inch of the device screen.

pxratio

float

device

Recommended

The ratio of physical pixels to device independent pixels.

language

string

device

Recommended

Browser language using ISO-639-1-alpha-2.

carrier

string

device

Recommended

Name of the carrier to which the device is currently connected.

connectiontype

integer

device

Recommended

1 if Ethernet

2 if WIFI

3 if CELLULAR UNKNOWN

4 if 2G

5 if 3G

6 if 4G

ifa

string

device

Conditionally mandatory

Identifiers for Advertisers on the iOS platform. Mandatory if the app object is present in the request. If app object is present but request does not contain ifa (for iOS only) the request will be invalidated.

idv

string

device

Recommended

Identifier for vendors (on iOS).

gpid

String

device

Conditionally mandatory

Google Advertising ID on Android (Where available). Mandatory if the app object is present in the request. If app object is present but request does not contain GPID OR O1 (for Android only) the request must be invalidated.

o1

String

device

Conditionally mandatory

ODIN1 value for the device. This is an alternative to GPID. O1 is the SHA1 hashed value of the Android_ID of the device.

iuds1

String

device

Recommended

UDID of the device hashed using SHA1 (SHA1 checksum of UDID). Only applicable for devices below iOS 6.

um5

String

device

Recommended

Android: MD5 of Android_ID

iOS: UDID of the device hashed using MD5 (MD5 checksum of UDID). Only applicable for devices below iOS 6.

ext

object

device

Optional

Extension object within the device object to transmit parameters which are outside the spec.

orientation

integer

device.ext

Recommended

Device orientation used for serving ads with the most optimal orientation and user experience. The value to be sent based on the orientation of the device are as follows:

1 for portrait

2 for reverse portrait

3 for landscape

4 for reverse landscape

wc

String

device.ext

Recommended

Web cookie. For Mobile Web only.

sid

String

device.ext

Recommended

For Mobile Web only.

lid

String

device.ext

Recommended

For Mobile Web only.

locale

String

device.ext

Recommended

Indicates the Locale preference set on the device.

Note: Ensure that the orientation parameter in the ad request is dynamically passed based on the actual orientation of the user’s device. This is to ensure that orientation of the ad displayed on your site matches the orientation of the user’s device.

Geo (device.geo) Object

This object encapsulates various methods for specifying a geographic location of the device. This information is highly recommended as geo-enriched requests typically result in higher value ads. InMobi recommends sending fresh values for the user’s location to ensure the most locally relevant ads are served.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

lat

float

geo

Recommended

Latitude of the device based on the GPS location.

lon

float

geo

Recommended

Longitude of the device based on the GPS location.

accu

float

geo

Recommended

Accuracy of the latitude and longitude of the device as indicated by the device GPS.

type

Integer

geo

Recommended

The type field will indicate if the lat, lon fields populated in the request is the actual lat lon or lat-lon derived from the IP address by the publisher.

1 if GPS/Location Services

2 if IP Address

city

String

geo

Recommended

City of the user.

country

String

geo

Recommended

Country code using ISO-3166-1-alpha-3.

zip

String

geo

Recommended

Zip code of the user.

ext

object

geo

Optional

Extension object within the geo object to transmit parameters which are outside the spec.

ts

long

geo.ext

Recommended

Timestamp of the location query from the device in milliseconds.

cbssid

string

geo.ext

Recommended

Mac Address of the Connected WiFi access point.

cct

object

geo.ext

Recommended

Connected cell tower information

vct

object array

geo.ext

Recommended

Visible cell towers information.

User Object

This object contains information (User Demographics) known or derived about the human user of the device (that is the audience for advertising). This information allows finer targeting resulting in better monetization for publishers.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

yob

integer

user

Recommended

Year of birth of the user.

gender

string

user

Recommended

The user’s gender:

Must be one of

m for Male

f for Female

keywords

string

user

Recommended

Comma separated list of keywords, interests, or intent.

ext

object

user

Recommended

Extension object within the user object to transmit parameters which are outside the spec.

education

String

user.ext

Recommended

Education level of the user.

Possible values: highschoolorless, collegeorgraduate, postgraduateorabove

language

String

user.ext

Recommended

Content language using ISO-639-1-alpha-2.

interests

String

user.ext

Recommended

Comma separated list of user’s interests.

age

Integer

user.ext

Recommended

Age of the user in years. This must be a non-negative, non-zero value.

consent

String

user.ext

Recommended

User consent when GDPR regulations are in effect.

Deviation from the following set of values, 0/false = No and 1/true = Yes, indicates an unknown entity.

Regs Object

This object contains any legal, governmental, or industry regulations that apply to the request. The coppa flag signals whether or not the request falls under the United States Federal Trade Commission’s regulations for the United States Children’s Online Privacy Protection Act (“COPPA”).

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

coppa

integer

regs

Recommended

Flag indicating if this request is subject to the COPPA regulations established by the USA FTC, where 0 = no, 1 = yes.

ext

object

regs

Optional

Extension object within the regs object to transmit parameters which are outside the spec.

gdpr

string

regs.ext

Optional

Confirmation if the request is subject to GDPR regulations.

Deviation from the following set of values, 0 = No and 1 = Yes, indicates an unknown entity.

Private Marketplace (imp.pmp) Object

The pmp object has been specifically defined for Programmatic Direct Buying (PDB) deals. The object is expected to contain at a minimum, the following details:

  • Private auction object defining the auction type
  • Deal object containing the deal id in it

Sample:

"pmp" : {
			"private_auction" : 1,
			"deals" : [{"id":"dummyid"}
			]
	     },
		

Object / Parameter

Type

Parent Object

Mandatory/Recommended

Description

private_auction

integer

pmp

Mandatory for PDB deal

The value should be 1 to indicate it is a private auction

deal

list

pmp

Mandatory for PDB deal

Contain the deal details (id/auctiontype/bidlfoor)

Deal (deal) Object [Parent: pmp]

The deal object under pmp is used to define the deal id, auction deal type and the bid floor.

Object / Parameter

Type

Parent Object

Mandatory / Recommended

Description

id

string

deal

Mandatory for PDB deal

Contain the deal ID

at

integer

deal

Recommended for PDB deal

Auction Type as per opec rtb spec

bidfloor

float

deal

Recommended for PDB deal

Ad Request Response Samples

Sample Ad Requests

This section provides sample Ad requests for the different Ad Experiences supported by InMobi. The POST body structure provided below can be viewed when the ad request is captured using a network packet capture tool like Charles, or Wireshark, for example.

Interstitial Ads

{
"app":{
"id":"<Placement ID>", //Please replace the value with the placement id value
"bundle":"com.midasplayer.apps.candycrushsaga",
"name":"candy crush",
"domain":"king.com",
"storeurl":"https://itunes.apple.com/in/app/candy-crush-saga/id553834731?mt=8",
"cat":[
"Humor",
"Gaming"
],
"ver":"2.0",
"paid":0,
"keywords":"game, casual",
"ext": {
"reftag":"login"
}
},
"imp":{
"banner":{
"w":320,
"h":480,
"api":[
1,
2
]
},
"secure":0,
"ext": {
"ads":1
},
"displaymanager":"mopub",
"displaymanagerver":"2.0"
},
"device":{
"ifa":"FC0F3445-0FCE-40EE-8646-3CA8BB2663EA",
"ua":"Mozilla/5.0 (iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12D436 Safari/600.1.4",
"ip":"3.0.119.0",
"lmt":0,
"make":"Apple inc",
"model":"iphone 6",
"os":"iOS",
"osv":"8.0",
"hwv":"2.0",
"language":"en",
"carrier":"AT&T",
"connectiontype":2,
"geo":{
"lat":40.7127,
"lon":74.0059,
"accu":1.0,
"type":2
}
},
"ext":{
"responseformat":"json"
},
"user":{
    "yob":1990,
    "gender":"m",
    "keywords":"gamer",
    "ext":{
        "education":"collegeorgraduate",
        "language":"en",
        "interests":"gaming",
        "age":25,
        "consent": 0
    }
},
"regs":{
     "coppa":0,
      "ext": {
            "gdpr": 0
      }
}
		

Banner Ads

{
    "app":{
        "id":"<Placement ID>", //Please replace the value with the placement id value
        "bundle":"com.midasplayer.apps.candycrushsaga",
        "name":"candy crush",
        "domain":"gaming",
        "storeurl":"https://itunes.apple.com/in/app/candy-crush-saga/id553834731?mt=8",
        "cat":[
            "Humor",
            "Gaming"
        ],
        "ver":"2.0",
        "paid":0,
        "keywords":"casual, game",
	  "ext": {
       "reftag":"login"
  }
    },
    "imp":{
        "banner":{
            "w":320,
            "h":48,
            "api":[
                1,
                2
            ]
        },
        "secure":0,
	  "ext": {
       "ads":1
  },
        "displaymanager":"mopub",
        "displaymanagerver":"2.0"
    },
    "device":{
        "ifa":"FC0F3445-0FCE-40EE-8646-3CA8BB2663EA",
        "ua":"Mozilla/5.0 (iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12D436 Safari/600.1.4",
        "ip":"3.0.119.0",
        "lmt":0,
        "make":"Apple inc",
        "model":"iphone 6",
        "os":"iOS",
        "osv":"8.0",
        "hwv":"2.0",
        "language":"en",
        "carrier":"AT&T",
        "connectiontype":2,
        "geo":{
            "lat":40.7127,
            "lon":74.0059,
            "accu":1.0,
            "type":2
        }
    },
    "ext":{
        "responseformat":"json"
    },
"user":{
    "yob":1990,
    "gender":"m",
    "keywords":"gamer",
    "ext":{
        "education":"collegeorgraduate",
        "language":"en",
        "interests":"gaming",
        "age":25,
        "consent": 0
    }
},
"regs":{
     "coppa":0,
      "ext": {
            "gdpr": 0
      }
}
		

Native Ads

{
"app":{
"id":"<Placement ID>", //Please replace the value with the placement id value
"bundle":"com.midasplayer.apps.candycrushsaga",
"name":"candy crush",
"domain":"king.com",
"storeurl":"https://itunes.apple.com/in/app/candy-crush-saga/id553834731?mt=8",
"cat":[
"Humor",
"Gaming"
],
"ver":"2.0",
"paid":0,
"keywords":"casual,game",
"ext": {
"reftag":"login"
}
},
"imp":{
"native":{
"layout":2
},
"secure":0,
"trackertype":"url_ping",
"ext": {
"ads":1
},
"displaymanager":"mopub",
"displaymanagerver":"2.0"
},
"device":{
"ifa":"FC0F3445-0FCE-40EE-8646-3CA8BB2663EA",
"ua":"Mozilla/5.0 (iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12D436 Safari/600.1.4",
"ip":"3.0.119.0",
"lmt":0,
"make":"Apple inc",
"model":"iphone 6",
"os":"iOS",
"osv":"8.0",
"hwv":"2.0",
"language":"en",
"carrier":"AT&T",
"connectiontype":2,
"geo":{
"lat":40.7127,
"lon":74.0059,
"accu":1.0,
"type":2
}
},
"ext":{
"responseformat":"json"
},
"user":{
    "yob":1990,
    "gender":"m",
    "keywords":"gamer",
    "ext":{
        "education":"collegeorgraduate",
        "language":"en",
        "interests":"gaming",
        "age":25,
        "consent": 0
    }
},
"regs":{
     "coppa":0,
      "ext": {
            "gdpr": 0
      }
}
		

Native Example:

curl api.w.inmobi.com/showad/v3 -d 
'{"app":{"id":"1452884093377","bundle":"com.midasplayer.apps.candycrushsaga"},"imp":{"native":{"layout":2}, 
"secure":0,
"trackertype":"url_ping"},"device":{"ifa":"FC0F3445-0FCE-40EE-8646-3CA8BB2663EA","ua":"Mozilla/5.0
(iPhone; CPU iPhone OS 8_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0
Mobile/12D436 Safari/600.1.4","ip":"3.0.119.0"},"ext":{"responseformat":"json"}}' -H 'Content-Type: 
application/json'
		

Note: Site, device, and user information should be dynamically passed based on the user’s device and never hardcoded.

Ad Response Templates

The InMobi Ad Server responses are delivered as a UTF-8 encoded payload with JSON format. The JSON object is Base64 encoded for error free transmission and must be decoded prior to rendering the ad.

The InMobi JSON responses follow the structure shown here:

  • The root element is ads array object containing one or more ads.
  • For non-native ads, each ad element contains the pubContent object which is a render-ready HTML snippet. This HTML must be executed as is and must not be parsed. Typically, the HTML snippet is expected to be injected within a webview to display the ad.
  • For native ads, the pubContent contains a list of assets as defined by the publisher in the InMobi CI. To display a native ad, please see the Integrating Native Ads section of this guide.

JSON Response Templates

This section shows templates of JSON responses. For Banner and Interstitial ads, you must extract the value of the pubContent object and render the same in a webview. For Native ads, please see the Integrating Native Ads section of this guide.

Fill Responses

Banner Ads

{
"ads":[
{
"pubContent":"plain text"
"adtype": " ",
"width": ,
"height": ,
"lp": ,
},
{
"pubContent": "plain text"
"adtype": " ",
"width": ,
"height": ,
"lp": , 
}
.
.
.
],
"requestId":""
}
		

Sample Response:

 { "ads": [  {"pubContent":"<div style=\"display:none; position:absolute;\" id=\"im_6640_clickTarget\"></div> <script type=\"text/javascript\"> (function() {var e=window,f=encodeURIComponent,h=document,k='appendChild',l='setAttribute',p='createElement',q='',r='&',s='0',t='2',u='=',v='?m=',w='Events',x='_blank',y='a',z='click',A='clickCallback',B='clickTarget',C='error',D='event',E='function',F='height',G='href',H='iatSendClick',I='iframe',J='img',K='impressionCallback',L='onclick',M='openLandingPage',N='recordEvent',O='seamless',P='src',Q='target',R='width';e.inmobi=e.inmobi||{};var S=e.inmobi;S.d=S.d||[]; S.c=function(a,b){for(var c=S.d,d=0;d<c.length;d++)c[d].call(this,a,b)};S.recordEvent=S.c; function T(a){function b(a,b){c.c(a,b)}this.j=a.lp;this.k=a.lps;this.b=a.ct;this.f=a.tc;this.h=a.bcu;this.a=a.ns;this.l=a.ws;this.g=a.sc;a=this.a;var c=this;e[a+M]=function(){var a=T.e(c.j),b=e.mraid;'undefined'!==typeof b&&'undefined'!==typeof b.openExternal?b.openExternal(a):(a=T.e(c.k),b=h[p](y),b[l](Q,x),b[l](G,a),h.body[k](b),T.i(b))};e[a+A]=function(a){U(c,a)};e[a+K]=function(){V(c)};e[a+N]=b;this.g&&S.d.push(b)}S.Bolt=T; T.i=function(a){if(typeof a.click==E)a.click.call(a);else if(a.fireEvent)a.fireEvent(L);else if(a.dispatchEvent){var b=h.createEvent(w);b.initEvent(z,!1,!0);a.dispatchEvent(b)}};T.e=function(a){return a.replace(/\\$TS/g,q+(new Date).getTime())};function W(a,b){var c=h.getElementById(a.a+B),d=h[p](I);d[l](P,b);d[l](O,O);d[l](F,s);d[l](R,t);c[k](d)} function U(a,b){var c=e[a.a+H];c&&c();if(null!=a.b)for(var c=a.b.length,d=0;d<c;d++)W(a,T.e(a.b[d]));a.l&&(b=b||eval(D),'undefined'!==typeof b&&(c=void 0!=b.touches?b.touches[0]:b,e.external.notify(JSON.stringify({m:c.clientX,n:c.clientY}))))}function V(a){if(null!=a.f)try{var b=h.getElementById(a.a+B),c=a.f,d=h[p](I);d[l](O,O);d[l](F,s);d[l](R,t);b[k](d);var g=d.contentWindow;g&&g.document.write(c)}catch(n){}} T.prototype.c=function(a,b){function c(a,b,g){if(!(0>=g)){var n=h.getElementById(d.a+B),m=h[p](J);m[l](P,a);m[l](F,s);m[l](R,t);void 0!=m.addEventListener&&m.addEventListener(C,function(){e.setTimeout(function(){3E5<b&&(b=3E5);c(a,2*b,g-1)},b*Math.random())},!1);n[k](m)}}var d=this,g=this.h,g=g+(v+a);if(b)for(var n in b)g+=r+f(n)+u+f(b[n]);c(g,1E3,5);18==a&&V(this);8==a&&U(this,null)};})(); (function() {var a=window,c='handleClick',e='handleTouchEnd',f='handleTouchStart';a.inmobi=a.inmobi||{};function g(b,h){this.b=h;this.a=this.c=!1;var d=this;a[b+c]=function(){d.click()};a[b+f]=function(){d.start(a.event)};a[b+e]=function(){d.end()}}a.inmobi.OldTap=g;g.prototype.click=function(){this.c||this.b()};g.prototype.start=function(b){this.a=this.c=!0;b&&b.preventDefault()};g.prototype.end=function(){this.a&&(this.a=!1,this.b())};})(); new window.inmobi.Bolt({\"lp\":\"https://itunes.apple.com/app/uber/id368677368?mt\\u003d8\\u0026ct\\u003dInMobi\",\"lps\":\"https://itunes.apple.com/app/uber/id368677368?mt\\u003d8\\u0026ct\\u003dInMobi\",\"ct\":[\"https://c.w.inmobi.com/c.asm/C/t/eanpprow7z/1blu/r/2m/ba/u/0/0/0/eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEifQ~~/109dfe8a-0155-1000-dc5f-411d5fa80095/-1/0/-1/1/0/x/12887719/NW/2t/0/api/3.1.0/dir/Y29tLm1pZGFzcGxheWVyLmFwcHMuY2FuZHljcnVzaHNhZ2E~/FsjxCRaA9bIMFv6Dh9S7VDco1z72RURlPxQeFwAAAAAAAPA_FwAAAAAAAAAAF2Gr45wqvLQ_FAISGDg1TE11NER6NDQybFlLeVlJek1YdWQwbjJlRm5URTFnSDNnWFpDOXNLeDZkL20zZDB3SCtzeFE9PRgGQkFOTkVSHBQAFAIcHBaAwKiVwKL_nSEW1cX_vvS437dGABakzo3irMX72lkVABIAADkFIRQAForC4OnbUSgQd2ViMTA0MS5hZHMuaGtnMRQEEjwVAgAsFQIAAA/-1/AA/6/17f5e44d?at\\u003d1\\u0026am\\u003d0\"],\"bcu\":\"https://et.w.inmobi.com/c.asm/C/t/eanpprow7z/1blu/r/2m/ba/u/0/0/0/eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEifQ~~/109dfe8a-0155-1000-dc5f-411d5fa80095/-1/0/-1/0/0/x/12887719/NW/2t/0/api/3.1.0/dir/Y29tLm1pZGFzcGxheWVyLmFwcHMuY2FuZHljcnVzaHNhZ2E~/FsjxCRaA9bIMFv6Dh9S7VDco1z72RURlPxQeFwAAAAAAAPA_FwAAAAAAAAAAF2Gr45wqvLQ_FAISGDg1TE11NER6NDQybFlLeVlJek1YdWQwbjJlRm5URTFnSDNnWFpDOXNLeDZkL20zZDB3SCtzeFE9PRgGQkFOTkVSHBQAFAIcHBaAwKiVwKL_nSEW1cX_vvS437dGABakzo3irMX72lkVABIAADkFIRQAForC4OnbUSgQd2ViMTA0MS5hZHMuaGtnMRQEEjwVAgAsFQIAAA/-1/AA/6/76cf6033\",\"ws\":false,\"ns\":\"im_6640_\",\"sc\":true}); new window.inmobi.OldTap(\"im_6640_\", function() { window['im_6640_openLandingPage'](); window['im_6640_recordEvent'](8); }); </script> <style> .inmC { margin-left: auto; margin-right: auto; display: block; }</style> <div onclick=\"im_6640_handleClick()\" ontouchstart=\"im_6640_handleTouchStart()\" ontouchend=\"im_6640_handleTouchEnd()\"> <img border=\"0\" class=\"inmC\" src=\"https://i.l.inmobicdn.net/banners/FileData/6649fab2-df07-45c8-be3a-29c3505c953d.jpeg\" alt=\"Uber\" height=\"48\" width=\"307\" /> </div> <style>body{margin:0}</style> <script type=\"text/javascript\"> im_6640_recordEvent(18); </script>","adtype":"rm","width":320,"height":48,"lp":"https://c.w.inmobi.com/c.asm/C/t/eanpprow7z/1blu/r/2m/ba/u/0/0/0/eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEifQ~~/109dfe8a-0155-1000-dc5f-411d5fa80095/-1/0/-1/1/0/x/12887719/NW/2t/0/api/3.1.0/dir/Y29tLm1pZGFzcGxheWVyLmFwcHMuY2FuZHljcnVzaHNhZ2E~/FsjxCRaA9bIMFv6Dh9S7VDco1z72RURlPxQeFwAAAAAAAPA_FwAAAAAAAAAAF2Gr45wqvLQ_FAISGDg1TE11NER6NDQybFlLeVlJek1YdWQwbjJlRm5URTFnSDNnWFpDOXNLeDZkL20zZDB3SCtzeFE9PRgGQkFOTkVSHBQAFAIcHBaAwKiVwKL_nSEW1cX_vvS437dGABakzo3irMX72lkVABIAADkFIRQAForC4OnbUSgQd2ViMTA0MS5hZHMuaGtnMRQEEjwVAgAsFQIAAA/-1/AA/6/17f5e44d"}   ],"requestId" : "109dfe5e-0155-1000-c800-3e9000000090" }
		
Native Ads
{
   "ads":[
       {
           "pubContent":"json string of ad resources",
 	     "contextCode":"",
	     "namespace":"",
       },
       {
           "pubContent":"json string of ad resources",
           "contextCode":"",
	     "namespace":"",
       },
	  .
	  .
	  .
   ],
   "requestId":""
}
		

Sample Response:

 { "ads": [  {"pubContent":{"title":"Uber","description":"Get a reliable ride in minutes with the Uber app���no reservations or waiting in taxi lines. From lo","icon":{"width":300.0,"height":300.0,"url":"http://i.l.inmobicdn.net/uac-assets/368677368-us-1455192789646","aspectRatio":1.0},"screenshots":{"width":320.0,"height":480.0,"url":"http://i.l.inmobicdn.net/banners/FileData/cef51cdf-103b-4a61-81bf-7b34d81322a7.jpeg","aspectRatio":0.66},"landingURL":"https://itunes.apple.com/app/uber/id368677368?mt=8&ct=InMobi","cta":"install","rating":4.0},"contextCode":"<div style=\"display:none; position:absolute;\" id=\"im_4194_clickTarget\"></div>\n<script type=\"text/javascript\">\n 	(function() {var e=window,f=encodeURIComponent,h=document,k='appendChild',l='setAttribute',p='createElement',q='',r='&',s='0',t='2',u='=',v='?m=',w='Events',x='_blank',y='a',z='click',A='clickCallback',B='clickTarget',C='error',D='event',E='function',F='height',G='href',H='iatSendClick',I='iframe',J='img',K='impressionCallback',L='onclick',M='openLandingPage',N='recordEvent',O='seamless',P='src',Q='target',R='width';e.inmobi=e.inmobi||{};var S=e.inmobi;S.d=S.d||[];\nS.c=function(a,b){for(var c=S.d,d=0;d<c.length;d++)c[d].call(this,a,b)};S.recordEvent=S.c;\nfunction T(a){function b(a,b){c.c(a,b)}this.j=a.lp;this.k=a.lps;this.b=a.ct;this.f=a.tc;this.h=a.bcu;this.a=a.ns;this.l=a.ws;this.g=a.sc;a=this.a;var c=this;e[a+M]=function(){var a=T.e(c.j),b=e.mraid;'undefined'!==typeof b&&'undefined'!==typeof b.openExternal?b.openExternal(a):(a=T.e(c.k),b=h[p](y),b[l](Q,x),b[l](G,a),h.body[k](b),T.i(b))};e[a+A]=function(a){U(c,a)};e[a+K]=function(){V(c)};e[a+N]=b;this.g&&S.d.push(b)}S.Bolt=T;\nT.i=function(a){if(typeof a.click==E)a.click.call(a);else if(a.fireEvent)a.fireEvent(L);else if(a.dispatchEvent){var b=h.createEvent(w);b.initEvent(z,!1,!0);a.dispatchEvent(b)}};T.e=function(a){return a.replace(/\\$TS/g,q+(new Date).getTime())};function W(a,b){var c=h.getElementById(a.a+B),d=h[p](I);d[l](P,b);d[l](O,O);d[l](F,s);d[l](R,t);c[k](d)}\nfunction U(a,b){var c=e[a.a+H];c&&c();if(null!=a.b)for(var c=a.b.length,d=0;d<c;d++)W(a,T.e(a.b[d]));a.l&&(b=b||eval(D),'undefined'!==typeof b&&(c=void 0!=b.touches?b.touches[0]:b,e.external.notify(JSON.stringify({m:c.clientX,n:c.clientY}))))}function V(a){if(null!=a.f)try{var b=h.getElementById(a.a+B),c=a.f,d=h[p](I);d[l](O,O);d[l](F,s);d[l](R,t);b[k](d);var g=d.contentWindow;g&&g.document.write(c)}catch(n){}}\nT.prototype.c=function(a,b){function c(a,b,g){if(!(0>=g)){var n=h.getElementById(d.a+B),m=h[p](J);m[l](P,a);m[l](F,s);m[l](R,t);void 0!=m.addEventListener&&m.addEventListener(C,function(){e.setTimeout(function(){3E5<b&&(b=3E5);c(a,2*b,g-1)},b*Math.random())},!1);n[k](m)}}var d=this,g=this.h,g=g+(v+a);if(b)for(var n in b)g+=r+f(n)+u+f(b[n]);c(g,1E3,5);18==a&&V(this);8==a&&U(this,null)};})();\n (function() {var a=window,c='handleClick',e='handleTouchEnd',f='handleTouchStart';a.inmobi=a.inmobi||{};function g(b,h){this.b=h;this.a=this.c=!1;var d=this;a[b+c]=function(){d.click()};a[b+f]=function(){d.start(a.event)};a[b+e]=function(){d.end()}}a.inmobi.OldTap=g;g.prototype.click=function(){this.c||this.b()};g.prototype.start=function(b){this.a=this.c=!0;b&&b.preventDefault()};g.prototype.end=function(){this.a&&(this.a=!1,this.b())};})();\n\n	new window.inmobi.Bolt({\"lp\":\"https://itunes.apple.com/app/uber/id368677368?mt\\u003d8\\u0026ct\\u003dInMobi\",\"lps\":\"https://itunes.apple.com/app/uber/id368677368?mt\\u003d8\\u0026ct\\u003dInMobi\",\"ct\":[\"https://36210.measurementapi.com/serve?action\\u003dclick\\u0026publisher_id\\u003d36210\\u0026site_id\\u003d17688\\u0026agency_id\\u003d608\\u0026ref_id\\u003d109f95b2-0155-1000-d565-429c5fa80090\\u0026unid\\u003dFC0F3445-0FCE-40EE-8646-3CA8BB2663EA\\u0026sub_placement\\u003dGWL2I9EN\\u0026sub_campaign\\u003dDisplay-Inmobi-Fetch_1_-99_US-national_R_iOS_ACQ_CPI_en_Ongoing\\u0026sub_adgroup\\u003dA081_A064_C625845\\u0026sub_ad\\u003d16039-MD-R-Photo-Q1-Refresh-Rd-2-US_Woman-3-GoingSomewhereTakeUber_320x480\",\"http://c.w.inmobi.com/c.asm/C/t/eaqys9splx/1blu/r/2m/ba/u/0/0/0/eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEifQ~~/109f95b2-0155-1000-d565-429c5fa80090/-1/0/-1/1/0/x/12887725/NW/2t/0/api/3.1.0/dir/Y29tLm1pZGFzcGxheWVyLmFwcHMuY2FuZHljcnVzaHNhZ2E~/FqDvDxaA9bIMFoKnn-rIVDdEUC-4uk18PxQeFwAAAAAAAPA_FwAAAAAAAAAAF6RwPQrXo8A_FAISGDg1TE11NER6NDQybFlLeVlJek1YdWQwbjJlRm5URTFnSDNnWFpDOXNLeDZkL20zZDB3SCtzeFE9PRgGTkFUSVZFHBQAFAIcHBaAwKiVwOzKnyEW39m4-ZvZ3tJUABbQ-vn5v6P-viEVABIAADkFIhQAForC4OnbUSgQd2ViMTA2NS5hZHMuaGtnMRQCEjwVAgAsFQIAAA/-1/AA/6/12447bb2?at\\u003d1\\u0026am\\u003d0\"],\"bcu\":\"http://et.w.inmobi.com/c.asm/C/t/eaqys9splx/1blu/r/2m/ba/u/0/0/0/eyJVSUQiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEiLCJJREEiOiJGQzBGMzQ0NS0wRkNFLTQwRUUtODY0Ni0zQ0E4QkIyNjYzRUEifQ~~/109f95b2-0155-1000-d565-429c5fa80090/-1/0/-1/0/0/x/12887725/NW/2t/0/api/3.1.0/dir/Y29tLm1pZGFzcGxheWVyLmFwcHMuY2FuZHljcnVzaHNhZ2E~/FqDvDxaA9bIMFoKnn-rIVDdEUC-4uk18PxQeFwAAAAAAAPA_FwAAAAAAAAAAF6RwPQrXo8A_FAISGDg1TE11NER6NDQybFlLeVlJek1YdWQwbjJlRm5URTFnSDNnWFpDOXNLeDZkL20zZDB3SCtzeFE9PRgGTkFUSVZFHBQAFAIcHBaAwKiVwOzKnyEW39m4-ZvZ3tJUABbQ-vn5v6P-viEVABIAADkFIhQAForC4OnbUSgQd2ViMTA2NS5hZHMuaGtnMRQCEjwVAgAsFQIAAA/-1/AA/6/fd482491\",\"ws\":false,\"ns\":\"im_4194_\",\"sc\":true});\n	new window.inmobi.OldTap(\"im_4194_\", function() {\n	window['im_4194_openLandingPage']();\n	window['im_4194_recordEvent'](8);\n});\n</script>","namespace":"im_4194_"}   ],"requestId" : "109f956b-0155-1000-fc00-3ec000000090" }
		

Interstitial Ads

{
   "ads":[
       {
           "pubContent":"plain text",
		"adtype": " ",
		 "width": ,
"height": ,
"lp": ,
       },
 {
           "pubContent":"plain text",
		 "adtype": " ",
		 "width": ,
"height": ,
"lp": ,
       }
	  .
	  .
	  .
   ],
   "requestId":""
}
		
Response for No-Fill
{
    "ads":[
    ],
    "requestId":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
		
Description
  • ads: The Ads object contains one or more ads which can be rendered within the publisher property
  • pubContent: The pubContent contains a render ready HTML snippet which must be used as is to display the ad

    • Base 64 decoding of the Pub content results in a JSON response, which contains the necessary meta information for the creative.
    • In the example above, the value displays the meta information like this {"landing_url":"https://play.google.com/store/apps/details?id\u003dcom.toptable","cta":"Download","icon_ad":{"w":1 94,"url":"http://mkhoj-av.s3.amazonaws.com/com.toptable-ANDROID-us-1345243w194h310","h":310}}
    • The K-V pair for this JSON are generated in the way as desired by the publisher.
    • For native ads: The information present in the JSON will have the necessary information required for creating a native ad.
  • Native Ads:
    • eventTracking:Contains a set of event URLs.
  • requestId: This is an identifier generated by InMobi denoting the request. This parameter is used to debug issues or identify ads which might have problems.
  • adtype: The type of ad contained in the response. Possible values are text, banner, rm.
  • width: The width of the ad creative.
  • height: The height of the ad creative.
  • lp:The click URL of the ad.

Integrating Native Ads

Parsing the Ad Response

A successful ad request results in an ad response as per the following template:

{
    "ads":[
        {
            "pubContent":"Json of ad resources",
            "landingPage":"",
            "beaconUrl":"",
		"eventTracking":
		{
		 "eventvalue":
		 {
 		  "urls”:[]
	       },
	       "eventvalue":
		 {
 		  "urls”:[]
	       },
		},
        },
        {
            "pubContent":"Json of ad resources",
            "landingPage":"",
            "beaconUrl":"",
		"eventTracking":
		{
		 "eventvalue":
		 {
 		  "urls”:[]
	       },
	       "eventvalue":
		 {
 		  "urls”:[]
	       },
		},
        },
	  .
	  .
	  .
    ],
    "requestId":""
}
		

A sample JSON value in the pubContent is shown below:

{
    "title":"Amazon App",
    "description":"Comprehensive Browse, search, get product details, read reviews and purchase millions of products",
    "icon":{
        "height":300,
        "width":300,
        "aspectRatio":1.0,
        "url":"http://uac-assets.inmobicdn.net/297606951-us-1448064792715"
    },
    "screenshots":{
        "height":480,
        "width":320,
        "aspectRatio":0.66,
        "url":"http://r.edge.inmobicdn.net/FileData/d2ea997b-c370-4d12-8ace-373251018df5.png"
    },
    "landingURL":"https://itunes.apple.com/app/amazon-app-shop-browse-scan/id297606951?mt\u003d8"
}
		

Each JSON parameter represents an ad asset. From the example above,

  • title: Represents the title of the ad
  • description: Description of the app on the store
  • landingURL: Represents the landing URL of the ad
  • screenshot: Represents the image associated with the ad
  • icon: Represents the Store App icon

Note: The list of fields above is not exhaustive; they have been used only as a sample. You can configure the ad template as per your site layout.

Rendering the Native Ads

Native ad rendering is completely controlled by the publisher. The publisher can decide how to handle layout and placement of the assets based the app's design and layout.

Along with rendering the ad, the publisher must also ensure events related to the ad render and click are transmitted to InMobi. For this, the steps below must be followed:

  • Fire impressions when the ad is rendered and visible on the screen.
  • Fire clicks when the ad is interacted with.

To conform to MRC’s viewability guidelines, the render beacon must only be fired when at least 50% of the ad unit is visible on the screen for at least 1 second.

The following table elicits the various event beacon values.

Interaction ID When to Fire
CTA (m=8) On click
RENDER (m=18) For new creatives, the recommendation is this needs to be done at top level record event, so that it counts render for the whole ad unit.
CLIENT_FILL (m=120) (Optional) In case the client side cache is implemented, this beacon should be fired whenever an ad unit is extracted from the cache for rendering. This helps in accurately tracking the true fill and render rates.

Recording impressions and clicks on the Native Ads

To record impression/ click on the native-ad, follow these steps:

  1. Get the list of urls based on event id eventTracking
    • For example, 8 for click, 18 for render etc.
  2. Get the list of URLs for that event for the ad.
  3. For each tracker url, do the following:
    1. Send a GET request to the urls, with an http client.
    2. Retry up to 5 times if the url fails, with an exponential backoff defined by retryTime * Uniform[0, 1], and retryTime doubled for every failure with start retry time as 1 second.
    3. Follow redirects, stop if you find a non http and non https url and mark the ping as successful.
  4. For custom event tracking:
    • Fetch the beaconUrl and append the custom event id: beaconUrl?m=id, id being the event id.

Note:

  • Impression: We recommend calling the impression function when the ad is actually displayed to the user.
  • Click: We recommend calling the click function when the ad is actually clicked by the user.

Handling landing pages

  • Fetch the value from landingPage.

Testing the Integration

Publishers can utilize the InMobi Diagnostics tool for testing integration. See the Setting Up Publisher Diagnostics topic for more details.

Ad Sizes

Parameter Value Ad Size Intended Inventory
1 120x20 All Phones (Feature Phones, iOS, Android, Windows)
2 168x28 All Phones (Feature Phones, iOS, Android, Windows)
3 216x36 All Phones (Feature Phones, iOS, Android, Windows)
4 300x50 All Phones (Feature Phones, iOS, Android, Windows)
9 320x48 Smartphones and Tablets (iOS, Android, Windows, Others)
10 300x250 Smartphones and Tablets (iOS, Android, Windows, Others)
11 728x90 Smartphones and Tablets (iOS, Android, Windows, Others)
12 468x60 Smartphones and Tablets (iOS, Android, Windows, Others)
13 120x600 Smartphones and Tablets (iOS, Android, Windows, Others)
14 320x480 Smartphones and Tablets (iOS, Android, Windows, Others) – Portrait Interstitial ads
32 480x320 Smartphones and Tablets (iOS, Android, Windows, Others) – Landscape Interstitial ads
15 320x50 Smartphones and Tablets (iOS, Android, Windows, Others)
33 1024x768 Tablets (iOS, Android, Windows) – Landscape Interstitial ads
16 768x1024 Tablets (iOS, Android, Windows) – Portrait Interstitial ads
34 1280x800 Tablets (iOS only) – Landscape Interstitial ads
17 800x1280 Tablets (iOS only) – Portrait Interstitial ads
18 160x600 Smartphones and Tablets (iOS, Android, Windows, Others)
21 480x75 Smartphones and Tablets (Windows)
27 500x130 Smartphones and Tablets (Windows)
28 292x60 Smartphones and Tablets (Windows)
29 250x250 Smartphones and Tablets (Windows)
30 250x125 Smartphones and Tablets (Windows)

Appendix

Valid Category Values

The table below contains the acceptable list of string values. Please pass comma-separated list of categories of the property during the request.

Parameter Value

Parameter description

im1

Books & Reference

im2

Business

im3

Catalogs

im4

Comics

im5

Communication

im6

Education

im7

Entertainment

im8

Finance

im9

Food & Drink

im10

Games

im10-1

Action

im10-2

Adventure

im10-3

Arcade

im10-4

Board

im10-5

Card

im10-6

Casino

im10-7

Dice

im10-8

Educational

im10-9

Family

im10-10

Kids

im10-11

Music

im10-12

Puzzle

im10-13

Racing

im10-14

Role Playing

im10-15

Simulation

im10-16

Sports

im10-17

Strategy

im10-18

Trivia

im10-19

Word

im10-20

Health & Fitness

im10-21

Lifestyle

im10-22

Media & Video

im10-23

Medical

im10-24

Music & Audio

im11

News & Magazines

im11-1

Arts & Photography

im11-2

Automotive

im11-3

Brides & Weddings

im11-4

Business & Investing

im11-5

Children's Magazines

im11-6

Computers & Internet

im11-7

Cooking, Food & Drink

im11-8

Crafts & Hobbies

im11-9

Electronics & Audio

im11-10

Entertainment

im11-11

Fashion & Style

im11-12

Health, Mind & Body

im11-13

History

im11-14

Home & Garden

im11-15

Literary Magazines & Journals

im11-16

Men's Interest

im11-17

Movies & Music

im11-18

News & Politics

im11-19

Outdoors & Nature

im11-20

Parenting & Family

im11-21

Pets

im11-22

Professional & Trade

im11-23

Regional News

im11-24

Science

im11-25

Sports & Leisure

im11-26

Teens

im11-27

Travel & Regional

im11-28

Women's Interest

im12

Personalization

im13

Productivity

im14

Shopping

im15

Social Networking

im16

Software Libraries and Demos

im17

Sports

im18

Tools

im19

Travel & Local

im20

WAP Portals

im21

Weather

Versioning

API versions are maintained using the endpoint to which ad requests need to be sent. For example: http://api.w.inmobi.com/showad/v3.1

  • Patch version updates are bug fixes and will not affect the endpoint. For example: API version 3.1.1
  • Minor version updates are additional support for new values in existing parameters. These will reflect on the endpoint. For example, API version 3.2.0.
  • Major version releases will have an impact on the endpoint. For example, Version 4.0.0.