Find Local LinkedIn Connections

OpenAISlack

Search LinkedIn for local professionals, filter the best profiles with AI, generate personalized icebreakers, and send a daily briefing to your Slack channel.

LinkedIn SearchLead GenerationProfessional NetworkingSlack Notifications

This workflow handles your daily LinkedIn outreach by running a targeted Apify search for founders, engineers, and agency owners in your city every morning. It filters out corporate noise, selects the three most relevant people to connect with, and writes a personalized icebreaker for each one before dropping the full briefing into a Slack channel of your choice.

It does five things:

  1. Fires a scheduled trigger every morning at your chosen time.
  2. Checks a test mode variable to either return safe mock profiles or run a live Apify scrape.
  3. Normalizes the data from both paths into a clean, consistent format.
  4. Runs an AI agent to filter profiles, pick the top three, and write city-aware icebreakers.
  5. Sends a formatted Slack message with names, LinkedIn links, and ready-to-paste connection requests.

What you need

  1. A Needle account with the workflow builder open.
  2. An Apify account (free tier works) with the curious_coder/linkedin-search-scraper actor available.
  3. An Apify API token from your account settings.
  4. A Slack workspace with a channel you want the briefings delivered to.
  5. The Channel ID from Slack (found in the browser URL, starts with the letter C).

How the flow works

NodeNameDescription
1Morning RadarFires once a day at the configured time. Kicks off the entire pipeline.
2The GatekeeperReads Test_Mode, SEARCH_QUERY, and YOUR_CITY. Routes to mock data if testing, or builds a live search query if in production.
3The ScraperCalls the Apify LinkedIn Search Scraper using your API token. Includes error handling so failures do not crash the workflow.
4Data NormalizerBridges the mock and production paths into one consistent object format, protecting the AI agent from malformed input.
5The NetworkerUses an AI model to filter out spam, select the top 3 real humans, and write local-context icebreakers. Handles errors gracefully.
6Slack DispatchDelivers the formatted markdown briefing to your configured Slack channel, ensuring you receive a useful status message.

Output

Every morning you receive a Slack message in your chosen channel.

For each of the three targets, you get their full name, job title, LinkedIn profile URL, and a ready-to-paste casual icebreaker that mentions you are also working locally in the same city.

Notes

  1. Keep Test_Mode set to true until you have confirmed the Slack message is arriving correctly. The test run uses zero Apify credits.
  2. The Apify LinkedIn actor depends on LinkedIn not blocking the scraper. If results dry up, check the actor status on the Apify marketplace.
  3. You can change the search niche by editing the SEARCH_QUERY variable. For example, you could target "SaaS Founder" OR "Product Manager" in any city you choose.
  4. Change the cron expression and timezone in the first node to match your local time.
  5. Make sure your Apify token has permission to run actors and that the curious_coder/linkedin-search-scraper actor is available in your account.

Want to showcase your own workflows?

Become a Needle workflow partner and turn your expertise into recurring revenue.

Ready to vibe automate?

Join thousands of people who have transformed their workflows.

Workflows

Automations with AI agents

Collections

All your data, searchable

Chat Widget

Drop-in widget for your website

Developer API

Build AI-powered apps with ease

    We use cookies to enhance your experience on Needle and keep your data secure. Privacy Policy