Super Auction

Overview

What is Super Auction?

Super Auction is ONE by AOL: Mobile’s in-app header bidding solution for mobile app publishers. With Super Auction, you can open up your app’s inventory to multiple demand sources all at once in real-time, leading to more competition for every impression and better yield.

How does Super Auction work?

After integrating the MM SDK in your app and creating Super Auction-specific placements in ONE Mobile, you can offer your inventory for Super Auction by calling the requestBid API for a placement.

When requestBid is called, ONE Mobile will ask all of your Super Auction-enabled demand sources for bids and return the highest priced bid (including the ad associated with that bid) to the MM SDK.

Once you get this bid, you decide what to do with it. You could simply choose to display the ad returned with the Super Auction bid, or you can send it your primary SSP or ad server to compete against your waterfall’s direct-sold, network, or programmatic demand. If the Super Auction bid wins, the upstream mediation adapter will display the ad for you.

Integration and Setup

1. Add the SDK to your project

Download version 6.8.x of the MM SDK (Android and iOS) and follow the integration instructions to add it to your project. See links below to the integration guides for the appropriate platform:

Android iOS

2. Set up your Super Auction placements in the ONE Mobile SSP

To offer your inventory for Super Auction, it is necessary to set up new placements in the ONE Mobile console. Your Oath representative can walk you through the entire process.

3. Integrate the Super Auction API

Super Auction’s point of integration is the requestBid API. This section will advise how to use the API for inline and interstitial placements.

3.1 Using Super Auction API on an inline placement

Call the requestBid API as shown in the example below. Note that your Super Auction placement ID and the ad size are required parameters to send in the call.

Android
InlineAd.InlineAdMetadata inlineMetadata = new InlineAd.InlineAdMetadata();
inlineMetadata.setAdSize(InlineAd.AdSize.BANNER);
// Optionally add targeting data to the metadata object here

InlineAd.requestBid(<YOUR_SUPER_AUCTION_PLACEMENT_ID>, inlineMetadata, new BidRequestListener() {
						@Override
						public void onRequestSucceeded(String bidPrice) {
							// set the bid price as a keyword on the 3rd party SDK ad request
						}
						@Override
						public void onRequestFailed(BidRequestErrorStatus errorStatus) {
							// error handling here
						}
					});
iOS
[MMInlineAd requestBidForPlacementId:<YOUR_SUPER_AUCTION_PLACEMENT_ID>
						adSize:MMInlineAdSizeBanner
						requestInfo:nil // Create an instance of MMRequestInfo to add targeting data
						completion:^(NSString * _Nullable bid, NSError * _Nullable error) {
							if (error) {
								// error handling here
							} else {
								// set the bid as a keyword on the 3rd party SDK ad request
							}
						}];

See the InlineAd API documentation for more details:

Android iOS
3.2 Using Super Auction API on an interstitial placement
Android
InterstitialAd.InterstitialAdMetadata interstitialAdMetadataMetadata = new InterstitialAd.InterstitialAdMetadata();
// Optionally add targeting data to the metadata object here

InterstitialAd.requestBid(<YOUR_SUPER_AUCTION_PLACEMENT_ID>, interstitialAdMetadataMetadata, new BidRequestListener() {
						@Override
						public void onRequestSucceeded(String bidPrice) {
							// set the bid price as a keyword on the 3rd party SDK ad request
						}
						@Override
						public void onRequestFailed(BidRequestErrorStatus errorStatus) {
							// error handling here
						}
					});
iOS
[MMInterstitialAd requestBidForPlacementId:<YOUR_SUPER_AUCTION_PLACEMENT_ID>
						requestInfo:nil // Create an instance of MMRequestInfo to add targeting data
						completion:^(NSString * _Nullable bid, NSError * _Nullable error) {
							if (error) {
								// error handling here
							} else {
								// set the bid as a keyword on the 3rd party SDK ad request
							}
						}];

See the InterstitialAd API documentation for more details:

Android iOS
3.3 How to handle the bid returned from the Super Auction API

If there is demand for your ad request, Super Auction returns a bid price and an ad that the SDK caches. If you wish to serve this ad, simply call request() on an InlineAd instance using the same placement ID; or load(), followed by a show() on an InterstitialAd instance using the same placement ID. For more details, please see the InlineAd and InterstitialAd class documentation.

If you’re passing Super Auction’s bid response to another SDK, that SDK is responsible for displaying the ad cached on the MM SDK if the bid wins. Note that only a single bid is stored in cache per placement type. In other words, if you call the API multiple times, only the last bid returned is available to be used.