Auto-enrich new HubSpot contacts with UpLead firmographics

By General Input

Every new HubSpot contact lands fully filled in. Job title, seniority, company size, industry, LinkedIn, and phone, with a recap note on the record.

Integrations

  • HubSpot
  • UpLead

Type

Agentic Task

Categories

  • Sales
  • Operations

Build me an agent workflow that automatically enriches every new HubSpot contact with firmographic and personal context, so my reps never have to research a lead manually.

Trigger: HubSpot webhook for contact.creation. The moment a new contact is created in our HubSpot CRM, fire the workflow with the new contact's ID and email.

Step 1. Call HubSpot Get Contact using the contact ID from the webhook. Read the email plus these properties: jobtitle, hs_seniority, numberofemployees, industry, hs_linkedin_url, phone. Also read firstname, lastname, and company so I can pass them to UpLead if needed.

Step 2. Decide whether to enrich at all. Skip the workflow and exit cleanly if either of these is true:

• The email is on a free-email domain (gmail.com, yahoo.com, outlook.com, hotmail.com, icloud.com, aol.com, proton.me, protonmail.com, gmx.com, live.com, msn.com). UpLead lookups on these almost never resolve and waste credits.

• All six target properties (jobtitle, hs_seniority, numberofemployees, industry, hs_linkedin_url, phone) are already populated. No enrichment needed.

Step 3. Call UpLead Search Combined (Person + Company) with the contact's email. This returns the person and their full company profile in one request. If UpLead returns no match, or email_status is "invalid" or "unknown", log it and exit without writing anything to HubSpot.

Step 4. Map UpLead fields to the missing HubSpot properties. Use the agent's judgment to fill only the gaps:

• jobtitle ← UpLead title (capitalize: UpLead returns lowercase)

• hs_seniority ← UpLead management_level

• numberofemployees ← UpLead company employees

• industry ← UpLead company industry

• hs_linkedin_url ← UpLead linkedin_url (person)

• phone ← UpLead phone or mobile_phone

Important: never overwrite a HubSpot value that is already non-empty. The agent only fills blanks.

Step 5. Call HubSpot Update Contact using the contact ID, sending only the properties you are filling in. If nothing needs filling after the gap check, skip the update.

Step 6. Call HubSpot Create Note associated with the contact. Write a short, human-readable summary that includes:

• Which HubSpot properties were enriched and the new values.

• Notable signals from UpLead worth flagging to a rep: recent funding stage and amount, employee growth rate, technologies in their stack, headquarters location.

• A one-line opener the rep can lift into outbound.

Keep the note under 200 words. Lead with the enrichment summary, then signals.

Style: be concise and factual in the note. No emoji, no marketing fluff, no em dashes. If UpLead is missing a field, just leave it out of the note rather than saying "unknown".

Related prompts

Explore more prompts
Turn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe revealsWhich companies your LinkedIn ads reach, matched to your CRMLead response desk with a running clock on every new leadApprove Lusha enrichment field by field before HubSpot saves it