Skip to content

Conversation

@wunderhawk
Copy link
Contributor

@wunderhawk wunderhawk commented Feb 4, 2026

  • Read UTM cookies (utm_source, utm_medium, utm_campaign, utm_content, utm_term) from request headers
  • Include UTM parameters in USER_REGISTER_SUCCESS webhook payload
  • Update PlatformWebhookService User interface to support optional UTM fields

https://linear.app/wundergraph/issue/ENG-8867/feat-pass-utm-tags-to-ac-upon-cosmo-sign-up

Summary by CodeRabbit

  • New Features
    • Platform webhooks now include UTM campaign attribution data (source, medium, campaign, content, and term) in user registration events. These parameters are automatically captured from cookies and forwarded with webhook payloads, enabling improved tracking of user acquisition sources, marketing channel performance, and overall campaign effectiveness across your connected systems and integrations.

- Read UTM cookies (utm_source, utm_medium, utm_campaign, utm_content, utm_term) from request headers
- Include UTM parameters in USER_REGISTER_SUCCESS webhook payload
- Update PlatformWebhookService User interface to support optional UTM fields
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 4, 2026

Walkthrough

This PR adds UTM parameter tracking to the user registration webhook. It parses utm_source, utm_medium, utm_campaign, utm_content, and utm_term from cookies during user registration and includes these values in the USER_REGISTER_SUCCESS platform webhook payload.

Changes

Cohort / File(s) Summary
Authentication UTM Enrichment
controlplane/src/core/controllers/auth.ts
Adds extraction of five UTM parameters from cookies and includes them in the USER_REGISTER_SUCCESS webhook payload upon new user registration.
Webhook Payload Schema
controlplane/src/core/webhooks/PlatformWebhookService.ts
Extends the User interface with five optional UTM-related properties (utm_source, utm_medium, utm_campaign, utm_content, utm_term) to support the enriched webhook payload.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'feat: add UTM parameter tracking for new user signups' directly and clearly summarizes the main change: adding UTM tracking to user registration.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Important

Action Needed: IP Allowlist Update

If your organization protects your Git platform with IP whitelisting, please add the new CodeRabbit IP address to your allowlist:

  • 136.113.208.247/32 (new)
  • 34.170.211.100/32
  • 35.222.179.152/32

Reviews will stop working after February 8, 2026 if the new IP is not added to your allowlist.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Feb 4, 2026

Codecov Report

❌ Patch coverage is 8.33333% with 11 lines in your changes missing coverage. Please review.
✅ Project coverage is 63.30%. Comparing base (f585037) to head (71ba143).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
controlplane/src/core/controllers/auth.ts 8.33% 11 Missing ⚠️

❌ Your patch check has failed because the patch coverage (8.33%) is below the target coverage (90.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2488      +/-   ##
==========================================
+ Coverage   61.63%   63.30%   +1.66%     
==========================================
  Files         229      296      +67     
  Lines       23894    41698   +17804     
  Branches        0     4391    +4391     
==========================================
+ Hits        14728    26395   +11667     
- Misses       7924    15281    +7357     
+ Partials     1242       22    -1220     
Files with missing lines Coverage Δ
...lplane/src/core/webhooks/PlatformWebhookService.ts 53.84% <ø> (ø)
controlplane/src/core/controllers/auth.ts 9.56% <8.33%> (ø)

... and 523 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants