{ "steps": [ { "tool": "text_clean", "options": {}, "enabled": true, "name": "1. Clean text (whitespace + smart quotes from copy-paste)" }, { "tool": "format_standardize", "options": { "column_types": { "First Name": "name", "Last Name": "name", "Company": "name", "Email": "email", "Phone": "phone" }, "phone_country_column": "Country", "phone_format": "E164", "email_gmail_canonical": true }, "enabled": true, "name": "2. E.164 phones (per-row country) · canonical emails · name casing" }, { "tool": "missing", "options": { "strategy": "none", "standardize_sentinels": true, "sentinels": ["N/A", "n/a", "—", "?", "(unknown)", "unknown", "(blank)", "(none)", "TBD", "#N/A"] }, "enabled": true, "name": "3. Standardize sentinels across vendor exports" }, { "tool": "column_map", "options": { "schema": { "fields": [ {"name": "Lead ID", "dtype": "string", "required": true}, {"name": "First Name", "dtype": "string"}, {"name": "Last Name", "dtype": "string"}, {"name": "Company", "dtype": "string"}, {"name": "Title", "dtype": "string"}, {"name": "Email", "dtype": "string"}, {"name": "Phone", "dtype": "string"}, {"name": "Country", "dtype": "string"}, {"name": "Source", "dtype": "string"}, {"name": "Score", "dtype": "integer"}, {"name": "Last Activity", "dtype": "date"}, {"name": "Tags", "dtype": "string"} ] }, "auto_infer": true, "unmapped": "keep", "coerce_types": true, "reorder_to_schema": true, "enforce_required": false }, "enabled": true, "name": "4. Coerce types · reorder to canonical schema" }, { "tool": "dedup", "options": { "survivor_rule": "most_complete", "merge": true }, "enabled": true, "name": "5. Dedup leads across HubSpot / LinkedIn / Manual Scrape (fuzzy + merge)" } ] }