# HubSpot Field Verification Summary


**Last Updated:** 2025-11-20

**Date:** 2025-11-15  
**Status:** ✅ Code Fixed - 19 Fields Need to be Added to Forms

## Executive Summary

Comprehensive API verification of all HubSpot forms revealed:
- **Many fields previously marked as missing are actually present** as hidden fields
- **Field name variations found and corrected** (`leadstatus` → `hs_lead_status`)
- **Invalid field names removed** from `submit-template.php`
- **19 fields truly missing** across 6 forms (down from 23+ after corrections)

## Code Fixes Applied ✅

### 1. collect-lead.php
- **Fixed:** `leadstatus` → `hs_lead_status`
- **Value:** `"NEW"` (uppercase)

### 2. addon-request.php
- **Fixed:** `leadstatus` → `hs_lead_status`
- **Value:** `"NEW"` (uppercase)

### 3. submit-template.php
- **Removed:** 8 invalid field names that don't exist in form:
  - `utm_source` (form has `source__c` and `utm_source__c`)
  - `utm_medium` (form has `utm_medium__c`)
  - `utm_campaign` (form has `utm_campaign__c`)
  - `utm_term` (form has `utm_term__c`)
  - `utm_content` (form has `content__c`)
  - `gclid` (form needs `gclid__c`)
  - `lead_source` (form has `leadsource`)
  - `signuptype` (form has `sign_up_type__c`)

## Verified Missing Fields

### collect-lead (Tools Lead Collection)
**Form GUID:** `a91b263c-7ca2-418b-b35c-9664c30e968b`  
**Missing:** 2 fields
- `partner` (single_line_text, hidden)
- `gclid__c` (single_line_text, hidden)

### submit-template (Templates)
**Form GUID:** `11e392f7-aece-4969-8c39-402ee6cb2330`  
**Missing:** 8 fields
- `industry` (dropdown, hidden)
- `company_size__c` (dropdown, hidden)
- `template_type__c` (single_line_text, hidden)
- `campaign__c` (single_line_text, hidden) - **Note:** Different from `utm_campaign__c`
- `template_category__c` (single_line_text, hidden)
- `lead_source_detail__c` (single_line_text, hidden) - **Note:** Different from `source__c`
- `partner` (single_line_text, hidden)
- `gclid__c` (single_line_text, hidden)

### addon-request (Pricing Inquiry Form)
**Form GUID:** `c2022eda-c9b4-4010-a02d-d920852585b1`  
**Missing:** 2 fields
- `partner` (single_line_text, hidden)
- `gclid__c` (single_line_text, hidden)

### export-workdays (Pricing Inquiry Form - shared)
**Form GUID:** `c2022eda-c9b4-4010-a02d-d920852585b1`  
**Missing:** 3 fields
- `tool_type` (single_line_text, hidden)
- `calculation_data` (multi_line_text, hidden)
- `gclid__c` (single_line_text, hidden)

### shiftops-hubspot (ShiftOps Grader Lead Capture)
**Form GUID:** `41d07332-6697-4daa-b27e-dd60515f9c0f`  
**Missing:** 3 fields
- `business` (single_line_text, hidden)
- `shiftops_index` (number, hidden)
- `grade` (dropdown, hidden)

### lead-capture (Lead Capture Popup)
**Form GUID:** `9f9d4e35-d8d9-4283-93b6-1a789e0a1281`  
**Missing:** 1 field
- `gclid__c` (single_line_text, hidden)

### shiftops-nps (ShiftOps Beta NPS Survey)
**Form GUID:** `804459f7-c18d-4da6-8a0b-a81f44bb8275`  
**Missing:** 0 fields ✅ **COMPLETE**

## Fields Present (Verified via API)

Most UTM fields are present as hidden fields:
- ✅ `source__c` (utm_source)
- ✅ `utm_medium__c` (utm_medium)
- ✅ `utm_campaign__c` (utm_campaign)
- ✅ `utm_term__c` (utm_term)
- ✅ `content__c` (utm_content)
- ✅ `leadsource` (leadSource dropdown)
- ✅ `hs_lead_status` (lead status - standard HubSpot field)
- ✅ `sign_up_type__c` (signup type)

## Important Notes

### Different Fields with Similar Names

**submit-template.php:**
- `campaign__c` vs `utm_campaign__c` - **DIFFERENT fields**
  - `campaign__c`: Template Generator campaign name (template-specific)
  - `utm_campaign__c`: UTM campaign parameter (marketing attribution)
  - **Both should exist in form**

- `lead_source_detail__c` vs `source__c` - **DIFFERENT fields**
  - `lead_source_detail__c`: Template type + Template Download (template-specific)
  - `source__c`: UTM source parameter (marketing attribution)
  - **Both should exist in form**

### Field Name Variations

- `leadstatus` → `hs_lead_status` ✅ (code fixed)
- `signuptype` → `sign_up_type__c` ✅ (form has correct name, code sends both - redundant)

## Verification Scripts

- **Comprehensive Check:** `scripts/hubspot/comprehensive-field-mapping-check.php`
- **Detailed Check:** `scripts/hubspot/detailed-form-field-check.php`
- **Field Addition:** `scripts/hubspot/verify-and-add-form-fields.php`

## Next Steps

1. ✅ **Code fixes completed** - All field names corrected
2. ⏳ **Add missing fields to HubSpot forms** - 19 fields total across 6 forms
3. ⏳ **Request HubSpot allowlisting** - For automated form updates (see `HUBSPOT_ALLOWLISTING_REQUEST.txt`)
4. ⏳ **Re-test after form configuration** - Verify all fields are set correctly

## Total Summary

- **Forms Verified:** 7
- **Forms Complete:** 1 (shiftops-nps)
- **Forms Needing Fields:** 6
- **Total Missing Fields:** 19
- **Code Fixes:** 3 files updated ✅
- **Field Name Variations:** 1 found and fixed ✅

