Using Prebid with AMP

Important:
A default version of prebid.js will no longer be included as part of the Prebid plugin for AMP.
Be sure to provide an Url or Path to your prebid.js file in the configuration object.

Implementation of Prebid in AMP.

The plugin can be implemented by providing a prebid object to the player config:

var config = {
  plugins: {
    prebid: {
      resources: [
        {src: "https://acdn.adnxs.com/prebid/not-for-prod/1/prebid.js", type: "text/javascript", async: true},
        {src: "${paths.plugins}prebid/Prebid.js", type: "text/javascript", async: true}
      ],
      adUnits: [{
        code: 'video1',
        mediaTypes: {
          video: {
            playerSize: [640, 480],
            context: 'instream'
          }
        },
        bids: [{
          bidder: 'spotx',
          params: {
            channel_id: 79391
          }
        }]
      }]
    }
  }
};
akamai.amp.AMP.create("amp", config);

Using custom prebid options property.

var config = {
  plugins: {
    prebid: {
      resources: [
        {src: "https://acdn.adnxs.com/prebid/not-for-prod/1/prebid.js", type: "text/javascript", async: true},
        {src: "${paths.plugins}prebid/Prebid.js", type: "text/javascript", async: true}
      ],
      adUnits: {
        code: 'video1',
        mediaTypes: {
          video: {
            playerSize: [640, 480],
            context: 'instream'
          }
        },
        bids: [{
          bidder: 'spotx',
          params: {
            channel_id: 79391
          }
        }]
      },
      options: {
        debug:true,
        cache: {
          url: 'https://prebid.adnxs.com/pbc/v1/cache'
        }
      }
    }
  }
};
akamai.amp.AMP.create("amp", config);

Multi header bidders can be implemented within the same prebid configuration:

var config = {
  plugins: {
    prebid: {
      resources: [
        {src: "https://acdn.adnxs.com/prebid/not-for-prod/1/prebid.js", type: "text/javascript", async: true},
        {src: "${paths.plugins}prebid/Prebid.js", type: "text/javascript", async: true}
      ],
      adUnits: [{
        code: "my-video-tag",
        sizes: [
          640,
          480
        ],
        mediaTypes: {
          video: {
            context: "instream",
            playerSize: [
              640,
              480
            ]
          }
        },
        bids: [{
          bidder: "appnexus",
          params: {
            placementId: 13144370,
            video: {
              skippable: true,
              playback_method: [
                "auto_play_sound_off"
              ]
            }
          }
        }]
      }, {
        code: 'video1',
        mediaTypes: {
          video: {
            playerSize: [640, 480],
            context: 'instream'
          }
        },
        bids: [{
          bidder: 'spotx',
          params: {
            channel_id: 79391
          }
        }]
      }]
    }
  }
};
akamai.amp.AMP.create("amp", config);