Skip to content

New Adapter: StackAdapt#4724

Open
franklong-sa wants to merge 17 commits into
prebid:masterfrom
StackAdapt:stackadapt-bidder-adapter
Open

New Adapter: StackAdapt#4724
franklong-sa wants to merge 17 commits into
prebid:masterfrom
StackAdapt:stackadapt-bidder-adapter

Conversation

@franklong-sa

@franklong-sa franklong-sa commented Mar 20, 2026

Copy link
Copy Markdown

This PR creates a new bidder adapter for StackAdapt

Related docs update: prebid/prebid.github.io#6496

@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 2e8133c

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:128:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:152:	MakeBids			91.7%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:197:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:214:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:224:	getNativeAdm			100.0%
total:										(statements)			96.2%

Comment thread adapters/stackadapt/stackadapt.go Outdated
@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, b4d9dfd

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:128:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:152:	MakeBids			91.7%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:197:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:214:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:224:	getNativeAdm			100.0%
total:										(statements)			96.2%

@franklong-sa
franklong-sa marked this pull request as ready for review March 20, 2026 15:23
@franklong-sa franklong-sa changed the title New Adapter: StackAdapter New Adapter: StackAdapt Mar 23, 2026
@bsardo bsardo added the adapter label Mar 31, 2026
@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo , I was wondering if there's a rough idea when this might get reviewed? Thanks!

@bsardo bsardo self-assigned this Apr 23, 2026
@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo , wondering if you had a chance to look at this PR yet? Any ETA would be much appreciated, thanks!

@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 31ef553

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:128:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:152:	MakeBids			91.7%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:197:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:214:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:224:	getNativeAdm			100.0%
total:										(statements)			96.2%

@@ -0,0 +1,24 @@
endpoint: "https://pbs.srv.stackadapt.com/br?publisher_id={{.PublisherID}}&supply_id={{.SupplyId}}"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified endpoint is live

curl -i --location --request POST https://pbs.srv.stackadapt.com/br?publisher_id=123&supply_id=123
[1] 10611
HTTP/2 204
endpoint-load-metrics-bin: Mbr1e7a5ok1ASVoeoaC28A4/
date: Thu, 23 Apr 2026 13:48:34 GMT
x-envoy-upstream-service-time: 0
server: envoy

endpoint: "https://pbs.srv.stackadapt.com/br?publisher_id={{.PublisherID}}&supply_id={{.SupplyId}}"
endpointCompression: gzip
maintainer:
email: pjs@stackadapt.com

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a personal email address? We require all email addresses to be a mailbox.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pjs@stackadapt.com is a shared team mailbox monitored by a group of employees on our Prebid team.

endpointCompression: gzip
maintainer:
email: pjs@stackadapt.com
gvlVendorID: 238

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified

curl https://vendor-list.consensu.org/v3/vendor-list.json | jq '.vendors."238"'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  859k  100  859k    0     0   863k      0 --:--:-- --:--:-- --:--:--  864k
{
  "id": 238,
  "name": "StackAdapt Inc.",
  "purposes": [
    1,
    3,
    4,
    5,
    6
  ],
  "legIntPurposes": [
    2,
    7,
    8,
    9,
    10,
    11
  ],
  "flexiblePurposes": [
    2,
    7,
    8,
    11
  ],
  "specialPurposes": [
    1,
    2,
    3
  ],
  "features": [
    1,
    2,
    3
  ],
  "specialFeatures": [
    1,
    2
  ],
  "cookieMaxAgeSeconds": 31536000,
  "usesCookies": true,
  "cookieRefresh": true,
  "urls": [
    {
      "langId": "en",
      "privacy": "https://www.stackadapt.com/privacy-policy",
      "legIntClaim": "https://www.stackadapt.com/privacy-policy"
    }
  ],
  "usesNonCookieAccess": true,
  "dataRetention": {
    "stdRetention": 365,
    "purposes": {
      "7": 3650,
      "8": 180,
      "9": 4320,
      "10": 180,
      "11": 180
    },
    "specialPurposes": {
      "1": 60,
      "2": 1,
      "3": 1825
    }
  },
  "dataDeclaration": [
    1,
    2,
    3,
    4,
    6,
    8,
    9,
    10,
    11
  ],
  "deviceStorageDisclosureUrl": "https://s3.amazonaws.com/stackadapt_public/disclosures.json"
}

Comment thread adapters/stackadapt/stackadapt.go Outdated
Comment thread adapters/stackadapt/stackadapt.go Outdated
Comment thread adapters/stackadapt/stackadapt.go
Comment thread adapters/stackadapt/stackadapt.go
Comment thread adapters/stackadapt/stackadapt.go
Comment thread adapters/stackadapt/stackadapt.go
Comment on lines +22 to +23
redirect:
url: "https://sync.srv.stackadapt.com/sync?nid=pbs&gdpr={{.GDPR}}&gdpr_consent={{.GDPRConsent}}&us_privacy={{.USPrivacy}}&gpp={{.GPP}}&gpp_sid={{.GPPSID}}&redirect={{.RedirectURL}}"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Verified redirect user sync works with stackadapt entry in the uids cookie:

Image Image

@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, eddb6ea

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:116:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:140:	MakeBids			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:185:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:202:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:212:	getNativeAdm			100.0%
total:										(statements)			98.0%

@franklong-sa
franklong-sa requested a review from bsardo May 13, 2026 15:14
@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, b6cf5d7

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:116:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:140:	MakeBids			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:185:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:202:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:212:	getNativeAdm			100.0%
total:										(statements)			98.0%

@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo thanks for the review, I've addressed the comments if you could take another look. Thanks!

@franklong-sa

Copy link
Copy Markdown
Author

Hey @bsardo just wanted to check in if you had a chance to review the updates. Thanks!

@github-actions

github-actions Bot commented Jun 9, 2026

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, 3af52dd

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:116:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:140:	MakeBids			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:185:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:202:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:212:	getNativeAdm			100.0%
total:										(statements)			98.0%

@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo can we get a review for this please? This has become urgent as we have a large client waiting on our prebid server integration. Thank you!

@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo the review comments have been addressed for over a month now. Could we get another review please? Let me know if there is anything I can do on my end to help. Thank you.

@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo all review comments have been addressed and CI passed. If your queue is full, @SyntaxNode or @przemkaczmarek, would either of you be able to take a look? We have a client blocked on this integration. Happy to make any further changes quickly.

@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, df84272

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:116:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:140:	MakeBids			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:185:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:202:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:212:	getNativeAdm			100.0%
total:										(statements)			98.0%

@franklong-sa

Copy link
Copy Markdown
Author

Hi @bsardo just wanted to follow up on this now that we have one approval. Let me know if there is anything I can do to help, thanks.

@github-actions

Copy link
Copy Markdown

Code coverage summary

Note:

  • Prebid team doesn't anticipate tests covering code paths that might result in marshal and unmarshal errors
  • Coverage summary encompasses all commits leading up to the latest one, f40fb9f

stackadapt

Refer here for heat map coverage report

github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:28:	Builder				100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:38:	MakeRequests			81.8%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:70:	buildEndpointURL		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:78:	setImpsAndGetEndpointParams	100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:116:	setPublisherID			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:140:	MakeBids			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:185:	getMediaTypeForBid		100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:202:	resolveMacros			100.0%
github.com/prebid/prebid-server/v4/adapters/stackadapt/stackadapt.go:212:	getNativeAdm			100.0%
total:										(statements)			98.0%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants