diff --git a/src/main/resources/bidder-config/adverxo.yaml b/src/main/resources/bidder-config/adverxo.yaml
index b363a70bc08..a66f73f6409 100644
--- a/src/main/resources/bidder-config/adverxo.yaml
+++ b/src/main/resources/bidder-config/adverxo.yaml
@@ -31,6 +31,20 @@ adapters:
url: https://taetee.com/usync?type=image&gdpr={{gdpr}}&consent={{gdpr_consent}}&us_privacy={{us_privacy}}&redirect={{redirect_url}}
uid-macro: '$UID'
support-cors: false
+ harrenmedia:
+ enabled: false
+ endpoint: https://harrenmedia.pbsadverxo.com/auction?id={{adUnitId}}&auth={{auth}}
+ usersync:
+ enabled: false
+ cookie-family-name: harrenmedia
+ iframe:
+ url: https://hmidssp.com/usync?type=iframe&gdpr={{gdpr}}&consent={{gdpr_consent}}&us_privacy={{us_privacy}}&redirect={{redirect_url}}
+ uid-macro: '$UID'
+ support-cors: false
+ redirect:
+ url: https://hmidssp.com/usync?type=image&gdpr={{gdpr}}&consent={{gdpr_consent}}&us_privacy={{us_privacy}}&redirect={{redirect_url}}
+ uid-macro: '$UID'
+ support-cors: false
meta-info:
maintainer-email: developer@adverxo.com
app-media-types:
diff --git a/src/test/java/org/prebid/server/it/HarrenmediaTest.java b/src/test/java/org/prebid/server/it/HarrenmediaTest.java
new file mode 100644
index 00000000000..245ce50ecfc
--- /dev/null
+++ b/src/test/java/org/prebid/server/it/HarrenmediaTest.java
@@ -0,0 +1,34 @@
+package org.prebid.server.it;
+
+import io.restassured.response.Response;
+import org.json.JSONException;
+import org.junit.jupiter.api.Test;
+import org.prebid.server.model.Endpoint;
+
+import java.io.IOException;
+
+import static com.github.tomakehurst.wiremock.client.WireMock.aResponse;
+import static com.github.tomakehurst.wiremock.client.WireMock.equalToJson;
+import static com.github.tomakehurst.wiremock.client.WireMock.post;
+import static com.github.tomakehurst.wiremock.client.WireMock.urlPathEqualTo;
+import static java.util.Collections.singletonList;
+
+public class HarrenmediaTest extends IntegrationTest {
+
+ @Test
+ public void openrtb2AuctionShouldRespondWithBidsFromTheHarrenmedia() throws IOException, JSONException {
+ // given
+ WIRE_MOCK_RULE.stubFor(post(urlPathEqualTo("/harrenmedia-exchange"))
+ .withRequestBody(equalToJson(jsonFrom("openrtb2/harrenmedia/test-harrenmedia-bid-request.json"),
+ true, true))
+ .willReturn(aResponse().withBody(jsonFrom("openrtb2/harrenmedia/test-harrenmedia-bid-response.json"))));
+
+ // when
+ final Response response = responseFor("openrtb2/harrenmedia/test-auction-harrenmedia-request.json",
+ Endpoint.openrtb2_auction);
+
+ // then
+ assertJsonEquals("openrtb2/harrenmedia/test-auction-harrenmedia-response.json", response,
+ singletonList("harrenmedia"));
+ }
+}
diff --git a/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-request.json b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-request.json
new file mode 100644
index 00000000000..a0dcec6bdf2
--- /dev/null
+++ b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-request.json
@@ -0,0 +1,34 @@
+{
+ "id": "test-auction-request",
+ "imp": [
+ {
+ "id": "imp1",
+ "banner": {
+ "format": [
+ {
+ "w": 300,
+ "h": 250
+ }
+ ]
+ },
+ "ext": {
+ "harrenmedia": {
+ "adUnitId": 1,
+ "auth": "123456"
+ }
+ }
+ }
+ ],
+ "site": {
+ "page": "http://testpage.com"
+ },
+ "device": {
+ "ua": "Mozilla/5.0"
+ },
+ "tmax": 5000,
+ "regs": {
+ "ext": {
+ "gdpr": 0
+ }
+ }
+}
diff --git a/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-response.json b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-response.json
new file mode 100644
index 00000000000..f8e8f3e1a32
--- /dev/null
+++ b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-auction-harrenmedia-response.json
@@ -0,0 +1,43 @@
+{
+ "id": "test-auction-request",
+ "seatbid": [
+ {
+ "seat": "harrenmedia",
+ "group": 0,
+ "bid": [
+ {
+ "id": "bid1",
+ "impid": "imp1",
+ "price": 1.23,
+ "adm": "",
+ "nurl": "https://example.com/win?price=1.23",
+ "crid": "creative1",
+ "w": 300,
+ "h": 250,
+ "exp": 300,
+ "mtype": 1,
+ "ext": {
+ "origbidcpm": 1.23,
+ "origbidcur": "USD",
+ "prebid": {
+ "type": "banner",
+ "meta": {
+ "adaptercode": "harrenmedia"
+ }
+ }
+ }
+ }
+ ]
+ }
+ ],
+ "cur": "USD",
+ "ext": {
+ "responsetimemillis": {
+ "harrenmedia": 0
+ },
+ "tmaxrequest": 5000,
+ "prebid": {
+ "auctiontimestamp": 0
+ }
+ }
+}
diff --git a/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-request.json b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-request.json
new file mode 100644
index 00000000000..b1a0a5c0c8b
--- /dev/null
+++ b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-request.json
@@ -0,0 +1,51 @@
+{
+ "id": "test-auction-request",
+ "imp": [
+ {
+ "id": "imp1",
+ "banner": {
+ "format": [
+ {
+ "w": 300,
+ "h": 250
+ }
+ ]
+ },
+ "secure": 1,
+ "ext": {
+ "tid": "${json-unit.any-string}",
+ "bidder": {
+ "adUnitId": 1,
+ "auth": "123456"
+ }
+ }
+ }
+ ],
+ "site": {
+ "domain": "testpage.com",
+ "page": "http://testpage.com",
+ "publisher": {
+ "domain": "testpage.com"
+ },
+ "ext": {
+ "amp": 0
+ }
+ },
+ "device": {
+ "ua": "Mozilla/5.0",
+ "ip": "193.168.244.1"
+ },
+ "at": 1,
+ "tmax": "${json-unit.any-number}",
+ "cur": [
+ "USD"
+ ],
+ "source": {
+ "tid": "${json-unit.any-string}"
+ },
+ "regs": {
+ "ext": {
+ "gdpr": 0
+ }
+ }
+}
diff --git a/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-response.json b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-response.json
new file mode 100644
index 00000000000..e6bfe69ccd0
--- /dev/null
+++ b/src/test/resources/org/prebid/server/it/openrtb2/harrenmedia/test-harrenmedia-bid-response.json
@@ -0,0 +1,40 @@
+{
+ "id": "test-auction-request",
+ "seatbid": [
+ {
+ "seat": "harrenmedia",
+ "group": 0,
+ "bid": [
+ {
+ "id": "bid1",
+ "impid": "imp1",
+ "price": 1.23,
+ "adm": "",
+ "nurl": "https://example.com/win?price=1.23",
+ "crid": "creative1",
+ "w": 300,
+ "h": 250,
+ "exp": 300,
+ "mtype": 1,
+ "ext": {
+ "origbidcpm": 1.23,
+ "origbidcur": "USD",
+ "prebid": {
+ "type": "banner"
+ }
+ }
+ }
+ ]
+ }
+ ],
+ "cur": "USD",
+ "ext": {
+ "responsetimemillis": {
+ "bidsmind": 0
+ },
+ "tmaxrequest": 5000,
+ "prebid": {
+ "auctiontimestamp": 0
+ }
+ }
+}
diff --git a/src/test/resources/org/prebid/server/it/test-application.properties b/src/test/resources/org/prebid/server/it/test-application.properties
index 7d5724b2a69..01ede6f3314 100644
--- a/src/test/resources/org/prebid/server/it/test-application.properties
+++ b/src/test/resources/org/prebid/server/it/test-application.properties
@@ -72,6 +72,8 @@ adapters.adverxo.aliases.adport.enabled=true
adapters.adverxo.aliases.adport.endpoint=http://localhost:8090/adport-exchange
adapters.adverxo.aliases.bidsmind.enabled=true
adapters.adverxo.aliases.bidsmind.endpoint=http://localhost:8090/bidsmind-exchange
+adapters.adverxo.aliases.harrenmedia.enabled=true
+adapters.adverxo.aliases.harrenmedia.endpoint=http://localhost:8090/harrenmedia-exchange
adapters.adview.enabled=true
adapters.adview.endpoint=http://localhost:8090/adview-exchange?accountId={{AccountId}}
adapters.adprime.enabled=true