Skip to content

Prebid SDK support for Stored Responses #133

Description

@bszekely1

Type of issue

Intent to implement

Description

The goal of this intent to implement is to provide SDK support for stored responses as designed in Prebid Server issue 861. A stored responses will allow developers and support engineers received a static creative response setup in the Prebid Server store datastore, used for testing.

SDK Public API

This section will cover the public API in the SDK to expose setting the stored response(s). A developer can pass one ore more stored response IDs, depending on expected behavior.

Single Stored Auction Response ID

The single stored response allows for a developer to pass a single response ID, expecting the same response each time.

PrebidMobile.storedAuctionResponse="stored_response_id"

Multiple Stored Bid Response IDs

Multiple stored responses allows a developer to specify one or more bidders to respond to Prebid server with a static bid response, allowing for an auction to occur with all bid responses.

PrebidMobile.storedbidresponse.(key: "BidderA", value: "1234567")

Prebid SDK <> Prebid Server

This section will cover communication between Prebid SDK and Prebid Server.

Single Stored Auction Response ID

The single stored auction response will return the same response for all responses. No auctions will occur in Prebid Server. A sample OpenRTB request to Prebid server and response is below.

Request

  "test":1,
  "tmax":500,
  "id": "test-auction-id",
  "app": { ... },
  "ext": {
      "prebid": {
             "targeting": {},
             "cache": { "bids": {} }
       }
  },
  "imp": [
    {
      "id": "a",
      "ext": { "prebid": { "storedauctionresponse": { "id": "1111111111" } } }
    }
  ]
}

Response

    "id": "78cb3c51-baa7-437b-b958-c7c6569a5041",
    "seatbid": [
        {
             // Store response for storedauctionresponse=1111111111
        }
  ]
}

Multiple Stored Bid Response IDs

Providing multiple stored auction response IDs allows for resolved bidder config IDs to compete in an auction.

Request

  "test":1,
  "tmax":500,
  "id": "test-auction-id",
  "app": { ... },
  "ext": {
      "prebid": {
             "targeting": {},
             "cache": { "bids": {} }
       }
  },
  "imp": [
    {
      "id": "a",
      "ext": {
          "prebid": {
            "storedbidresponse": [
                  { "bidder": "BidderA", "id": "333333" },
                  { "bidder": "BidderB", "id": "444444" },
             ]
           } 
      }
    }
  ]
}

Response

    "id": "78cb3c51-baa7-437b-b958-c7c6569a5041",
    "seatbid": [
        {
             "bid": [
             // contents of storedbidresponse=3333333 as parsed by bidderA adapter
             // contents of storedbidresponse=5555555 as parsed by bidderA adapter
             ]
        }
  ]
}

Platform details

Support for Android

Other information

Reference Prebid Server Store Response implementation: prebid/prebid-server#861

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions