Publisher Onboarding and Integration 101
Publisher Onboarding and Integration 101
ONBOARDING
AND
INTEGRATION 101
We also have performance stats to compare MCO vs AB and SDK vs API, that will be
updated on a monthly/quarterly basis.
Don't forget to go through the notes mentioned in textboxes and in the in-built PPT notes
section.
Table of Contents
Introduction to SDK 9xx
Monetization Solutions
SDK vs API
InMobi behind Mediation
Third-Party
Publisher Mediation InMobi
If publishers already have a primary mediation
in place, they will add InMobi to their existing
mediation stack.
InMobi
Mediation
If InMobi is the primary mediation platform for
publishers, we get to mediate between multiple
InMobi ad networks and push ad requests to them.
InMobi
Publisher
Mediation
The way in which the ad request flows out to
Third-Party Ad other ad networks depends on their rank in
Networks
the waterfall. Networks are sequentially
arranged mostly based on the historic eCPM
each network brings on board.
InMobi
Audience Bidding
In-app Header Bidding allows publishers to invite all demand Most platforms today offer a hybrid model with in-app
sources to bid on their mobile ad impressions simultaneously header bidding and waterfalls coexisting. Real-time
and helps them identify who the highest bidder is. With In- bid values collected via header bidding gets added to
App Header Bidding, an ad request is democratized since all the publisher's existing waterfall on the mediation
parties receive equal opportunities. platform and it competes in another final auction for
deciding the winning bid.
WATERFALL vs HEADER BIDDING ?
Ad Network Configuration on a Mediation Platform
AD REQUEST
Exchange / DSP
Exchange / DSP
WATERFALL
SET UP
$3
$3
Ad Network A Ad Network A
AD REQUEST
IN-APP HEADER
$5
BIDDING
Ad Network B Ad Network B $5
$8
Ad Network C Ad Network C $8
InMobi Third-Party
AB Platform HB Platform
LIVE
AB Integrations
Integration SDK API SDK
Line items to be created No No Yes (hybrid-model
with HB and waterfall)
Ad request sent by InMobi UMP InMobi UMP InMobi SDK
third-party bidding server to
SDK Version supporting AB iOS (907) & N/A iOS (907) &
Android (906) Android (907)
Ad Rendering by InMobi SDK Publisher InMobi SDK
Integration Handled by MAX Handled by A9 Handled by InMobi
and Adapter Documentation
Workflow with
MAX
1. Once the integration is live, the publisher sends an ad request to
MAX.
InMobi UMP
2. MAX SDK identifies the corresponding InMobi Placement ID and
requests for signals from InMobi SDK.
5 6
3. InMobi SDK sends signals back to MAX SDK.
MAX oRTB
Server 4. The signals shared by the InMobi SDK are then relayed by MAX
SDK to MAX oRTB sever.
4
5. The MAX server then sends the ad request to InMobi UMP, creating
2
1 InMobi a server-to-server connection, unlike in a mediation set up where the
Publisher MAX SDK
SDK SDK is responsible for all the steps.
3/7
InMobi Audience Bidding with MoPub operates in a AB also helps us increase our chances of being
hybrid-model with header bidding and waterfalls selected in the publisher's waterfall. For example,
coexisting. Real-time bids shared via header bidding publishers create multiple line items for InMobi on
gets added to the publisher's existing waterfall on the MoPub, say $10, $5 and $2. If we know we can
MoPub mediation platform and it competes in pay $5 while real-time bids are being collected, we
another final auction for deciding the winning bid. That can activate the $5 line item on the waterfall
is why we need to create multiple line items on MoPub before the final auction starts and deactivate
even with the AB integration $10/$2 line items.
Workflow with
Mopub
InMobi 1. Publisher initiates Mopub SDK.
SDK
2. Mopub SDK talks to InMobi Adapter to send a bid.
7
3. InMobi adapter pings InMobi oRTB end point for a bid.
8
Mopub 4. InMobi server responds with a bid.
Waterfall
5. InMobi bid is passed to Mopub SDK.
6
2 3 6. Mopub SDK inserts the bid in to the waterfall.
1 InMobi InMobi
Publisher Mopub SDK
Adpater oRTB Point
5 4 7. InMobi SDK is called to render the ad, if the bid wins the
auction.
Set of tools used to create applications, consisting of docs, tutorials, libraries and
APIs. It contains all the tools needed to communicate between apps.
SDK is like a cake mix that makes baking a cake faster & easier. The pre-built
functionality of SDK enables plug-n-play integration.
API is like a set of instructions in a recipe used to bake a cake. The publisher will source all
the ingredients / components and build it from scratch.
SDK vs API
SDK API
Time Required 4-6 hours 1 week
User Experience InMobi SDK handles the entire Publisher must solely
user experience with an handle the integration,
inbuilt caching mechanism. stitch the ad experiences,
It helps in rendering creatives. and implement caching.
Data Collection & Accuracy SDK acts as a data collector The publisher must handle
providing accurate signals the data collection on their own.
needed for displaying
personalized ads to users.
Plug-ins Adapters
When InMobi sits behind other mediations, plug-ins are used. When other networks sit behind InMobi, adapters are used.
NOTE: This is the internal terminology used by engineering. The term adapter is the standard word that is used across all documentation. No changes need to be made.
SDK 9xx
Integration
APP
Adding SDK to Project
SDK
Initializing the InMobi SDK
Step #1
Adding the
SDK
The first step is to add the InMobi SDK Framework to
the app's code base.
NOTE
The two partners available with SDK 900 are MOAT and OMSDK (Part
of InMobi SDK for both iOS and Android).
Initializing
the SDK
In initialization, steps that are not dependent on the load, are
completed. Here are someone of the
important components that help in initialization:
Signal Config
Publisher needs to inform us if the user has given Once SDK is inside the app’s cod
consent to use their data, as per GDPR and e base, we can't access it during
COPPA guidelines. Location, sessions and config run time because an if-else logic
signals are also pulled. For COPPA, Wi-Fi and is used. Changes need to be made
cell information is also collected. through the config server.
Telemetry Cache
Stores data and helps in loading
Tracks and measures all the events from calling ads faster during subsequent
load, show, beacons fired, crashing, etc. requests.
SDK Initialized
Create Ad
Request
Workflow
Ad response sent to MUTT
Processing the
response
Downloading Creating a
the asset web view
Show
NOTE: Publisher doesn't call show for banner ads because of the nature of the ad format.
InMobi Ad
Request Lifecycle
VA L I D A D S E RV E D LOADED RENDERED V I E WA B L E
CLICK
REQUEST IMPRESSION IMPRESSION IMPRESSION IMPRESSION
1 2 3 4 5 6
Context Demogdata
It is unique for android and pulls information regarding the windows Allows publishers to set age, income, educational
within the apps, for example whether it is the first window, second window, etc. qualifications etc.
gdprConsent SetgdprConsent
As per GDPR guidelines, we need to collect consent from users in In some cases, users may not have given us consent
order to show them personalized ads. This API tells us whether we to show them personalized ads at the start. If the user
have received the required consent from users or not. gives consent later on during game play, then this API
informs us about the updated consent from users.
Ad Formats & Callbacks
Major ad format classification, as supported by the InMobi SDK:
NOTE: Rewarded video ads callbacks are same as interstitial, covered in the following slides.
Banner Load
When a publisher calls load, if the load is successful, the onAdLoadSucceeded onAdLoadFailed
onAdLoadSucceeded callback is sent but if it fails the onAdLoadFailed
(end-state) callback will be sent.
Interstitial onAdReceived
onAdLoadFailed
Full screen ads that appear during natural
transition points in the app flow. onAdLoadSucceeded
Native onAdReceived
onAdLoadFailed
Native ads are not internal to the app view, we getPrimaryView / Show
need to create a view.
To monetize with InMobi SDK, certain external libraries need to be added to the Android Studio project. Dependencies
allow publishers to include these external libraries by downloading them and making it available in the project.
NOTE: If these libraries aren't added, we will not be able to see any ad
requests on the dashboard. This needs to be conveyed to the publishers.
Android Dependencies
Once the dependencies have been added, dependencies element of the project will look like this:
The dependencies can be found on the support portal page here. Please refer to step 2.
Set Up Issues
Overlooked
Generating API Key