Server-to-Server (s2s) Calls

BidSwitch calls the Buyer endpoint using a s2s call in the following cases:

  • The initial call from the Supplier/Publisher side was done using a s2s call
  • BidSwitch is calling the Buyer burl
  • BidSwitch is calling the Buyer nurl as the BidSwitch Bid Request had the imp.ext.s2s_nurl field set to 1.

An easy way to determine whether the call from BidSwitch is s2s is to check the user agent. For s2s calls it is always "BidSwitch/1.0". One advantage of s2s impression calls is increased control of the call delivery, and thus minimizing any discrepancies between partners’ reporting and/or invoicing.

Expected s2s Behaviour

  • BidSwitch expects HTTP 200, 204, or 302 responses to s2s calls, if you have recorded a valid impression.
  • If BidSwitch receives a response code > 399, i.e. HTTP 4xx, or 5xx, it denotes the impression as not properly recorded on the Buyer side, and will lead to discrepancies between BidSwitch and the Buyer.
  • If the response code is >= 400, or there was a timeout, BidSwitch makes 1 retry to check if a valid impression was recorded on the Buyer side.
  • BidSwitch will bill based on its numbers, regardless of Buyer response. See the Buyer Discrepancy API section for details about managing discrepancies.