Log Agorapulse social conversations to HubSpot contacts

By General Input

Twice every weekday, the conversations from your social inbox land on the right HubSpot contact timelines, with a Slack recap for sales.

Integrations

  • Agorapulse
  • HubSpot
  • Slack Bot

Type

Agentic Task

Categories

  • Sales
  • Marketing

Every weekday at 8am and 4pm, sweep my Agorapulse social inbox and turn the conversations worth remembering into real CRM history in HubSpot, then post a recap to my sales team in Slack. Use a cron trigger rather than a webhook: this is deliberately a batched enrichment sweep, not a realtime triage bot.

Start each run by resolving my Agorapulse account. Call Get Manager Organizations to find the organization, then Get Organization Workspaces for that organization, then Get Workspace Profiles to see which social profiles are connected. Those ids are needed before any inbox call will work.

Then use Find Inbox Items to pull every comment, direct message, mention and review received since the previous run. The 8am run covers everything since the 4pm run the day before, and the 4pm run covers everything since 8am the same morning. The Monday 8am run has to reach back to the Friday 4pm run so weekend activity is not lost. Only ever process items that fall inside the current run window, so the same conversation is never written into HubSpot twice.

Filter out the noise before doing any further work. Skip spam and promotional junk, emoji only reactions, and one word praise such as "nice" or "love this". The whole point is that the CRM does not fill up with clutter, so when you are unsure whether something is substantive, leave it out. For every item that survives the filter, call Get Conversation Messages to read the full thread instead of judging from the single inbox item.

For each substantive thread, try to match the author to an existing HubSpot record using Search Contacts. Search on what the thread actually gives you: the author's display name, their social handle, and any email address or company name mentioned in the message. Treat this as a confidence judgement rather than a string match. A full name together with a matching company, or an email address that resolves directly to a contact, is a confident match. A common first name on its own is not.

On a confident match, use Create Note associated with that contact so the person's timeline shows what they said on social. Use the same note format every time: the network it came from, the date, the author handle, what they actually asked or said, a one line summary of what they want next, and a link back to the Agorapulse conversation. The body of the note matters far more than the volume of notes, because sales and customer success normally never see social touchpoints at all. Do not try to route notes by record owner. Associate the note with the contact and let that association carry ownership.

Threads that clearly show buying intent but match no existing contact must never be auto created as contacts. Collect them instead, and use Send a Message on the Slack Bot integration to post them to my sales channel, one message per lead, each with the thread summary and a suggested next step.

Finish every run with a single closing digest message to the same Slack channel, covering how many social touches were logged, which contacts they landed on, and which unmatched leads need a human. If a run turns up nothing substantive, post a short message saying so rather than staying silent, so I know the sweep actually ran.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasoniMessage campaign console with pre-flight checks and delivery boardLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsA searchable RFP answer library your bid team drafts fromLinkedIn Ads budget pacing dashboard for every client account