diff --git a/src/main/java/org/prebid/server/bidder/alkimi/AlkimiBidder.java b/src/main/java/org/prebid/server/bidder/alkimi/AlkimiBidder.java index 03a05d1b1aa..f1a48242f63 100644 --- a/src/main/java/org/prebid/server/bidder/alkimi/AlkimiBidder.java +++ b/src/main/java/org/prebid/server/bidder/alkimi/AlkimiBidder.java @@ -67,13 +67,16 @@ private ExtImpAlkimi parseImpExt(Imp imp) { private Imp updateImp(Imp imp, ExtImpAlkimi extImpAlkimi) { final Price bidFloorPrice = Price.of(imp.getBidfloorcur(), imp.getBidfloor()); + final ObjectNode newExt = imp.getExt().deepCopy(); + newExt.replace("bidder", makeImpExt(imp, extImpAlkimi)); + return imp.toBuilder() .bidfloor(BidderUtil.isValidPrice(bidFloorPrice) ? bidFloorPrice.getValue() : extImpAlkimi.getBidFloor()) .instl(extImpAlkimi.getInstl()) .exp(extImpAlkimi.getExp()) - .ext(makeImpExt(imp, extImpAlkimi)) + .ext(newExt) .build(); } @@ -82,7 +85,7 @@ private ObjectNode makeImpExt(Imp imp, ExtImpAlkimi extImpAlkimi) { extBuilder.adUnitCode(imp.getId()); - return mapper.mapper().valueToTree(ExtPrebid.of(null, extBuilder.build())); + return mapper.mapper().valueToTree(extBuilder.build()); } @Override diff --git a/src/test/java/org/prebid/server/bidder/alkimi/AlkimiBidderTest.java b/src/test/java/org/prebid/server/bidder/alkimi/AlkimiBidderTest.java index 26f40393f31..b794156db3f 100644 --- a/src/test/java/org/prebid/server/bidder/alkimi/AlkimiBidderTest.java +++ b/src/test/java/org/prebid/server/bidder/alkimi/AlkimiBidderTest.java @@ -25,6 +25,7 @@ import java.math.BigDecimal; import java.util.Collections; import java.util.List; +import java.util.Map; import java.util.function.Function; import static java.util.Collections.singletonList; @@ -109,9 +110,10 @@ private Banner expectedBanner() { } private ObjectNode expectedBannerExt() { - return mapper.valueToTree(ExtPrebid.of( - null, - ExtImpAlkimi.builder() + return mapper.valueToTree(Map.of( + "tid", "12345", + "gpid", "300x250", + "bidder", ExtImpAlkimi.builder() .token(PUB_TOKEN) .bidFloor(BigDecimal.valueOf(0.2)) .instl(1) @@ -252,9 +254,10 @@ private static Imp givenBannerImp(Function impCu .h(250) .build()) ).build()) - .ext(mapper.valueToTree(ExtPrebid.of( - null, - ExtImpAlkimi.builder() + .ext(mapper.valueToTree(Map.of( + "tid", "12345", + "gpid", "300x250", + "bidder", ExtImpAlkimi.builder() .token(PUB_TOKEN) .bidFloor(BigDecimal.valueOf(0.2)) .instl(1) diff --git a/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-alkimi-bid-request.json b/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-alkimi-bid-request.json index 812912a1350..90c8e1f416c 100644 --- a/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-alkimi-bid-request.json +++ b/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-alkimi-bid-request.json @@ -13,6 +13,8 @@ }, "bidfloor": 0.5, "ext": { + "tid": "${json-unit.any-string}", + "gpid": "640x480", "bidder": { "token": "XXX", "bidFloor": 0.5, diff --git a/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-auction-alkimi-request.json b/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-auction-alkimi-request.json index 01f1964b9aa..b0bfd234de2 100644 --- a/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-auction-alkimi-request.json +++ b/src/test/resources/org/prebid/server/it/openrtb2/alkimi/test-auction-alkimi-request.json @@ -11,6 +11,7 @@ "h": 480 }, "ext": { + "gpid": "640x480", "alkimi": { "bidFloor": 0.5, "token": "XXX"