September 21, 2026

Webhooks: payloads now carry the name and URL you imported, plus a permanent LinkedIn id

Webhooks: payloads now carry the name and URL you imported, plus a permanent LinkedIn id screenshot

If you use Botdog webhooks to update records in your CRM, you now get more reliable identifiers for every lead.

Previously, webhook events sent one name and one LinkedIn URL taken from the person’s current LinkedIn profile.

That could cause matching problems if the information had changed since you imported the lead. For example, a person’s LinkedIn name or custom profile URL might no longer match the values stored in your CRM.

What changed

Every lead event now includes both the current LinkedIn details and the original values you imported:

  • contactName: the person’s current LinkedIn display name
  • leadName: the name exactly as you imported it
  • contactLinkedinUrl: the public LinkedIn profile URL currently shown by LinkedIn
  • leadLinkedinUrl: the LinkedIn URL exactly as you imported it, including any trailing slash
  • contactLinkedinUrn: LinkedIn’s internal member ID, such as ACoAAA…

The internal member ID does not change, so it is the safest value to store when you need a permanent identifier.

Match records more reliably

Use leadLinkedinUrl or leadName when you want to match a webhook back to the exact values already stored in your system.

Botdog keeps these imported values unchanged.

You can also compare contactLinkedinUrl with leadLinkedinUrl to spot when someone has changed their LinkedIn custom URL and update your own record if needed.

Messages from people outside campaigns

The Message received (outside campaigns) webhook can also fire for people you have never imported into Botdog.

For those people:

  • leadName is empty
  • leadLinkedinUrl is empty
  • contactLinkedinUrl may use LinkedIn’s member-ID style URL
  • contactLinkedinUrn is the most reliable identifier

If the sender is someone you previously imported, such as a list contact or a campaign lead who has not yet been messaged, all five fields are included as usual.

This behaviour is now documented.

We also fixed a few related inconsistencies

  • Invitation accepted and Received a reply events no longer send an incomplete LinkedIn URL for leads imported from Sales Navigator or by member ID
  • contactName no longer appears as undefined undefined when the LinkedIn profile has not yet been fetched. Botdog falls back to the imported name instead
  • Replies from imported contacts outside campaigns now use contactName consistently for the LinkedIn name and leadName for your imported name
  • Send test event now uses the same field names as real webhook deliveries, including contactCompanyName and the three new fields

Existing integrations keep working

Nothing has been removed or renamed.

Existing webhook fields keep the same names, and integrations that ignore unfamiliar fields will continue working normally.

One behaviour has been clarified: contactLinkedinUrl now prefers the public URL LinkedIn currently shows, while the exact URL you originally imported is available separately as leadLinkedinUrl.

Ready to Make the Jump?

Join thousands of professionals who are growing their network on autopilot. Start your journey today with our 7-day free trial.

Start your campaign now

Trusted by 5,000+ sales professionals worldwide

4.9/5 rating

All features free for 7 days

Signup takes 2 minutesNo credit card required