BidSwitch and app-ads.txt

app-ads.txt is an initiative to replicate ads.txt’s success at verifying approved sellers of inventory. Using it, app publishers can list their authorized digital Suppliers and Buyers can ensure that they only buy in-app inventory from them.

As part of supporting this, BidSwitch offers a cross-store app-ads.txt information mapping service, which combines the information from the Apple and Google app stores into a unified search index containing all of the relevant information to implement app-ads.txt validation as part of real-time bidding.

Ads.txt Targeting

Buyers can configure their targeting to only pass bid requests with a subset of ads.txt statuses. Within BidSwitch Targeting Groups, open Targeting Groups ‣ [example tgroup] ‣ Targeting ‣ Ads.txt Status to configure each targeting group to allow a mixture of the following statuses to be passed.

  • Direct The ads.txt entry is direct.

  • Reseller The ads.txt entry is reseller.

  • Unauthorized The ads.txt entry is unauthorized. Note: at this moment BidSwitch doesn’t allow for unauthorized ads.txt trading, CTV inventory being the only exception.

  • Unknown Although an unofficial field, this status maps to 0 in the bid request ads.txt object and means BidSwitch has not yet crawled the publishers ads.txt site to verify the Supplier’s status.

Note

  • This filter applies to both website (ads.txt) and application (app-ads.txt)

  • Activate the Apply to Private Deals checkbox if you need to filter private deal traffic by ads.txt status

Mapping Service Overview

  1. BidSwitch obtains a complete list of all active applications, in both the Apple app store and the Google Play app store.

  2. Each individual App on this list will be crawled regularly to update/validate their app-ads.txt information. As part of this, BidSwitch augments the list with each app’s bundle ID, app name, store URL, and Developer Domain.

  3. If possible, BidSwitch will merge the two App store records into one. The merge only occurs if the application’s records have an exact, case sensitive, match in both the app_name and dev_url fields

  4. BidSwitch makes this mapping information available in JSON format, here: https://appadstxt.bidswitch.com/apps.json

Example File Format

{
    "app_count":4,
    "apps":[
        {
            "dev_url":"https://www.rovio.com/",
            "app_name":"Angry Birds Classic",
            "google_play":{
                "bundle":"com.rovio.angrybirds",
                "store_url":"https://play.google.com/store/apps/details?id=com.rovio.angrybirds&hl=en"
            },
            "iTunes":{
                "bundle":"343200656",
                "store_url":"https://itunes.apple.com/us/app/ab-classic/id343200656"
            }
        },
        {
            "dev_url":"https://king.com",
            "app_name":"Candy Crush Saga",
            "google_play":{
                "bundle":"com.king.candycrushsaga",
                "store_url":"https://play.google.com/store/apps/details?id=com.king.candycrushsaga"
            }
        },
        {
            "dev_url":"www.gameloft.com",
            "app_name":"MY LITTLE PONY: MAGIC PRINCESS",
            "iTunes":{
                "bundle":"533173905",
                "store_url":"http://itunes.apple.com/us/app/id533173905"
            }
        },
        {
            "dev_url":"www.gameloft.com",
            "app_name":"MY LITTLE PONY: Magic Princess",
            "google_play":{
                "bundle":"com.gameloft.android.ANMP.GloftPOHM",
                "store_url":"https://play.google.com/store/apps/details?id=com.gameloft.android.ANMP.GloftPOHM"
            }
        }
    ]
}