Create an In-App Bidding Adapter

You can add thid party partners for in-app bidding without having to wait for Smart to integrate them for you. Smart Display SDK has an open protocol on iOS and an interface on Android that can be implemented by custom classes to create bidding adapters. These adapters should be initialized with the ad response you get from the partner and passed to the loadAd method of your SASBannerView or SASInterstitialManager, or loadNativeAd method of your SASNativeAdManager instance when loading an ad. Holistic+ competition will then happen server side and the ad with the highest CPM will be displayed.

Technical overview

In-app bidding is based on the same principle than header bidding for web integrations. Your application will make a call to third parties networks through a third party SDK. The result of this call is passed to Smart Display SDK through a bidder adapter object. Smart Display SDK will then forward it to the ad server which will arbitrate between its own server-side connected partners, your direct campaigns and the winning ad of the in-app bidding. The response of the adserver will then be returned to Smart Display SDK with the ultimate goal to ensure that the ad with the highest CPM is displayed.


Step by step workflow

  • Integrate the in-app bidding SDK(s) of your partner(s).
  • Request ads from the SDK(s) of your partner(s) and find the most valuable ad for you (most partners will return only the best ad, but if you integrate several partners you will have to determine which ad is the best between the different responses).
  • Instantiate a bidding adapter from your partner's response with all relevant details to run the server-side competition (CPM & currency, keyword, name, etc).
  • Pass this adapter to the loadAd method of your SASBannerView or SASInterstitialManager (for ad views) or loadNativeAd method of your SASNativeAdManager (for native ads) when performing the load ad call.
  • Smart will use server-side Holistic+ capabilities to return the ad with the best CPM from all your sources:
    • If the winning ad comes from Smart, the Smart Display SDK will display it as usual.
    • If Smart loses the competition against your bidding partner, the adapter will be notified and 2 situations can happen:
      • Your partner's in-app bidding SDK has capabilities to display the winner ad, you must request it to do so. This can be done through the adapter by forwarding the event to your application or by mediating the rendering of the partner SDK directly with the adapter.
      • Note : this is the only available option in the native ad case, as the Smart Display SDK is never in charge of rendering native ads.
      • Your partner's in-app bidding SDK does not have capabilities to display the winner ad, Smart Display SDK will display it as long as the bidder adapter is able to provide the HTML Ad Markup.