Documentation
Sync your team's LinkedIn activity to your HubSpot contacts.
Needle writes your team's LinkedIn activity to the contacts in your HubSpot account: when an invite or message went out, when the person accepted a connection request or replied, and which account and teammate were behind it. Your team sees in HubSpot where each conversation stands. A conversation is synced from when the person became a lead, including messages written directly on LinkedIn. Chats with people who aren't leads stay out of HubSpot.
Needle writes to HubSpot. From HubSpot it only picks up merges, deletes, restores, and GDPR deletes of contacts it synced, so it keeps writing to the right contact.
In Settings > Integrations, select Connect HubSpot and approve the access in HubSpot. Approving needs a HubSpot user who may install apps in the account. Needle then adds its fields to your HubSpot contacts, in a group called "Needle", which takes a few seconds. HubSpot accounts in every region work.
Any member can connect HubSpot when it isn't connected yet. Only the member who connected it, or a workspace admin or owner, can change its settings or disconnect it. A HubSpot account can be connected to one Needle workspace at a time: connecting it from a second Needle workspace is refused until the first one disconnects.
HubSpot works on every plan, including the free trial. When the trial ends without a paid plan, syncing stops, and activity from that time isn't sent later.
Only activity from connected accounts shared with everyone in the workspace is synced; private accounts stay out of HubSpot. See Who can do what. All events below are ticked when you connect. Untick any under Events sent to HubSpot in the settings on the HubSpot page.
| Event | What it writes in HubSpot |
|---|---|
| Connection request sent | First LinkedIn contact at, last invite sent at, the account that sent it and the teammate behind it, connection status, and the invite note as a note |
| Connection request accepted | Last invite accepted at, Connected on LinkedIn with, connection status |
| Connection request withdrawn | Connection status |
| Message sent | First LinkedIn contact at, first and last message sent at, the account that sent it and the teammate behind it, Waiting on us, connection status, and the message as a note |
| Reply received | First and last reply at, the account that got it, Waiting on us, connection status, and the reply as a note |
| Lead added | Sequence, Campaign |
| Sequence finished | Sequence |
| Sequence stopped | Sequence |
| Lead suppressed | Do not contact |
Needle adds these fields to your HubSpot contacts. Each label ends in "- Needle", and each has a description in HubSpot.
| Field | What it holds |
|---|---|
| Lead id - Needle | The Needle lead id, so a HubSpot workflow or agent can call the Needle API for this contact |
| LinkedIn connection status - Needle | "Invited", "Connected", "In conversation", or "Not connected" |
| First LinkedIn contact at - Needle | When your team first reached out by invite or message |
| Last LinkedIn invite sent at, sent by, actor - Needle | When the last invite went out, the LinkedIn account that sent it, and the teammate behind it |
| Last LinkedIn invite accepted at - Needle | When they last accepted an invite |
| Connected on LinkedIn with - Needle | Your LinkedIn accounts they are connected with |
| First and last LinkedIn message sent at, sent by, actor - Needle | When messages went out, the account that sent the last one, and the teammate behind it |
| First and last LinkedIn reply at, received by - Needle | When they replied, and the account that got the last reply |
| Waiting on us (LinkedIn) - Needle | Yes when their last message is newer than your team's last message |
| Sequence - Needle | Where they are in their latest campaign: "In progress", "Waiting", "Completed", "Stopped", or "Failed" |
| Campaign - Needle | The campaign they were last added to |
| Do not contact - Needle | Yes when they are on your suppression list |
| Activity - Needle | A link to their activity in Needle |
The "sent by" and "received by" fields hold the LinkedIn account, like Ana Lopez (linkedin.com/in/ana-lopez). The "actor" fields hold the teammate in Needle, like Ben Carter <ben@example.com>: who sent the message by hand, approved it, or started the campaign that sent it. Under Needle fields in HubSpot you can sync a value to one of your own contact fields of the same type instead, or choose Don't sync.
Needle also links each contact it adds to a company, found or created by the lead's company domain. It adds one field to your HubSpot companies, "Company domain - Needle", so it never adds the same company twice.
Each invite note, message, and reply becomes one note on the contact, dated when it was sent. Its first line says who wrote to whom, for example "LinkedIn: Message sent · Ana Lopez (by Ben Carter) → Sam Reed" or "LinkedIn: Reply received · Sam Reed → Ana Lopez". Turn off Message notes to keep message text out of HubSpot.
Needle adds a contact to HubSpot at the first real contact: a connection request sent or accepted, a message sent, or a reply. When a lead could be more than one HubSpot contact, it waits under Needs review on the HubSpot page until a member picks the right one.
Contacts Needle adds get "Legitimate interest – prospect/lead" in HubSpot's "Legal basis for processing contact's data" field, which HubSpot accounts with GDPR settings on require. Contacts that already exist keep their own legal basis. To use another one, change it in HubSpot.
The HubSpot tile shows whether the lead is in HubSpot and links to their contact. Add to HubSpot adds a lead before their first contact, and Add to HubSpot again adds back someone deleted in HubSpot. Any member can use them.
Open the HubSpot page with View details on the HubSpot card in Settings > Integrations. Its Activity list shows the last 25 leads synced, newest first, with a link to each contact in HubSpot.
Import HubSpot contacts as Needle leads, from the contact lists you pick or from all contacts. Only contacts with a LinkedIn profile in HubSpot are imported, and people already in Needle stay as they are. Contacts in the lists you pick under Suppression are imported too, and added to your suppression list. One import reads up to 100,000 contacts.
Disconnecting stops syncing, and activity not yet synced is dropped. What Needle already added stays in HubSpot: its fields and notes, and the contacts and companies it created. Delete them in HubSpot if you no longer want them. To remove the Needle app from your account, uninstall it in HubSpot.
Search documentation, API reference, and MCP tools
We use cookies to enhance your experience on Needle and keep your data secure. Privacy Policy