From e8ff0b1a42141a17c34c8d2c40cd3d70c40fed27 Mon Sep 17 00:00:00 2001 From: johnjeremiah Date: Mon, 18 May 2026 10:52:39 -0400 Subject: [PATCH] Set campaign member status for form-based contacts (#45427) Add a list of form-based contact sources and set Most_recent_campaign_member_status__c to 'Registered' when contactSource matches any of them. This marks contacts originating from website contact forms, webinars, gated docs, and related sources as registered. The change includes an eslint-disable-line camelcase comment for the Salesforce field name. ## Summary by CodeRabbit * **Bug Fixes** * Enhanced contact registration tracking to automatically set appropriate campaign status when contacts are registered through form-based sources such as webinars. [![Review Change Stack](https://storage.googleapis.com/coderabbit_public_assets/review-stack-in-coderabbit-ui.svg)](https://app.coderabbit.ai/change-stack/fleetdm/fleet/pull/45427) --- .../update-or-create-contact-and-account.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/website/api/helpers/salesforce/update-or-create-contact-and-account.js b/website/api/helpers/salesforce/update-or-create-contact-and-account.js index e5677b91bb..4120cd6ed7 100644 --- a/website/api/helpers/salesforce/update-or-create-contact-and-account.js +++ b/website/api/helpers/salesforce/update-or-create-contact-and-account.js @@ -200,6 +200,18 @@ module.exports = { let accountValuesToSet = {}; + let formBasedContactSources = [ + 'Website - Contact forms', + 'Website - Contact forms - Demo - ICP', + 'Website - Contact forms - Demo', + 'Website - GitOps', + 'Webinar', + 'Website - Gated document', + ]; + if(contactSource && formBasedContactSources.includes(contactSource)) { + contactValuesToSet.Most_recent_campaign_member_status__c = 'Registered';// eslint-disable-line camelcase + } + if(numberOfHostsDetails){ accountValuesToSet.Total_macOS_hosts__c = numberOfHostsDetails.macosHosts;// eslint-disable-line camelcase accountValuesToSet.Total_Windows_hosts__c = numberOfHostsDetails.windowsHosts;// eslint-disable-line camelcase