Skip to content

Auction bidstream decoration #543

Description

@aram356

Parent epic

#532

Description

Inject EC identity data into outbound OpenRTB bid requests for publishers with bidstream_enabled = true partners.

Scope: Auction handler (Mode B path in existing auction code)

Acceptance criteria

  • user.id set to ec_context.ec_value when EC present and consent granted. No fallback — when no EC, user.id is omitted.
  • user.eids populated with one entry per bidstream_enabled partner with a synced UID, using partner.source_domain and partner.openrtb_atype.
  • user.consent set to ec_context.consent.raw_tc_string when present.
  • No EID entry for partners with no synced UID.
  • KV read failure → user.eids omitted (empty); user.id still set from EC; auction proceeds (no 5xx).
  • No EC present → user.id omitted; user.eids empty. Auction still runs.
  • X-Synthetic-* headers not present (removed in PR Rename Synthetic ID to Edge Cookie (EC) and simplify generation #479). Only X-ts-ec set.
  • Schema changes: UserInfo.ec_value, Eid/EidUid types, user.eids, user.consent in OpenRTB, remove synthetic fields.
  • Unit tests cover EID structure, consent string threading, KV-degraded path, no-EC path.

Spec ref

docs/internal/ssc_technical_spec.md §12

Metadata

Metadata

Labels

No labels
No labels

Type

Fields

No fields configured for Story.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions