# Pre-meeting LinkedIn briefs in Slack from your calendar

> Thirty minutes before every external meeting, get a Slack DM with a short LinkedIn brief on each guest you're about to meet.

- Workflow type: agent
- Services: Unipile, Google Calendar, Slack Bot
- Categories: Sales, Personal Productivity
- Published: 2026-07-08

## What it does

- Checks your calendar every 15 minutes and finds external meetings starting in the next 30 to 45 minutes.
- Looks up each outside guest on LinkedIn to pull their current role, company, and recent posts.
- Writes a short brief for each attendee with who they are, what their company does, a talking point, and a suggested opening question.
- Sends the whole thing to you as a Slack direct message right before the meeting starts.

## What you'll need

- A Google Calendar account (the calendar you use to book meetings).
- A Unipile account with your LinkedIn signed in through it, so the brief can pull real profile and post data.
- A Slack workspace where the bot can send you direct messages.

## Prompt

Build a scheduled agent workflow that DMs me a LinkedIn-powered pre-meeting brief in Slack about 30 minutes before each of my external meetings.

Trigger: cron, every 15 minutes.

On each tick, the agent should:

1) Call Google Calendar's List Events on calendarId "primary" with timeMin=now and timeMax=now+45 minutes, singleEvents=true, orderBy=startTime. Use the connected Google account's own email to determine my own email domain.

2) For each event returned, decide whether it is an external meeting: it has at least one attendee whose email address ends in a domain different from mine, and it has not already been briefed on this run. Dedupe by event id so I only get one brief per meeting.

3) For each qualifying meeting, take the external attendees (name plus the email domain as a company hint) and for each one:

- Call Unipile's Perform LinkedIn Search over people with the attendee's name (and, if useful, the domain-derived company) to identify the most likely LinkedIn profile.

- Call Unipile's Retrieve User Profile to pull current title, company, and headline.

- Call Unipile's List User Posts to grab the two or three most recent posts they have published.

- If there is no confident LinkedIn match, skip enrichment for that person and note the gap in the brief instead of inventing anything.

4) Synthesize a short brief per external attendee: who they are (title at company), one sentence on what the company does, one talking point drawn from a recent LinkedIn post if there is a good one, and one suggested opening question.

5) Send the brief to me as a Slack direct message via the Slack Bot integration. Open a DM with my Slack user, then Send a Message that includes the meeting title, start time, the full attendee list, and the per-attendee brief. Use Slack formatting (bold names, bullets, short lines). If there are multiple qualifying meetings on the same tick, send one Slack DM per meeting so each brief stands on its own.

Notes:

- Use Google Calendar's "primary" calendar id.

- External detection is a pure email-domain comparison against my own address; the calendar attendee list surfaces attendee emails directly.

- Keep each attendee brief tight, roughly 4 to 6 short lines.

- Do not fabricate. If LinkedIn returns nothing useful for a person, say so plainly rather than guessing.

## How to customize

- Change the lead time. Get the brief 15 minutes ahead if you like less runway, or an hour ahead if you want more.
- Filter out meetings you don't want briefed, like 1:1s, personal appointments, or internal syncs that happen to include a contractor.
- Post to a private channel instead of a DM if you want your account team to see the briefs too.

## FAQ

### How does it decide a meeting is external?

It compares each guest's email domain to your own. If any guest is on a different domain, the meeting counts as external and gets a brief.

### Will it brief me on the same meeting twice?

No. The workflow tracks which meetings it has already covered and skips them on the next check, so you get one brief per meeting.

### Do I need LinkedIn Sales Navigator or Recruiter?

No. A regular LinkedIn account connected through Unipile is enough. Sales Navigator gives richer data if you have it, but it is not required.

### What if an attendee has a common name and no clear LinkedIn match?

The brief is honest about it. When there is no confident match, it says so and includes only what could be verified, so you never get a made-up profile.

### Can I get the brief in a channel instead of a DM?

Yes. Point the workflow at any Slack channel the bot has access to and the briefs will land there instead.

Use this prompt in General Input: https://www.generalinput.com/prompts/pre-meeting-linkedin-briefs-in-slack-from-your-calendar