@@ -27,119 +27,143 @@ sidebarType: 1
27
27
28
28
## Overview
29
29
30
- The ** Epom DSP Bid Adapter** allows publishers to connect with the Epom DSP Exchange for programmatic advertising . It supports banner formats and adheres to the OpenRTB protocol .
30
+ The ** Epom DSP Bid Adapter** enables publishers to monetize inventory via the Epom DSP Exchange using the OpenRTB protocol . It supports ** banner media types ** and enforces required fields to ensure bid validity and proper auction participation .
31
31
32
- ## Bid Params
32
+ ---
33
+
34
+ ## Bid Parameters
33
35
34
- {: .table .table-bordered .table-striped }
35
- | Name | Scope | Description | Example | Type |
36
- | ------------| ---------| ----------------------------------| ---------| --------|
37
- | ` endpoint ` | required | The URL of the Epom DSP bidding endpoint | ` 'https://bidder.epommarket.com/bidder/v2_5/bid?key=your_api_key' ` | ` string ` |
38
- | ` placementId ` | optional | Unique identifier for the placement | ` '12345' ` | ` string ` |
39
- | ` bidfloor ` | optional | Minimum CPM value for the bid in USD | ` 0.5 ` | ` number ` |
36
+ | Name | Scope | Description | Example | Type |
37
+ | ------------- | -------- | --------------------------------------------------------------- | ------------------------------------------------------------------ | -------- |
38
+ | ` endpoint ` | required | Full URL to the Epom DSP bidding endpoint | ` 'https://bidder.epommarket.com/bidder/v2_5/bid?key=your_api_key' ` | ` string ` |
39
+ | ` placementId ` | optional | Placement identifier provided by Epom | ` '12345' ` | ` string ` |
40
+ | ` bidfloor ` | optional | Minimum CPM for bid, in USD (unless FX enabled on tenant level) | ` 0.50 ` | ` number ` |
41
+
42
+ ---
40
43
41
- ## Example Configuration
44
+ ## Example Ad Unit Configuration
42
45
43
46
``` javascript
44
- var adUnits = [
45
- {
46
- code: ' epom-banner-div' ,
47
- mediaTypes: {
47
+ var adUnits = [{
48
+ code: ' epom-banner-div' ,
49
+ mediaTypes: {
50
+ banner: {
51
+ sizes: [[300 , 250 ]]
52
+ }
53
+ },
54
+ bids: [{
55
+ bidder: ' epom_dsp' ,
56
+ params: {
57
+ endpoint: ' https://bidder.epommarket.com/bidder/v2_5/bid?key=d0b9fb9de9dfbba694dfe75294d8e45a'
58
+ },
59
+ imp: [{
60
+ id: ' 2' ,
48
61
banner: {
49
- sizes: [
50
- [300 , 250 ]
51
- ]
62
+ w: 300 ,
63
+ h: 250 ,
64
+ btype: [4 ],
65
+ pos: 0 ,
66
+ api: [3 ]
67
+ },
68
+ bidfloor: 0.01 ,
69
+ bidfloorcur: ' USD'
70
+ }],
71
+ site: {
72
+ id: ' fc59bd54-36df-4d33-830c-fdsfds' ,
73
+ domain: ' epom.com' ,
74
+ publisher: {
75
+ id: ' testid'
76
+ },
77
+ content: {
78
+ id: ' 1234567' ,
79
+ title: ' Car Show' ,
80
+ series: ' All About Cars' ,
81
+ season: ' 2' ,
82
+ cat: [' IAB2-2' ]
52
83
}
53
84
},
54
- bids: [
55
- {
56
- bidder: ' epom_dsp' ,
57
- params: {
58
- endpoint: ' https://bidder.epommarket.com/bidder/v2_5/bid?key=d0b9fb9de9dfbba694dfe75294d8e45a'
59
- },
60
- " imp" : [
61
- {
62
- " banner" : {
63
- " w" : 300 ,
64
- " h" : 250 ,
65
- " btype" : [
66
- 4
67
- ],
68
- " pos" : 0 ,
69
- " api" : [
70
- 3
71
- ]
72
- },
73
- " instl" : 0 ,
74
- " tagid" : " test4" ,
75
- " bidfloor" : 0.01 ,
76
- " bidfloorcur" : " USD" ,
77
- " id" : " 2"
78
- }
79
- ],
80
- " site" : {
81
- " id" : " fc59bd54-36df-4d33-830c-fdsfds" ,
82
- " domain" : " epom.com" ,
83
- " privacypolicy" : 0 ,
84
- " publisher" : {
85
- " id" : " testid"
86
- },
87
- " content" : {
88
- " id" : " 1234567" ,
89
- " episode" : 23 ,
90
- " title" : " Car Show" ,
91
- " series" : " All About Cars" ,
92
- " season" : " 2" ,
93
- " cat" : [
94
- " IAB2-2"
95
- ]
96
- }
97
- },
98
- " device" : {
99
- " ua" : " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.36" ,
100
- " geo" : {
101
- " country" : " UKR" ,
102
- " region" : " " ,
103
- " city" : " "
104
- },
105
- " ip" : " 176.112.120.50" ,
106
- " devicetype" : 2 ,
107
- " os" : " windows" ,
108
- " osv" : " " ,
109
- " js" : 1 ,
110
- " language" : " US" ,
111
- " carrier" : " VERIZON" ,
112
- " connectiontype" : 5 ,
113
- " ifa" : " AA000DFE74168477C70D291f574D344790E0BB11"
114
- },
115
- " user" : {
116
- " id" : " testiduser"
117
- },
118
- " test" : 0 ,
119
- " at" : 2 ,
120
- " allimps" : 0 ,
121
- " cur" : [
122
- " USD"
123
- ],
124
- " bcat" : [
125
- " IAB25-2" ,
126
- " IAB25-1"
127
- ],
128
- " badv" : [],
129
- " id" : " NewIdTest"
130
- }
131
- ]
132
- }
133
- ];
85
+ device: {
86
+ ua: navigator .userAgent ,
87
+ ip: ' 176.112.120.50' ,
88
+ devicetype: 2 ,
89
+ os: ' windows' ,
90
+ js: 1 ,
91
+ language: ' US' ,
92
+ carrier: ' VERIZON' ,
93
+ connectiontype: 5
94
+ },
95
+ user: {
96
+ id: ' testiduser'
97
+ },
98
+ id: ' NewIdTest' ,
99
+ cur: [' USD' ],
100
+ bcat: [' IAB25-2' , ' IAB25-1' ],
101
+ badv: []
102
+ }]
103
+ }];
134
104
```
135
105
136
- ## GDPR and Privacy Compliance
106
+ ---
107
+
108
+ ## Required Fields for Bid Request Validation
109
+
110
+ To be considered ** valid** , a bid request must include the following:
111
+
112
+ | Field | Location | Description |
113
+ | ------------- | ------------- | --------------------------------------------------------------------- |
114
+ | ` request.id ` | root | Unique ID for the request |
115
+ | ` imp[] ` | root | Must contain at least one impression object |
116
+ | ` imp[i].id ` | imp object | Unique impression ID |
117
+ | ` site.domain ` | site object | Must be present (or ` app.bundle ` if app-based) |
118
+ | ` device.ip ` | device object | Device IP address (required unless IP forwarding feature is disabled) |
119
+ | ` cur[] ` | root | Must be ` ['USD'] ` unless currency FX is enabled on tenant level |
120
+
121
+ If any of the above is missing or malformed, the bid request will be ** rejected** by the adapter during validation (` isBidRequestValid ` ).
137
122
138
- The ** Epom DSP Bid Adapter** supports GDPR and CCPA compliance. Consent information can be passed via:
123
+ ---
124
+
125
+ ## Privacy Compliance
126
+
127
+ The Epom DSP adapter supports the following privacy frameworks:
128
+
129
+ * ** GDPR** : via ` bidderRequest.gdprConsent.consentString `
130
+ * ** US Privacy (CCPA)** : via ` bidderRequest.uspConsent `
131
+ * ** GPP** : Supports ` tcfeu ` and ` usnat ` sections
132
+
133
+ ---
134
+
135
+ ## Testing & Debugging
139
136
140
- - ` bidderRequest.gdprConsent `
141
- - ` bidderRequest.uspConsent `
137
+ To test integration, use a configuration similar to this inside a local HTML page with Prebid.js:
138
+
139
+ ``` html
140
+ <
script src =
" https://cdn.jsdelivr.net/npm/[email protected] /dist/not-for-prod/prebid.min.js" ></
script >
141
+ <script >
142
+ pbjs .que .push (function () {
143
+ pbjs .setConfig ({ debug: true });
144
+
145
+ pbjs .setBidderConfig ({
146
+ bidders: [' epom_dsp' ],
147
+ config: {
148
+ epomSettings: {
149
+ endpoint: ' https://bidder.epommarket.com/bidder/v2_5/bid?key=your_key'
150
+ }
151
+ }
152
+ });
153
+
154
+ pbjs .addAdUnits ([/* ...adUnits as above... */ ]);
155
+ pbjs .requestBids ({
156
+ bidsBackHandler : function (bidResponses ) {
157
+ console .log (' Epom DSP Responses:' , bidResponses);
158
+ }
159
+ });
160
+ });
161
+ </script >
162
+ ```
163
+
164
+ ---
142
165
143
166
## Support
144
167
145
- For integration assistance, contact
[ Epom Support
] ( mailto:[email protected] ) .
168
+ For questions or assistance integrating Epom DSP into your Prebid setup, please contact:
169
+
0 commit comments