Adswag
Features
| Bidder Code | adswag | Prebid.org Member | no |
|---|---|---|---|
| Prebid.js Adapter | yes | Prebid Server Adapter | yes |
| Media Types | display, video | Multi Format Support | will-bid-on-any |
| TCF-EU Support | yes | IAB GVL ID | 1417 |
| GPP Support | tcfeu | DSA Support | yes |
| USP/CCPA Support | no | COPPA Support | no |
| Supply Chain Support | yes | Demand Chain Support | no |
| Safeframes OK | yes | Supports Deals | no |
| Floors Module Support | yes | First Party Data Support | yes |
| Endpoint Compression | check with bidder | ORTB Blocking Support | no |
| User IDs | none | Privacy Sandbox | check with bidder |
| Prebid Server App Support | yes |
Note
Maintainer contact: prebid@adswag.ai
The Adswag bid adapter connects a Prebid.js or Prebid Server auction to the Adswag bid endpoint. It is available client-side (Prebid.js) and server-side (Prebid Server, Go and Java), supporting banner, video (instream and outstream) and audio media types, including mixed-format ad units (the adapter bids on any valid media type in the unit); server-side, both site and app requests are supported. TCF (IAB Europe vendor 1417) and GPP consent strings are forwarded to the endpoint; the platform parses consent once at the edge. Consentless traffic is served contextually — no identifier is read, written, or forwarded without consent.
Publisher-side, the adapter is fail-open: any error results in a clean no-bid and never blocks the page or the auction.
Outstream note: the adapter does not bundle an outstream renderer.
Outstream video is publisher-rendered only: your page (or a renderer you
attach) must play the returned VAST. Instream video returns standard
vastXml/vastUrl for your video player / ad server integration.
Audio note: audio units are supported via mediaTypes.audio
(FEATURES.AUDIO build flag; mimes required) or, for setups whose ad
server needs a video-typed unit, via ortb2Imp.audio. Prebid has no
built-in audio renderer: hand the returned VAST to your audio player.
Currency note: Adswag bids in EUR (currency: "EUR" on every bid).
Publishers whose ad-server currency is not EUR should include the Prebid
currency module.
First-party data: publisher FPD set via setConfig({ ortb2 }) is read
from the bid request — the site (page/domain/content), device and regs
objects are forwarded to the endpoint, as are ortb2Imp.ext.gpid,
ortb2Imp.ext.tid and ortb2Imp.ext.data.pbadslot per impression.
From ortb2.user, only extended identifiers are forwarded (user.eids /
user.ext.eids, merged with the userId modules’ userIdAsEids and gated on
consent). Other user FPD — user.data, user.keywords, user.yob,
user.gender and the like — is deliberately not sent: Adswag does not
consume audience data attached to the user object, and forwarding it would
move publisher audience signal across a consent boundary for fields the
endpoint never reads. Contextual and inventory-level audience signal belongs
on site / ortb2Imp instead, both of which are forwarded in full.
No OpenRTB blocking parameters (bcat/badv/battr/bapp) are consumed.
Bid Params
| Name | Scope | Description | Example | Type |
|---|---|---|---|---|
publisherId |
required | Adswag publisher id (issued at onboarding). Resolves the canonical publisher at the edge. | "pub-nl-news-1" |
string |
placementId |
optional | Explicit placement override. Omit to let Adswag discover the placement from GPID/adUnitCode. | "plc-homepage-mrec" |
string |
bidFloor |
optional | Static floor (EUR) used only when the Prebid Price Floors module is not configured. | 0.50 |
number |
video |
optional | Overrides for mediaTypes.video ad-unit params (Prebid video-params convention). |
{ maxduration: 15 } |
object |
Placement identity on prebid paths is publisher-id-only by design: supply
the standardized GPID (ortb2Imp.ext.gpid) via the GPID module (or rely on the
adUnitCode) and Adswag discovers and curates the placement. Hand-maintained
placement ids are not required.
Video params
Video parameters are read from mediaTypes.video on the ad unit;
params.video on the bid overrides them. mimes is required for a video
bid. The adapter reads the standard Prebid video params (mimes,
minduration, maxduration, protocols, startdelay, placement,
plcmt, skip, skipafter, minbitrate, maxbitrate, delivery,
playbackmethod, api, linearity, playerSize, context) and forwards
the subset the Adswag platform consumes (mimes, minduration,
maxduration, protocols, playerSize → w/h, plcmt — derived from
context when not set explicitly — linearity, skip, skipafter).
Audio params
Audio parameters are read from mediaTypes.audio (or ortb2Imp.audio).
mimes is required for an audio bid; the platform additionally consumes
minduration, maxduration, minbitrate, maxbitrate, protocols and
feed.
Example ad units
var adUnits = [
{
code: "div-gpt-ad-homepage-mrec",
mediaTypes: {
banner: {
sizes: [[300, 250], [300, 600]]
}
},
ortb2Imp: {
ext: { gpid: "/1234/homepage#mrec" }
},
bids: [
{
bidder: "adswag",
params: {
publisherId: "pub-nl-news-1"
}
}
]
},
{
code: "video-player-1",
mediaTypes: {
video: {
context: "instream",
playerSize: [[640, 480]],
mimes: ["video/mp4"],
minduration: 5,
maxduration: 30,
protocols: [2, 3, 7, 8]
}
},
ortb2Imp: {
ext: { gpid: "/1234/article#player" }
},
bids: [
{
bidder: "adswag",
params: {
publisherId: "pub-nl-news-1"
}
}
]
},
{
code: "audio-slot-1",
mediaTypes: {
audio: {
mimes: ["audio/mpeg", "audio/mp4"],
minduration: 10,
maxduration: 30,
protocols: [2, 3, 7, 8]
}
},
bids: [
{
bidder: "adswag",
params: {
publisherId: "pub-nl-news-1"
}
}
]
}
];
Privacy / consent / identity
- TCF v2.2: the adapter forwards
gdprConsent.consentStringandgdprConsent.gdprApplies. Ensure your CMP includes Adswag (vendor 1417). - GPP:
gppConsentis forwarded unparsed. - User IDs: with consent (vendor 1417), the adapter forwards eids from
Prebid userId modules and publisher first-party data (
ortb2), and maintains an Adswag first-party id (adswag_uuid, eid sourceadswag.ai) through Prebid’s StorageManager — respectingdeviceAccessand TCF purpose-1 enforcement. Storage use is declared in the IAB GVL device-storage disclosure for vendor 1417. - User syncs: registered via
getUserSyncsonly (one iframe or image sync per auction, onev.adswag.ai), honoring youruserSyncconfiguration and GDPR/GPP/USP consent. No sync is registered for consentless traffic. - Consentless traffic is served contextually: no identifiers are read, written, or forwarded.
"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_adswag |
hb_bidder_adswag |
hb_adid_adswag |
hb_size_adswag |
hb_source_adswag |
hb_format_adswag |
hb_cache_host_adswag |
hb_cache_id_adswag |
hb_uuid_adswag |
hb_cache_path_adswag |
hb_deal_adswag |