Skip to content

Adstxt 1.1 - Documentation (Early 2023)

Ads.txt 1.1 introduces two new fields that aim at providing more transparency.

  • managerdomain: specifies the business domain of a primary or exclusive monetization partner of the publishers inventory
  • ownerdomain: specifies the business domain of the business entity that owns the domain

And also solves issues from 1.0 regarding the SC verification that relies on ads.txt + sellers.json + SCO (Supply Chain Object)

✏️ Changes categorization

  • Already implemented in 1.0
  • Mandatory in 1.1
  • Recommended in 1.1
Ads.txt 1.0Ads.txt 1.1
mymedia.com/ads.txtadagio.io, 123, RESELLER

ownerdomain=owner.com

managerdomain=manager.com

owner.com, 456, DIRECT

manager.com, 789, DIRECT

adagio.io, 123, RESELLER

owner.com/sellers.json

{

"seller_id": "456",

"name": "My Media",

"domain": "mymedia.com",

"seller_type": "PUBLISHER"

}

manager.com/sellers.json

{

"seller_id": "789",

"name": "Owner",

"domain": "owner.com",

"seller_type": "PUBLISHER"

}

{

"seller_id": "789",

"name": "Owner",

"domain": "owner.com",

"seller_type": "PUBLISHER"

}

adagio.io/sellers.json

{

"seller_id": "123",

"name": "Manager",

"domain": "manager.com",

"seller_type": "BOTH"

}

{

"seller_id": "123",

"name": "Manager",

"domain": "manager.com",

"seller_type": "BOTH"

}

supply chain object received by adagio

"nodes": [

{

"asi": "manager.com",

"sid": "456",

"hp": 1,

...

}

]

"nodes": [

{

"asi": "owner.com",

"sid": "456",

"hp": 0,

...

},

{

"asi": "manager.com",

"sid": "456",

"hp": 1,

...

}

]

classDiagram
note "Ads.txt 1.1"
class Website{
mymedia.com/ads.txt
-------------------------------------
ownerdomain=owner.com
managerdomain=manager.com
owner.com, 456, DIRECT
manager.com, 789, DIRECT
[adagio.io](http://adagio.io), 123, RESELLER
}
class Publisher{
owner.com/sellers.json
-------------------------------------
"seller_id": "456",
"name": "My Media",
"domain": "mymedia.com",
"seller_type": "PUBLISHER"
}
class Intermediary{
manager.com/sellers.json
-------------------------------------
"seller_id": "789",
"name": "Owner",
"domain": "owner.com",
"seller_type": "PUBLISHER"
}
class Adagio{
adagio.io/sellers.json
-------------------------------------
"seller_id": "123",
"name": "Manager",
"domain": "manager.com",
"seller_type": "BOTH"
}
Website <-- Publisher
Publisher <-- Intermediary
Intermediary <-- Adagio
Publisher <-- Website
Intermediary <-- Website
Adagio <-- Website
Seller typeRelationshipWebsite = OwnerPublisher categoryWhat to do?
PublisherOwnedtruePUBLISHER SDFor Publishers with single domain
PublisherOwnedfalsePUBLISHER MDFor Publishers with multiple domains
IntermediaryManagedtrueINTERMEDIARY Managed PSDFor Intermediary managed platform with single domain
IntermediaryManagedfalseINTERMEDIARY Managed PMDFor Intermediary managed platform with multiple domains
BothOwnedtrueBOTH Owned PSDFor Both owned platform single domain
BothOwnedfalseBOTH Owned PMDFor Both owned platform multiple domains
BothManagedtrueBOTH Managed PSDFor Both managed platform single domain
BothManagedfalseBOTH Managed PMDFor Both managed platform multiple domains