Skip to content

Lookup method options for HeyReach sync

When to use this guide: Use this guide when configuring or validating engagement platform integration behavior.

When syncing HeyReach activity into your CRM via OutboundSync, the Lookup Method determines how OutboundSync identifies and matches the correct contact record to write activity to.

Unlike email sequencing tools which always provide an email address, HeyReach payloads always include a LinkedIn Profile URL. For this reason, OutboundSync defaults to using the LinkedIn Profile URL as the unique identifier when finding contacts in the CRM. However, this can be configured to use other variables.

Currently, there are three Object Lookup Method options:

Recommendation: Most users should start with Default Property (Social Profile). Use Optional Alternative Property when you want a unique identifier first (for example, CRM record ID via os_objectlookup_id) with social profile URL and email as fallbacks. Use Alternative Property when you match on a single unique identifier and do not need URL or email fallbacks.

  • Uses the LinkedIn Profile URL (profile_url from HeyReach).
  • In the webhook setup, the Profile URL dropdown lets you choose which CRM field to map this to — either the standard LinkedIn URL field or a custom property.
  • Upsert behavior: Updates the contact if a match is found, or creates a new contact if no match exists.
Lookup method options for HeyReach sync
  • Uses the os_objectlookup_id variable. To enable this, add os_objectlookup_id to your lead list in HeyReach — it will then be included in the webhook payloads.
  • In OutboundSync, the Object Lookup Selection field (in the webhook setup) lets you map this identifier to the correct property/field in your CRM.
  • This method gives your team flexibility to match contacts based on any unique identifier you maintain (e.g., CRM record ID, email address, or other custom keys).
  • Update Only behavior: If a match is found, OutboundSync updates the existing record. If no match is found, a new contact will not be created.
Lookup method options for HeyReach sync
  • Uses a triage lookup sequence: OutboundSync first checks the Object Lookup Selection field (os_objectlookup_id), then the Profile URL (profile_url), and finally the Email field you’ve mapped in the webhook setup.
  • This layered approach provides the most precise matching, since multiple fields are considered and CRM enrichment doesn’t need to be perfect.
  • If os_objectlookup_id is not provided in the payload, it is skipped in the lookup triage.
  • Upsert behavior: Updates an existing record when a match is found; creates a new contact if none of the fields match.
Lookup method options for HeyReach sync
Lookup MethodIdentifier(s) UsedWebhook Fields to ConfigureBehaviorBest For
Default Property (Social Profile)LinkedIn Profile URL (profile_url)Profile URL → map to standard LinkedIn field or custom propertyUpsert: update if matched; create if notGeneral use; reliable since HeyReach always includes LinkedIn URL
Alternative Propertyos_objectlookup_id (added to HeyReach lead list)Object Lookup Selection → map to CRM field holding your chosen identifierUpdate Only: update if matched; no new contact createdTeams that want to match on a different unique identifier (e.g., CRM record ID, email, or other custom key)
Optional Alternative Property (Triage)Lookup order: 1) os_objectlookup_id → 2) LinkedIn URL → 3) EmailObject Lookup Selection, Profile URL, EmailUpsert with sequence: update if matched at any step; create if none matchTeams needing the most precise matching; allows multiple identifiers so enrichment doesn’t need to be perfect

When a lookup matches more than one HubSpot contact

Section titled “When a lookup matches more than one HubSpot contact”

This applies when Default Property or Optional Alternative Property falls through to social profile URL (or email) matching and HubSpot returns more than one contact for that value.

OutboundSync selects one record and writes activity to it. The tie-breaker is the contact with the most recent create date (createdate, descending). Older records are not updated.

What this means in practice: activity may land on a different contact than you intended when multiple records share the same social profile URL or email.

To avoid relying on the tie-breaker, pass a unique identifier in every HeyReach payload — see Using custom lead/contact object lookup ID.