Source Object

This object carries data about the source of the transaction including the unique ID of the transaction itself, source authentication information, and the chain of custody.

Source Object Properties
Value Type Description
fd integer

Indicates the entity responsible for the final impression sale decision, using the following values:

  • 0 = The exchange behind BidSwitch
  • 1 = An upstream source (usually header bidder)

For example a bid request containing ext.ssp='rubicon' and source.fd=0 implies that the auction is run at Rubicon SSP. If the same request has source.fd=1 then the auction is run at a header bidder upstream from Rubicon SSP.

Note: The BidSwitch platform never acts as the decision maker.

tid string (Recommended) Transaction ID that must be common across all participants throughout the entire supply chain of this transaction. This also applies across all participating exchanges in a header bidding or similar publisher-centric broadcast scenario.
ts int (Recommended) Timestamp when the request originated at the beginning of the supply chain in Unix format (i.e., milliseconds since the epoch). This value must be held as immutable throughout subsequent intermediaries.
ds string (Recommended) Digital signature used to authenticate the origin of this request computed by the publisher or its trusted agent from a digest string composed of a set of immutable attributes found in the bid request.
cert string (Recommended) public key to sign the request, should be similar to ads.txt file:
pchain string Payment ID chain string containing embedded syntax described in the TAG Payment ID Protocol v1.0.
ext* object Contains additional fields, see Source Extension

Source Extension

Source Extension Object Properties
Value Type Description
schain object

Contains the supplychain object, as fully described here on the IAB Github Page:

The SupplyChain object is composed primarily of a set of nodes where each node represents a specific entity that participates in the selling of a bid request. The entire chain of nodes from beginning to end would represent all sellers who were paid for an individual bid request.

SupplyChain Object

Value Type Description
complete int (Required) Flag indicating whether the chain contains all nodes leading back to the source of the inventory, where 0 = no, 1 = yes.
nodes array of objects (Required) Array of objects in the order of placing in the chain. The original source of the request is first and the final seller of the request last, see Supply Chain Nodes
ver str (Required) Version of the supply chain specification in use. Currently "1.0" is the only option.

Supply Chain Nodes

supply chain node
Value Type Description
asi string (Required) The canonical domain name of the SSP, Exchange, Header Wrapper, etc system that bidders connect to. This may be the operational domain of the system, if that is different than the parent corporate domain, to facilitate WHOIS and reverse IP lookups to establish clear ownership of the delegate system. This should be the same value as used to identify sellers in an ads.txt file if one exists.
sid string (Required) The identifier associated with the seller or reseller account within the advertising system. This must contain the same value used in transactions (i.e. OpenRTB bid requests) in the field specified by the SSP/exchange. Typically, in OpenRTB, this is For OpenDirect it is typically the publisher’s organization ID.Should be limited to 64 characters in length.
hp int

(Required) Indicates whether this node will be involved in the flow of payment for the inventory.

When set to 1, the advertising system in the asi field pays the seller in the sid field, who is responsible for paying the previous node in the chain.

When set to 0, this node is not involved in the flow of payment for the inventory.

For version 1.0 of SupplyChain, this property should always be 1. It is explicitly required to be included as it is expected that future versions of the specification will introduce non-payment handling nodes. Implementers should ensure that they support this field and propagate it onwards when constructing SupplyChain objects in bid requests sent to a downstream advertising system.

rid string The OpenRTB RequestId of the request as issued by this seller.
name* string The business name of the entity represented by this node. This value is optional and should NOT be included if it exists in the advertising system’s sellers.txt file.
domain* string The business domain name of the entity represented by this node. This value is optional and should NOT be included if it exists in the advertising system’s sellers.txt file.

Example Source JSON