diff --git a/src/main/java/org/prebid/server/spring/config/bidder/util/BidderDepsAssembler.java b/src/main/java/org/prebid/server/spring/config/bidder/util/BidderDepsAssembler.java index 415a20f8ee2..d81bbc02d26 100644 --- a/src/main/java/org/prebid/server/spring/config/bidder/util/BidderDepsAssembler.java +++ b/src/main/java/org/prebid/server/spring/config/bidder/util/BidderDepsAssembler.java @@ -21,6 +21,7 @@ import org.prebid.server.spring.config.bidder.model.MetaInfo; import org.prebid.server.spring.config.bidder.model.usersync.UsersyncConfigurationProperties; import org.prebid.server.spring.env.YamlPropertySourceFactory; +import org.prebid.server.util.ObjectUtil; import org.springframework.boot.context.properties.bind.Binder; import org.springframework.boot.context.properties.source.MapConfigurationPropertySource; import org.springframework.core.io.InputStreamResource; @@ -210,11 +211,17 @@ private CFG configurationAsPropertiesObject(Object configuration, Class targe @SuppressWarnings({"unchecked", "rawtypes"}) private CFG mergeConfigurations(CFG aliasConfiguration, CFG coreConfiguration) { try { + final Integer aliasVendorId = ObjectUtil.getIfNotNull( + aliasConfiguration.getMetaInfo(), MetaInfo::getVendorId); final JsonNode mergedNode = JsonMergePatch .fromJson(MAPPER.valueToTree(aliasConfiguration)) .apply(MAPPER.valueToTree(coreConfiguration)); - return (CFG) MAPPER.treeToValue(mergedNode, (Class) coreConfiguration.getSelfClass()); + final CFG mergedConfiguration = (CFG) MAPPER.treeToValue( + mergedNode, (Class) coreConfiguration.getSelfClass()); + mergedConfiguration.getMetaInfo().setVendorId(aliasVendorId); + + return mergedConfiguration; } catch (JsonPatchException | JsonProcessingException e) { throw new IllegalArgumentException("Exception occurred while merging alias configuration", e); } diff --git a/src/main/resources/bidder-config/adf.yaml b/src/main/resources/bidder-config/adf.yaml index f063341e4f0..3594c997400 100644 --- a/src/main/resources/bidder-config/adf.yaml +++ b/src/main/resources/bidder-config/adf.yaml @@ -2,7 +2,9 @@ adapters: adf: endpoint: https://adx.adform.net/adx/openrtb aliases: - adform: ~ + adform: + meta-info: + vendor-id: 50 meta-info: maintainer-email: scope.sspp@adform.com app-media-types: diff --git a/src/main/resources/bidder-config/adkernel.yaml b/src/main/resources/bidder-config/adkernel.yaml index 264f1f3d1db..cecac5feffd 100644 --- a/src/main/resources/bidder-config/adkernel.yaml +++ b/src/main/resources/bidder-config/adkernel.yaml @@ -3,8 +3,12 @@ adapters: endpoint: http://pbs.adksrv.com/hb?zone={ZoneId} endpoint-compression: gzip aliases: - rxnetwork: ~ - 152media: ~ + rxnetwork: + meta-info: + vendor-id: 0 + 152media: + meta-info: + vendor-id: 1111 xapads: enabled: false meta-info: diff --git a/src/main/resources/bidder-config/admatic.yaml b/src/main/resources/bidder-config/admatic.yaml index 3085797000c..a65d6502441 100644 --- a/src/main/resources/bidder-config/admatic.yaml +++ b/src/main/resources/bidder-config/admatic.yaml @@ -6,24 +6,30 @@ adapters: enabled: false meta-info: maintainer-email: publisher@adtarget.com.tr - vendor-id: 779 + vendor-id: 779 pixad: enabled: false meta-info: maintainer-email: prebid@pixad.com.tr + vendor-id: 1281 monetixads: enabled: false meta-info: maintainer-email: team@monetixads.com + vendor-id: 1281 admaticde: enabled: false + meta-info: + vendor-id: 1281 yobee: enabled: false meta-info: maintainer-email: adops@yobee.it + vendor-id: 1281 netaddiction: meta-info: maintainer-email: publishers-support@netaddiction.it + vendor-id: 1281 meta-info: maintainer-email: prebid@admatic.com.tr app-media-types: diff --git a/src/main/resources/bidder-config/adtelligent.yaml b/src/main/resources/bidder-config/adtelligent.yaml index faeb18c9bdf..8e4775294c0 100644 --- a/src/main/resources/bidder-config/adtelligent.yaml +++ b/src/main/resources/bidder-config/adtelligent.yaml @@ -17,25 +17,25 @@ adapters: - video site-media-types: - video - vendor-id: 0 + vendor-id: 410 janet: enabled: false endpoint: http://ghb.bidder.jmgads.com/pbs/ortb meta-info: maintainer-email: info@thejmg.com - vendor-id: 0 + vendor-id: 410 pgam: enabled: false endpoint: http://ghb.pgamssp.com/pbs/ortb meta-info: maintainer-email: ppatel@pgammedia.com - vendor-id: 0 + vendor-id: 1353 copper6: enabled: false endpoint: http://ghb.app.copper6.com/pbs/ortb meta-info: maintainer-email: info@copper6.com - vendor-id: 0 + vendor-id: 1356 indicue: enabled: false endpoint: http://ghb.console.indicue.com/pbs/ortb diff --git a/src/main/resources/bidder-config/adverxo.yaml b/src/main/resources/bidder-config/adverxo.yaml index c29792ca49f..b4fd4c5cedb 100644 --- a/src/main/resources/bidder-config/adverxo.yaml +++ b/src/main/resources/bidder-config/adverxo.yaml @@ -6,6 +6,8 @@ adapters: adport: enabled: false endpoint: https://adport.pbsadverxo.com/auction?id={adUnitId}&auth={auth} + meta-info: + vendor-id: 0 usersync: enabled: false cookie-family-name: adport @@ -20,6 +22,8 @@ adapters: bidsmind: enabled: false endpoint: https://bidsmind.pbsadverxo.com/auction?id={adUnitId}&auth={auth} + meta-info: + vendor-id: 0 usersync: enabled: false cookie-family-name: bidsmind @@ -34,6 +38,8 @@ adapters: harrenmedia: enabled: false endpoint: https://harrenmedia.pbsadverxo.com/auction?id={adUnitId}&auth={auth} + meta-info: + vendor-id: 0 usersync: enabled: false cookie-family-name: harrenmedia diff --git a/src/main/resources/bidder-config/apacdex.yaml b/src/main/resources/bidder-config/apacdex.yaml index 10413148204..4f5126dbf91 100644 --- a/src/main/resources/bidder-config/apacdex.yaml +++ b/src/main/resources/bidder-config/apacdex.yaml @@ -3,8 +3,12 @@ adapters: modifying-vast-xml-allowed: false endpoint: http://useast.quantumdex.io/auction/pbs aliases: - quantumdex: ~ - valueimpression: ~ + quantumdex: + meta-info: + vendor-id: 0 + valueimpression: + meta-info: + vendor-id: 0 meta-info: maintainer-email: support@apacdex.com app-media-types: diff --git a/src/main/resources/bidder-config/appnexus.yaml b/src/main/resources/bidder-config/appnexus.yaml index 84bbd0950e5..fd469b3633b 100644 --- a/src/main/resources/bidder-config/appnexus.yaml +++ b/src/main/resources/bidder-config/appnexus.yaml @@ -5,6 +5,7 @@ adapters: mediafuse: meta-info: maintainer-email: support@mediafuse.com + vendor-id: 32 meta-info: maintainer-email: prebid@microsoft.com app-media-types: diff --git a/src/main/resources/bidder-config/aso.yaml b/src/main/resources/bidder-config/aso.yaml index 936d8bded8a..0e702c70b66 100644 --- a/src/main/resources/bidder-config/aso.yaml +++ b/src/main/resources/bidder-config/aso.yaml @@ -7,6 +7,7 @@ adapters: endpoint: https://srv.datacygnal.io/pbs/bidder?zid={ZoneID} meta-info: maintainer-email: contact@bcm.ltd + vendor-id: 0 usersync: cookie-family-name: bcmint redirect: @@ -18,6 +19,7 @@ adapters: endpoint: https://srv.bidgx.com/pbs/bidder?zid={ZoneID} meta-info: maintainer-email: aso@bidgency.com + vendor-id: 0 usersync: cookie-family-name: bidagency redirect: @@ -29,6 +31,7 @@ adapters: endpoint: https://srv.kntxy.com/pbs/bidder?zid={ZoneID} meta-info: maintainer-email: ssp@kuantyx.com + vendor-id: 0 usersync: cookie-family-name: kuantyx redirect: diff --git a/src/main/resources/bidder-config/beyondmedia.yaml b/src/main/resources/bidder-config/beyondmedia.yaml index 7c5859a1c39..e187f64d85a 100644 --- a/src/main/resources/bidder-config/beyondmedia.yaml +++ b/src/main/resources/bidder-config/beyondmedia.yaml @@ -4,6 +4,8 @@ adapters: aliases: andbeyondmedia: endpoint: http://backend.andbeyond.media/pserver + meta-info: + vendor-id: 0 meta-info: maintainer-email: sysengg@andbeyond.media app-media-types: diff --git a/src/main/resources/bidder-config/colossus.yaml b/src/main/resources/bidder-config/colossus.yaml index 6b5b05f6425..555af9c08b0 100644 --- a/src/main/resources/bidder-config/colossus.yaml +++ b/src/main/resources/bidder-config/colossus.yaml @@ -5,6 +5,8 @@ adapters: aliases: colossusssp: enabled: false + meta-info: + vendor-id: 0 meta-info: maintainer-email: support@colossusmediassp.com app-media-types: diff --git a/src/main/resources/bidder-config/elementaltv.yaml b/src/main/resources/bidder-config/elementaltv.yaml index 0d6a83cf6a9..f5e3fc8d8d8 100644 --- a/src/main/resources/bidder-config/elementaltv.yaml +++ b/src/main/resources/bidder-config/elementaltv.yaml @@ -3,7 +3,9 @@ adapters: endpoint: https://pbs.elementaltv.io/ads/processHeaderBid/{AdUnit} ortb-version: "2.6" aliases: - adoppler: ~ + adoppler: + meta-info: + vendor-id: 0 meta-info: maintainer-email: support@elementaltv.com app-media-types: diff --git a/src/main/resources/bidder-config/emxdigital.yaml b/src/main/resources/bidder-config/emxdigital.yaml index 84d822aa328..5cb063cf935 100644 --- a/src/main/resources/bidder-config/emxdigital.yaml +++ b/src/main/resources/bidder-config/emxdigital.yaml @@ -4,6 +4,8 @@ adapters: aliases: cadent_aperture_mx: enabled: false + meta-info: + vendor-id: 183 # CadentAperture only operates in North America geoscope: - USA diff --git a/src/main/resources/bidder-config/epsilon.yaml b/src/main/resources/bidder-config/epsilon.yaml index 9b0162d7b92..b0bb08e1a33 100644 --- a/src/main/resources/bidder-config/epsilon.yaml +++ b/src/main/resources/bidder-config/epsilon.yaml @@ -4,6 +4,8 @@ adapters: ortb-version: "2.6" aliases: conversant: + meta-info: + vendor-id: 24 usersync: cookie-family-name: conversant meta-info: diff --git a/src/main/resources/bidder-config/freewheelssp.yaml b/src/main/resources/bidder-config/freewheelssp.yaml index fb7e491855d..4806aa0bd8f 100644 --- a/src/main/resources/bidder-config/freewheelssp.yaml +++ b/src/main/resources/bidder-config/freewheelssp.yaml @@ -8,6 +8,8 @@ adapters: enabled: false endpoint: "https://prebid.v.fwmrm.net/ortb/ssp" endpoint-compression: gzip + meta-info: + vendor-id: 285 usersync: enabled: true cookie-family-name: fwssp diff --git a/src/main/resources/bidder-config/generic.yaml b/src/main/resources/bidder-config/generic.yaml index ef6e5f3fe56..27f522099f2 100644 --- a/src/main/resources/bidder-config/generic.yaml +++ b/src/main/resources/bidder-config/generic.yaml @@ -4,6 +4,8 @@ adapters: aliases: genericAlias: enabled: false + meta-info: + vendor-id: 0 adrino: enabled: false endpoint: https://prd-prebid-bidder.adrino.io/openrtb/bid diff --git a/src/main/resources/bidder-config/gothamads.yaml b/src/main/resources/bidder-config/gothamads.yaml index 9b4add5f93d..1cc2e2fe26b 100644 --- a/src/main/resources/bidder-config/gothamads.yaml +++ b/src/main/resources/bidder-config/gothamads.yaml @@ -7,6 +7,7 @@ adapters: endpoint: http://lb-east.intenze.co/?pass={AccountID} meta-info: maintainer-email: connect@intenze.co + vendor-id: 0 meta-info: maintainer-email: support@gothamads.com app-media-types: diff --git a/src/main/resources/bidder-config/imds.yaml b/src/main/resources/bidder-config/imds.yaml index 351243b2c70..b181e54d6e6 100644 --- a/src/main/resources/bidder-config/imds.yaml +++ b/src/main/resources/bidder-config/imds.yaml @@ -9,6 +9,8 @@ adapters: synacormedia: deprecated-names: null # Must re-declare as empty or the deprecation error in the response is incorrect endpoint: "https://pbs.technoratimedia.com/openrtb/bids/{AccountID}?src={SourceId}&adapter=synacormedia" + meta-info: + vendor-id: 0 endpoint: "https://pbs.technoratimedia.com/openrtb/bids/{AccountID}?src={SourceId}&adapter=imds" meta-info: maintainer-email: eng-demand@imds.tv diff --git a/src/main/resources/bidder-config/limelightDigital.yaml b/src/main/resources/bidder-config/limelightDigital.yaml index 249279d48a9..3ee8129698f 100644 --- a/src/main/resources/bidder-config/limelightDigital.yaml +++ b/src/main/resources/bidder-config/limelightDigital.yaml @@ -4,6 +4,8 @@ adapters: aliases: filmzie: enabled: false + meta-info: + vendor-id: 0 iionads: enabled: false endpoint: http://ads-pbs.iionads.com/openrtb/{PublisherID}?host={Host} @@ -12,6 +14,8 @@ adapters: evtech: enabled: false endpoint: http://ads-pbs.direct.e-volution.ai/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 usersync: enabled: true cookie-family-name: evtech @@ -26,38 +30,62 @@ adapters: adsyield: enabled: false endpoint: http://ads-pbs.open-adsyield.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 greedygame: enabled: false endpoint: http://ads-pbs.rtb-greedygame.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 appstock: enabled: false endpoint: http://ads-pbs.pre.vr-tb.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 xtrmqb: enabled: false endpoint: http://ads-pbs.ortb.tech/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 embimedia: enabled: false endpoint: http://ads-pbs.bidder-embi.media/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 tgm: enabled: false + meta-info: + vendor-id: 0 streamlyn: enabled: false endpoint: http://rtba.bidsxchange.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 streamvision: enabled: false endpoint: http://ads-pbs.adops.streamvisionmedia.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 orangeclickmedia: enabled: false endpoint: http://ads-pbs.scotty.orangeclickmedia.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 velonium: enabled: false endpoint: http://ads-pbs.adxvel.com/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 adtg_org: enabled: false endpoint: http://ads-pbs.rtb.adtarget.org/openrtb/{PublisherID}?host={Host} + meta-info: + vendor-id: 0 performist: enabled: false endpoint: http://ads-pbs.performserv.com/openrtb/{PublisherID} + meta-info: + vendor-id: 0 meta-info: maintainer-email: engineering@project-limelight.com app-media-types: diff --git a/src/main/resources/bidder-config/nexx360.yaml b/src/main/resources/bidder-config/nexx360.yaml index 234cbe35552..fbf0269423d 100644 --- a/src/main/resources/bidder-config/nexx360.yaml +++ b/src/main/resources/bidder-config/nexx360.yaml @@ -3,9 +3,15 @@ adapters: endpoint: http://fast.nexx360.io/prebid-server endpoint-compression: gzip aliases: - 1accord: ~ - easybid: ~ - prismassp: ~ + 1accord: + meta-info: + vendor-id: 965 + easybid: + meta-info: + vendor-id: 965 + prismassp: + meta-info: + vendor-id: 965 ybidder: enabled: false meta-info: diff --git a/src/main/resources/bidder-config/rubicon.yaml b/src/main/resources/bidder-config/rubicon.yaml index 8084f6d8f1f..98086b434d4 100644 --- a/src/main/resources/bidder-config/rubicon.yaml +++ b/src/main/resources/bidder-config/rubicon.yaml @@ -11,6 +11,8 @@ adapters: aliases: magnite: enabled: false + meta-info: + vendor-id: 52 ortb: multiformat-supported: true meta-info: diff --git a/src/main/resources/bidder-config/screencore.yaml b/src/main/resources/bidder-config/screencore.yaml index 87331bd4abd..7d471dbd1df 100644 --- a/src/main/resources/bidder-config/screencore.yaml +++ b/src/main/resources/bidder-config/screencore.yaml @@ -12,4 +12,4 @@ adapters: - video - native supported-vendors: - vendor-id: 0 + vendor-id: 1473 diff --git a/src/main/resources/bidder-config/seedingAlliance.yaml b/src/main/resources/bidder-config/seedingAlliance.yaml index 4b85eb1b14f..a29d728e753 100644 --- a/src/main/resources/bidder-config/seedingAlliance.yaml +++ b/src/main/resources/bidder-config/seedingAlliance.yaml @@ -17,6 +17,8 @@ adapters: finative: enabled: false endpoint: https://b.finative.cloud/cds/rtb/bid?ssp={AccountId} + meta-info: + vendor-id: 371 meta-info: maintainer-email: tech@seeding-alliance.de app-media-types: diff --git a/src/main/resources/bidder-config/showheroes.yaml b/src/main/resources/bidder-config/showheroes.yaml index b5fd953ac71..16fde8ec973 100644 --- a/src/main/resources/bidder-config/showheroes.yaml +++ b/src/main/resources/bidder-config/showheroes.yaml @@ -2,8 +2,12 @@ adapters: showheroes: endpoint: https://ads.viralize.tv/openrtb2/auction/ aliases: - showheroes-bs: ~ - showheroesBs: ~ + showheroes-bs: + meta-info: + vendor-id: 111 + showheroesBs: + meta-info: + vendor-id: 111 ortb-version: '2.6' meta-info: maintainer-email: tech@showheroes.com diff --git a/src/main/resources/bidder-config/smartadserver.yaml b/src/main/resources/bidder-config/smartadserver.yaml index 8db161d6ff9..f8b9d098fcd 100644 --- a/src/main/resources/bidder-config/smartadserver.yaml +++ b/src/main/resources/bidder-config/smartadserver.yaml @@ -6,6 +6,8 @@ adapters: aliases: equativ: enabled: false + meta-info: + vendor-id: 45 meta-info: maintainer-email: supply-partner-integration@equativ.com app-media-types: diff --git a/src/main/resources/bidder-config/smarthub.yaml b/src/main/resources/bidder-config/smarthub.yaml index 118742dc858..216805b2334 100644 --- a/src/main/resources/bidder-config/smarthub.yaml +++ b/src/main/resources/bidder-config/smarthub.yaml @@ -5,30 +5,48 @@ adapters: markapp: enabled: false endpoint: https://markapp-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 jdpmedia: enabled: false endpoint: https://jdpmedia-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 tredio: enabled: false endpoint: https://tredio-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 felixads: enabled: false endpoint: https://felixads-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 jambojar: enabled: false endpoint: https://jambojar-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 adinify: enabled: false endpoint: https://adinify-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 artechnology: enabled: false endpoint: https://artechnology-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 addigi: enabled: false endpoint: https://addigi-prebid.attekmi.com/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 radianfusion: enabled: false endpoint: https://radiantfusion-prebid.attekmi.co/pbserver/?seat={AccountID}&token={SourceId} + meta-info: + vendor-id: 0 meta-info: maintainer-email: prebid@attekmi.com app-media-types: diff --git a/src/main/resources/bidder-config/teal.yaml b/src/main/resources/bidder-config/teal.yaml index 3df79c3b9e8..6f9db90fd5a 100644 --- a/src/main/resources/bidder-config/teal.yaml +++ b/src/main/resources/bidder-config/teal.yaml @@ -9,6 +9,8 @@ adapters: aliases: tealplus: enabled: false + meta-info: + vendor-id: 1378 ortb: multiformat-supported: true meta-info: diff --git a/src/main/resources/bidder-config/teqblaze.yaml b/src/main/resources/bidder-config/teqblaze.yaml index 9c94eb26955..00d430c5fa6 100644 --- a/src/main/resources/bidder-config/teqblaze.yaml +++ b/src/main/resources/bidder-config/teqblaze.yaml @@ -7,6 +7,7 @@ adapters: endpoint: https://ssp.360playvid.com/pserver meta-info: maintainer-email: prebid@360playvid.com + vendor-id: 0 usersync: enabled: true cookie-family-name: 360playvid @@ -23,11 +24,13 @@ adapters: endpoint: https://us-east-ep.pinklion.io/pserver meta-info: maintainer-email: prebid@pinklion.io + vendor-id: 0 rocketlab: enabled: false endpoint: https://traffic1.rocketlab.ai/pserver meta-info: maintainer-email: support@rocketlab.ai + vendor-id: 0 usersync: enabled: true cookie-family-name: rocketlab @@ -42,6 +45,7 @@ adapters: endpoint: https://#{REGION}#.al-ad.com/pserver meta-info: maintainer-email: sdksupport@app-stock.com + vendor-id: 0 usersync: enabled: true cookie-family-name: appStockSSP @@ -56,7 +60,7 @@ adapters: gravite: enabled: false endpoint: https://node1-rtb.gravite.net/pserver - mata-info: + meta-info: maintainer-email: support@gravite.net vendor-id: 377 bidfuse: @@ -64,6 +68,7 @@ adapters: endpoint: https://bn.bidfuse.com/pserver meta-info: maintainer-email: support@bidfuse.com + vendor-id: 0 usersync: enabled: true cookie-family-name: bidfuse @@ -120,6 +125,7 @@ adapters: endpoint: https://east-backend.mycodemedia.com/pserver meta-info: maintainer-email: support-platform@mycodemedia.com + vendor-id: 0 usersync: enabled: true cookie-family-name: mycodemedia @@ -136,6 +142,7 @@ adapters: endpoint: https://tag-ssp.adsmovil.com/pserver meta-info: maintainer-email: prebid@adsmovil.com + vendor-id: 0 meta-info: maintainer-email: github@teqblaze.com app-media-types: diff --git a/src/main/resources/bidder-config/thetradedesk.yaml b/src/main/resources/bidder-config/thetradedesk.yaml index 74d6bf2176b..628e3b149fa 100644 --- a/src/main/resources/bidder-config/thetradedesk.yaml +++ b/src/main/resources/bidder-config/thetradedesk.yaml @@ -2,7 +2,9 @@ adapters: thetradedesk: endpoint: https://direct.adsrvr.org/bid/bidder/{SupplyId} aliases: - ttd: ~ + ttd: + meta-info: + vendor-id: 21 meta-info: maintainer-email: Prebid-Maintainers@thetradedesk.com app-media-types: diff --git a/src/main/resources/bidder-config/thirtythreeacross.yaml b/src/main/resources/bidder-config/thirtythreeacross.yaml index 24dd7e5e6b3..68873dbf640 100644 --- a/src/main/resources/bidder-config/thirtythreeacross.yaml +++ b/src/main/resources/bidder-config/thirtythreeacross.yaml @@ -7,8 +7,12 @@ adapters: aliases: 33across: enabled: false + meta-info: + vendor-id: 58 ttx: enabled: false + meta-info: + vendor-id: 58 meta-info: maintainer-email: headerbidding@33across.com app-media-types: diff --git a/src/main/resources/bidder-config/vidazoo.yaml b/src/main/resources/bidder-config/vidazoo.yaml index bc9ab022d63..35ddc17efec 100644 --- a/src/main/resources/bidder-config/vidazoo.yaml +++ b/src/main/resources/bidder-config/vidazoo.yaml @@ -4,10 +4,11 @@ adapters: aliases: omnidex: endpoint: https://exchange.omni-dex.io/openrtb/{ConnectionId} + meta-info: + vendor-id: 1463 usersync: enabled: true cookie-family-name: omnidex - vendor-id: 1463 iframe: url: https://sync.omni-dex.io/api/user/html/6810d0c7f163277130f3d7a9?pbs=true&gdpr={gdpr}&gdpr_consent={gdpr_consent}&us_privacy={us_privacy}&redirect={redirect_url}&gpp={gpp}&gpp_sid={gpp_sid} support-cors: false @@ -16,6 +17,7 @@ adapters: endpoint: https://exchange.tagoras.io/openrtb/{ConnectionId} meta-info: maintainer-email: prebid@tagoras.io + vendor-id: 1450 usersync: enabled: true cookie-family-name: tagoras diff --git a/src/main/resources/bidder-config/vungle.yaml b/src/main/resources/bidder-config/vungle.yaml index 0a9baf58403..53c20a2e959 100644 --- a/src/main/resources/bidder-config/vungle.yaml +++ b/src/main/resources/bidder-config/vungle.yaml @@ -4,6 +4,8 @@ adapters: aliases: liftoff: enabled: false + meta-info: + vendor-id: 0 modifying-vast-xml-allowed: true endpoint-compression: gzip meta-info: diff --git a/src/main/resources/bidder-config/xeworks.yaml b/src/main/resources/bidder-config/xeworks.yaml index bcb76eaebd6..b7521c9184b 100644 --- a/src/main/resources/bidder-config/xeworks.yaml +++ b/src/main/resources/bidder-config/xeworks.yaml @@ -7,6 +7,7 @@ adapters: endpoint: http://rtb.connektai.live/?pid={SourceId}&host={Host}&s=pbs meta-info: maintainer-email: adops@connekt.ai + vendor-id: 0 adipolo: enabled: false endpoint: http://rtb.adipolo.live?pid={SourceId}&host={Host}&pbs=1 diff --git a/src/main/resources/bidder-config/yahooAds.yaml b/src/main/resources/bidder-config/yahooAds.yaml index b3657144a21..8b2c77a28be 100644 --- a/src/main/resources/bidder-config/yahooAds.yaml +++ b/src/main/resources/bidder-config/yahooAds.yaml @@ -3,9 +3,15 @@ adapters: endpoint: https://s2shb.ssp.yahoo.com/admax/bid/partners/PBS ortb-version: "2.6" aliases: - yssp: ~ - yahoossp: ~ - yahooAdvertising: ~ + yssp: + meta-info: + vendor-id: 25 + yahoossp: + meta-info: + vendor-id: 25 + yahooAdvertising: + meta-info: + vendor-id: 25 meta-info: maintainer-email: prebid-tech-team@yahooinc.com app-media-types: diff --git a/src/test/groovy/org/prebid/server/functional/tests/AlternateBidderCodeSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/AlternateBidderCodeSpec.groovy index 1e2c67fad6f..8d3690e2deb 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/AlternateBidderCodeSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/AlternateBidderCodeSpec.groovy @@ -1339,8 +1339,9 @@ class AlternateBidderCodeSpec extends BaseSpec { def "PBS shouldn't discard bid when hard alias and alternate bidder allow bidder code"() { given: "PBS config with bidder" - def pbsConfig = AMX_CONFIG + ["adapters.amx.aliases.alias.enabled" : "true", - "adapters.amx.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = AMX_CONFIG + ["adapters.amx.aliases.alias.enabled" : "true", + "adapters.amx.aliases.alias.meta-info.vendor-id": "0", + "adapters.amx.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Default bid request with alias" @@ -1525,8 +1526,9 @@ class AlternateBidderCodeSpec extends BaseSpec { def "PBS should populate adapter code with requested bidder when conflict soft and hard alias and alternate bidder code"() { given: "PBS config with bidder" - def pbsConfig = AMX_CONFIG + ["adapters.amx.aliases.alias.enabled" : "true", - "adapters.amx.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = AMX_CONFIG + ["adapters.amx.aliases.alias.enabled" : "true", + "adapters.amx.aliases.alias.meta-info.vendor-id": "0", + "adapters.amx.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Bid request with amx bidder and targeting" diff --git a/src/test/groovy/org/prebid/server/functional/tests/BaseSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BaseSpec.groovy index 880b4ab5636..b50f9772eef 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BaseSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BaseSpec.groovy @@ -47,8 +47,9 @@ abstract class BaseSpec extends Specification implements ObjectMapperWrapper { private static final int DEFAULT_TARGETING_PRECISION = 1 private static final String DEFAULT_CACHE_DIRECTORY = "/app/prebid-server/data" protected static final String ALERT_GENERAL = "alerts.general" - protected static final Map GENERIC_ALIAS_CONFIG = ["adapters.generic.aliases.alias.enabled" : "true", - "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + protected static final Map GENERIC_ALIAS_CONFIG = ["adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id": "0", + "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] protected static final PrebidServerService defaultPbsService = pbsServiceFactory.getService([:]) @@ -116,7 +117,7 @@ abstract class BaseSpec extends Specification implements ObjectMapperWrapper { } private static LinkedHashMap> collectRequestByBidderName(String bidderName, - List bidderCalls) { + List bidderCalls) { [(bidderName): bidderCalls.collect { bidderCall -> decode(bidderCall.requestBody as String, BidRequest) }] } diff --git a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy index 4f841c484d7..b4d65043c95 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/BidderParamsSpec.groovy @@ -1022,6 +1022,7 @@ class BidderParamsSpec extends BaseSpec { given: "PBS with adapter configuration" def pbsConfig = [ "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id" : "0", "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": ""] def pbsService = pbsServiceFactory.getService(pbsConfig) @@ -1142,6 +1143,7 @@ class BidderParamsSpec extends BaseSpec { given: "PBS with adapter configuration" def pbsConfig = [ "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id" : "0", "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": "${USD},${EUR}".toString()] def pbsService = pbsServiceFactory.getService(pbsConfig) @@ -1187,6 +1189,7 @@ class BidderParamsSpec extends BaseSpec { given: "PBS with adapter configuration" def pbsConfig = [ "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id" : "0", "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), "adapters.generic.aliases.alias.meta-info.currency-accepted": "${JPY},${CHF}".toString()] def pbsService = pbsServiceFactory.getService(pbsConfig) @@ -1415,8 +1418,9 @@ class BidderParamsSpec extends BaseSpec { def "PBS should populate same code for adapter code when make call for generic hard code alias"() { given: "PBS config with bidder" - def pbsConfig = ["adapters.generic.aliases.alias.enabled" : "true", - "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = ["adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id": "0", + "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Default bid request with alias" @@ -1456,10 +1460,11 @@ class BidderParamsSpec extends BaseSpec { def "PBS should make call for alias when hard alias and demandSource specified"() { given: "PBS config with bidder" - def pbsConfig = ["adapters.amx.enabled" : "true", - "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), - "adapters.amx.aliases.alias.enabled" : "true", - "adapters.amx.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = ["adapters.amx.enabled" : "true", + "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), + "adapters.amx.aliases.alias.enabled" : "true", + "adapters.amx.aliases.alias.meta-info.vendor-id": "0", + "adapters.amx.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Default bid Request with generic and openx bidder within separate imps" @@ -1603,10 +1608,11 @@ class BidderParamsSpec extends BaseSpec { def "PBS should populate adapter code with requested bidder when conflict with soft and hard alias"() { given: "PBS config with bidder" - def pbsConfig = ["adapters.amx.enabled" : "true", - "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), - "adapters.amx.aliases.alias.enabled" : "true", - "adapters.amx.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = ["adapters.amx.enabled" : "true", + "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), + "adapters.amx.aliases.alias.enabled" : "true", + "adapters.amx.aliases.alias.meta-info.vendor-id": "0", + "adapters.amx.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Bid request with amx bidder and targeting" @@ -1646,10 +1652,11 @@ class BidderParamsSpec extends BaseSpec { def "PBS should populate adapter code with requested bidder when conflict with soft and generic hard alias"() { given: "PBS config with bidders" - def pbsConfig = ["adapters.amx.enabled" : "true", - "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), - "adapters.generic.aliases.alias.enabled" : "true", - "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + def pbsConfig = ["adapters.amx.enabled" : "true", + "adapters.amx.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), + "adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id": "0", + "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] def defaultPbsService = pbsServiceFactory.getService(pbsConfig) and: "Bid request with amx bidder and targeting" diff --git a/src/test/groovy/org/prebid/server/functional/tests/CookieSyncSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/CookieSyncSpec.groovy index b3f6adf3e64..a242ae9ae4e 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/CookieSyncSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/CookieSyncSpec.groovy @@ -110,6 +110,7 @@ class CookieSyncSpec extends BaseSpec { def bidderAlias = ALIAS def prebidServerService = pbsServiceFactory.getService(GENERIC_CONFIG + APPNEXUS_CONFIG + ["adapters.${GENERIC.value}.aliases.${bidderAlias.value}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.meta-info.vendor-id" : "0", "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.usersync.cookie-family-name": null]) and: "Default cookie sync request" @@ -141,6 +142,7 @@ class CookieSyncSpec extends BaseSpec { def prebidServerService = pbsServiceFactory.getService(GENERIC_CONFIG + ["adapters.${GENERIC.value}.usersync.redirect.url" : "$networkServiceContainer.rootUri/generic-usersync&redir={redirect_url}".toString(), "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.meta-info.vendor-id" : "0", "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.usersync.cookie-family-name": GENERIC.value]) and: "Cookie sync request for alias bidder" @@ -334,6 +336,7 @@ class CookieSyncSpec extends BaseSpec { def bidderAlias = ALIAS def prebidServerService = pbsServiceFactory.getService(GENERIC_CONFIG + ["adapters.${GENERIC.value}.aliases.${bidderAlias.value}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.meta-info.vendor-id" : "0", "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.usersync.cookie-family-name": null]) and: "Cookie sync request with 2 bidders" @@ -707,6 +710,7 @@ class CookieSyncSpec extends BaseSpec { def bidderAlias = ALIAS def prebidServerService = pbsServiceFactory.getService(PBS_CONFIG + ["adapters.${GENERIC.value}.aliases.${bidderAlias.value}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.meta-info.vendor-id" : "0", "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.usersync.cookie-family-name": null]) and: "Cookie sync request with 2 bidders" @@ -738,6 +742,7 @@ class CookieSyncSpec extends BaseSpec { def bidderAlias = ALIAS def prebidServerService = pbsServiceFactory.getService(PBS_CONFIG + ["adapters.${GENERIC.value}.aliases.${bidderAlias.value}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.meta-info.vendor-id" : "0", "adapters.${GENERIC.value}.aliases.${bidderAlias.value}.usersync.cookie-family-name": bidderAlias.value]) and: "Cookie sync request with 2 bidders" diff --git a/src/test/groovy/org/prebid/server/functional/tests/SecondaryBidderSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/SecondaryBidderSpec.groovy index d032747b0d7..593a7ccd878 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/SecondaryBidderSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/SecondaryBidderSpec.groovy @@ -28,8 +28,9 @@ class SecondaryBidderSpec extends BaseSpec { "adapters.${OPENX.value}.enabled" : "true", "adapters.${OPENX.value}.endpoint": "$networkServiceContainer.rootUri$OPENX_AUCTION_ENDPOINT".toString()] private static final Map GENERIC_ALIAS_CONFIG = [ - "adapters.${GENERIC.value}.aliases.${ALIAS}.enabled" : "true", - "adapters.${GENERIC.value}.aliases.${ALIAS}.endpoint": "$networkServiceContainer.rootUri$GENERIC_ALIAS_AUCTION_ENDPOINT".toString()] + "adapters.${GENERIC.value}.aliases.${ALIAS}.enabled" : "true", + "adapters.${GENERIC.value}.aliases.${ALIAS}.meta-info.vendor-id": "0", + "adapters.${GENERIC.value}.aliases.${ALIAS}.endpoint" : "$networkServiceContainer.rootUri$GENERIC_ALIAS_AUCTION_ENDPOINT".toString()] private static final String WARNING_TIME_OUT_MESSAGE = "secondary bidder timed out, auction proceeded" private static final Long RESPONSE_DELAY_MILLISECONDS = 5000 private static final Bidder openXBidder = new Bidder(networkServiceContainer, OPENX_AUCTION_ENDPOINT) diff --git a/src/test/groovy/org/prebid/server/functional/tests/SetUidSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/SetUidSpec.groovy index 27b69e74341..50d5be070c1 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/SetUidSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/SetUidSpec.groovy @@ -44,8 +44,9 @@ class SetUidSpec extends BaseSpec { private static final String GENERIC_COOKIE_FAMILY_NAME = GENERIC.value private static final String VENDOR_ID = PBSUtils.randomNumber as String private static final Map UID_COOKIES_CONFIG = ['setuid.number-of-uid-cookies': MAX_NUMBER_OF_UID_COOKIES.toString()] - private static final Map GENERIC_ALIAS_CONFIG = ["adapters.generic.aliases.alias.enabled" : "true", - "adapters.generic.aliases.alias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + private static final Map GENERIC_ALIAS_CONFIG = ["adapters.generic.aliases.alias.enabled" : "true", + "adapters.generic.aliases.alias.meta-info.vendor-id": "0", + "adapters.generic.aliases.alias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] private static final String TCF_ERROR_MESSAGE = "The gdpr_consent param prevents cookies from being saved" private static final int UNAVAILABLE_FOR_LEGAL_REASONS_CODE = 451 private static final Map PBS_CONFIG = diff --git a/src/test/groovy/org/prebid/server/functional/tests/bidder/openx/OpenxSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/bidder/openx/OpenxSpec.groovy index 97a0015cea5..65a54435d86 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/bidder/openx/OpenxSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/bidder/openx/OpenxSpec.groovy @@ -39,8 +39,9 @@ class OpenxSpec extends BaseSpec { private static final Map OPENX_CONFIG = ["adapters.openx.enabled" : "true", "adapters.openx.endpoint": "$networkServiceContainer.rootUri/auction".toString()] - private static final Map OPENX_ALIAS_CONFIG = ["adapters.openx.aliases.openxalias.enabled" : "true", - "adapters.openx.aliases.openxalias.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + private static final Map OPENX_ALIAS_CONFIG = ["adapters.openx.aliases.openxalias.enabled" : "true", + "adapters.openx.aliases.openxalias.meta-info.vendor-id": "0", + "adapters.openx.aliases.openxalias.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] @Shared PrebidServerService pbsService = pbsServiceFactory.getService(OPENX_CONFIG) diff --git a/src/test/groovy/org/prebid/server/functional/tests/module/pbruleengine/RuleEngineBaseSpec.groovy b/src/test/groovy/org/prebid/server/functional/tests/module/pbruleengine/RuleEngineBaseSpec.groovy index bfc73c8de37..6c55a65acf5 100644 --- a/src/test/groovy/org/prebid/server/functional/tests/module/pbruleengine/RuleEngineBaseSpec.groovy +++ b/src/test/groovy/org/prebid/server/functional/tests/module/pbruleengine/RuleEngineBaseSpec.groovy @@ -83,8 +83,9 @@ abstract class RuleEngineBaseSpec extends ModuleBaseSpec { protected static final Map AMX_CONFIG = ["adapters.${AMX}.enabled" : "true", "adapters.${AMX}.endpoint" : "$networkServiceContainer.rootUri/auction".toString(), "adapters.${AMX}.meta-info.vendor-id": AMX_VENDOR_ID as String] - protected static final Map OPENX_ALIAS_CONFIG = ["adapters.${OPENX}.aliases.${OPENX_ALIAS}.enabled" : "true", - "adapters.${OPENX}.aliases.${OPENX_ALIAS}.endpoint": "$networkServiceContainer.rootUri/auction".toString()] + protected static final Map OPENX_ALIAS_CONFIG = ["adapters.${OPENX}.aliases.${OPENX_ALIAS}.enabled" : "true", + "adapters.${OPENX}.aliases.${OPENX_ALIAS}.meta-info.vendor-id": "0", + "adapters.${OPENX}.aliases.${OPENX_ALIAS}.endpoint" : "$networkServiceContainer.rootUri/auction".toString()] protected static final String CONFIG_DATA_CENTER = PBSUtils.randomString private static final String USER_SYNC_URL = "$networkServiceContainer.rootUri/generic-usersync" private static final Map GENERIC_CONFIG = [