Michao
Features
| Bidder Code | michao | Prebid.org Member | no | 
|---|---|---|---|
| Prebid.js Adapter | yes | Prebid Server Adapter | no | 
| Media Types | display, video, native | Multi Format Support | will-bid-on-one | 
| TCF-EU Support | no | IAB GVL ID | none | 
| GPP Support | none | DSA Support | no | 
| USP/CCPA Support | no | COPPA Support | no | 
| Supply Chain Support | yes | Demand Chain Support | no | 
| Safeframes OK | yes | Supports Deals | check with bidder | 
| Floors Module Support | yes | First Party Data Support | yes | 
| Endpoint Compression | check with bidder | ORTB Blocking Support | yes | 
| User IDs | none | Privacy Sandbox | topics | 
Note
The Michao Bidding adapter requires setup before beginning.
Bid Params
| Name | Scope | Description | Example | Type | 
|---|---|---|---|---|
| placement | required | Placement id | "12345" | string | 
| site | required | Site id | 6789 | number | 
| partner | optional | Partner id | 6789 | number | 
| test | optional | Test Mode | true | boolean | 
First Party Data
Publishers should use the ortb2 method of setting First Party Data. The following fields are supported:
- ortb2.site.*
- ortb2.user.*
- ortb2.device.*
- ortb2.regs.*
Example:
pbjs.setBidderConfig({
  bidders: ["michao"],
  config: {
    ortb2: {
      site: {
        keywords: "kw1,kw2",
      },
    },
  },
});
ORTB Blocking
supported:
- badv
- bcat
- bseat
- bapp
Example:
pbjs.setBidderConfig({
  bidders: ["michao"],
  config: {
    ortb2: {
      badv: ["adomain.com"],
      bcat: ["IAB2"],
      bapp: ["com.app"],
      bseat: ["seat"],
    },
  },
});
Media Types
Video
The following video parameters are supported here so publishers may fully declare their video inventory. These apply to both instream and outstream.
| Name | Scope | Description | Example | Type | 
|---|---|---|---|---|
| context | required | instream or outstream | “outstream” | string | 
| playerSize | required | width, height of the player in pixels | [640,360] - will be translated to w and h in bid request | array | 
| mimes | required | List of content MIME types supported by the player (see openRTB v2.5 for options) | [“video/mp4”] | array | 
| protocols | required | Supported video bid response protocol values 1: VAST 1.0 2: VAST 2.0 3: VAST 3.0 4: VAST 1.0 Wrapper 5: VAST 2.0 Wrapper 6: VAST 3.0 Wrapper 7: VAST 4.0 8: VAST 4.0 Wrapper | [2,3,5,6] | array | 
| maxduration | recommended | Maximum video ad duration in seconds. | 30 | integer | 
| minduration | recommended | Minimum video ad duration in seconds | 6 | integer | 
| linearity | recommended | OpenRTB2 linearity. 1: linear (in-stream ad), 2: non-linear (overlay ad) | 1 | integer | 
| playbackmethod | recommended | Playback methods that may be in use. Only one method is typically used in practice. (see openRTB v2.5 section 5.10 for options) | [2] | array | 
| api | optional | Supported API framework values: 1: VPAID 1.0 2: VPAID 2.0 3: MRAID-1 4: ORMMA 5: MRAID-2 | [2] | array | 
| skip | optional | Indicates if the player will allow the video to be skipped, where 0 = no, 1 = yes. | 1 | integer | 
| skipafter | optional | Number of seconds a video must play before skipping is enabled; only applicable if the ad is skippable. | 6 | integer | 
| minbitrate | optional | Minimum bit rate in Kbps. | 300 | integer | 
| maxbitrate | optional | Maximum bit rate in Kbps. | 9600 | integer | 
| placement | recommended | Placement type for the impression. (see OpenRTB v2.5 section 5.9 for options) | 1 | integer | 
| plcmt | recommended | Placement type for the impression. (See OpenRTB v2.6 Plcmt Subtypes - Video) | 1 | integer | 
Example:
var videoAdUnit = {
    code: 'video',
    mediaTypes: {
        video: {
            context: 'instream',
            playerSize: [640, 480],
            mimes: ['video/mp4']
            protocols: [2, 3, 5, 6],
            api: [2],
            maxduration: 30,
            minduration: 0,
        }
    },
    bids: [{
        bidder: 'michao',
        params: {
            site: 123,
            placement: "456",
        }
    }]
};
Out-stream Video
Michao adapter supports outstream video renderer in two ways: using your own renderer or using ours on Prebid.org.
Native
Example:
var nativeAdUnit = {
  code: "myNativeAdUnit",
  mediaTypes: {
    native: {
      ortb: {
        assets: [
          {
            id: 1,
            required: 1,
            img: {
              type: 3,
              w: 150,
              h: 50,
            },
          },
          {
            id: 2,
            required: 1,
            video: {
              minduration: 0,
              maxduration: 120,
              mimes: ["video/mp4"],
              protocols: [8],
            },
          },
        ],
      },
    },
  },
  bids: [
    {
      bidder: "michao",
      params: {
        site: 123,
        placement: "456",
      },
    },
  ],
};
"Send All Bids" Ad Server Keys
These are the bidder-specific keys that would be targeted within GAM in a Send-All-Bids scenario. GAM truncates keys to 20 characters.| hb_pb_michao | hb_bidder_michao | hb_adid_michao | 
| hb_size_michao | hb_source_michao | hb_format_michao | 
| hb_cache_host_michao | hb_cache_id_michao | hb_uuid_michao | 
| hb_cache_path_michao | hb_deal_michao |