diff --git a/adapters/criteo/params_test.go b/adapters/criteo/params_test.go index fd63e582b6c..240eeea43af 100644 --- a/adapters/criteo/params_test.go +++ b/adapters/criteo/params_test.go @@ -48,6 +48,14 @@ var validParams = []string{ `{"zoneId": 123456, "networkId": 78910}`, `{"zoneid": 0, "networkid": 0}`, `{"zoneId": 0, "networkId": 0}`, + `{"zoneid": 123456, "pubid": "testpubid"}`, + `{"zoneid": 123456, "uid": 100}`, + `{"zoneid": 123456, "networkid": 78910, "pubid": "testpubid"}`, + `{"zoneid": 123456, "networkid": 78910, "uid": 100}`, + `{"zoneid": 123456, "networkid": 78910, "uid": 100, "pubid": "testpubid"}`, + `{"networkId": 78910, "pubid": "testpubid"}`, + `{"networkid": 78910, "uid": 100}`, + `{"networkid": 78910, "uid": 100, "pubid": "testpubid"}`, } var invalidParams = []string{ @@ -67,4 +75,7 @@ var invalidParams = []string{ `{"zoneid": -1}`, `{"networkid": -1}`, `{"zoneid": -1, "networkid": -1}`, + `{"zoneid": 0, "networkid": 0, "pubid": ""}`, + `{"zoneid": 0, "networkid": 0, "pubid": null}`, + `{"zoneid": 0, "networkid": 0, "uid": null}`, } diff --git a/openrtb_ext/imp_criteo.go b/openrtb_ext/imp_criteo.go index 66726fb5dda..0ca60406ee5 100644 --- a/openrtb_ext/imp_criteo.go +++ b/openrtb_ext/imp_criteo.go @@ -2,6 +2,8 @@ package openrtb_ext // ExtImpCriteo defines the contract for bidrequest.imp[i].ext.prebid.bidder.criteo type ExtImpCriteo struct { - ZoneID int64 `json:"zoneId"` - NetworkID int64 `json:"networkId"` + ZoneID int64 `json:"zoneId"` + NetworkID int64 `json:"networkId"` + UID int64 `json:"uid"` + PubID string `json:"pubid"` } diff --git a/static/bidder-params/criteo.json b/static/bidder-params/criteo.json index 88c6fba5d3a..a706cfa9158 100644 --- a/static/bidder-params/criteo.json +++ b/static/bidder-params/criteo.json @@ -23,6 +23,16 @@ "type": "integer", "description": "Impression's network ID, preferred.", "minimum": 0 + }, + "pubid": { + "type": "string", + "description": "Impression's publisher ID.", + "minLength": 1 + }, + "uid": { + "type": "integer", + "description": "Impression's ad unit id.", + "minimum": 0 } }, "anyOf": [