Slack Scraper avatar
Slack Scraper

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Slack Scraper

Slack Scraper

This Apify actor scrapes members from any Slack workspace and matches them to their LinkedIn profiles using image search and AI-based relevance classification.

Pricing

from $0.01 / 1,000 results

Rating

0.0

(0)

Developer

Leadspicker

Leadspicker

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

19 hours ago

Last modified

Share

Slack Scraper (with LinkedIn resolving)

Scrape members from any Slack workspace you’re a member of (no admin rights needed) and enrich them with LinkedIn profiles using avatar image search, name matching, and AI relevancy classification.

🎥 Watch how to authorize and run the Actor (Quick Start)
👉 https://www.youtube.com/watch?v=J6E1SIbHB1k

This scraper was built by the www.leadspicker.com team at the Prague $1M Hackathon in January 2026.

Claim (and why it matters): This is the only Slack member scraper that’s actually useful for lead-gen because it doesn’t stop at scraping and exporting member names - it goes a step further and finds the LinkedIn profile URLs of those people using avatar image search, LinkedIn name search, and AI-based relevancy classification, even when multiple people share the same name.


What this Actor does

  • Scrapes Slack workspace members and exports structured member data including full name.
  • Optionally resolves LinkedIn profiles for members with custom avatars via image search + name matching.
  • Optionally runs AI classification (customizable prompt) to help you:
    • filter relevant people (e.g., automation experts / Growth hackers / GTM Engineers, Clay or n8n users, marketing/tech..),
    • outputs the best match when multiple LinkedIn candidates exist,

Why this is different (and better than any other “Slack scraper”)

Most “Slack scrapers” either:

  • require being an admin, or
  • only export user names without linkedin profile urls, or
  • break when the workspace has common names and duplicates,
  • require you authorize through unsecure chrome extension

This Actor is built for real workflows:

  • No admin required (works for any workspace you can log into)
  • No browser extension required (recommended flow uses Live View login)
  • Image-based LinkedIn discovery (great match rate for people with avatars on Slack)
  • Name disambiguation (multiple people named “John Smith”? handled!)
  • AI relevancy classification (so you can keep only the people you actually want)

🎥 Watch how to authorize and run the Actor (Quick Start)
👉 https://www.youtube.com/watch?v=J6E1SIbHB1k

  • Slack Client Link (required)
    Enter your workspace URL, for example:
    https://app.slack.com/client/T06FSM2U6FJ
    This workspace ID determines which Slack workspace will be scraped.

  • Interactive Login (VNC)
    Keep this enabled.
    This allows you to log in via a virtual browser:

    • Start the Actor
    • Click Live View
    • Sign in to Slack normally
      The Actor will automatically load the session and cookies for you.

When using Interactive Login, you can leave xoxc Token and xoxd Cookie (d) empty.


⚠️ Not recommended, but works as fallback if the virtual browser (VNC / Live View) login does not work for you

This option allows you to manually extract Slack session credentials (xoxc token and xoxd cookie) from your browser and paste them into the Actor input fields.

Use this only if Interactive Login fails.

🎥 Fall back option how to authorize manually:
👉 https://youtu.be/-T4Eei-ZYVA


Step 1: Sign in to Slack (browser only)

  • Make sure you are fully logged in to your Slack workspace at:
    https://app.slack.com
  • You must be logged in via the web app (browser)
    (the desktop app alone is not sufficient)

Install the Cookie-Editor extension from the Chrome Web Store:
👉 https://chromewebstore.google.com/detail/cookie-editor/hlkenndednhfkekhgcdicdfddnkalmdm?hl=en


Step 3: Retrieve the xoxc token

  1. Open the Slack workspace you want to scrape
  2. Open Developer Tools (F12)
  3. Go to the Console tab
  4. Paste and run the following command:
JSON.stringify(Object.fromEntries(Object.entries(JSON.parse(localStorage.localConfig_v2)?.teams ?? {}).map(([teamKey, team]) => [teamKey, team?.token])));
  • Copy the output — this is your xoxc token

📹 How-to video:
👉 https://www.loom.com/share/f96ec08772ab49bc8afa6f63b8130742


  • Click the Cookie-Editor icon (🍪) in your Chrome toolbar
  • If you don’t see it, open the Extensions (puzzle) menu and pin it
  • Make sure Cookie-Editor is opened on the app.slack.com page

  • In Cookie-Editor, search for the cookie named d
  • Copy its value

This value is your xoxd cookie (d).


Step 6: Paste credentials into the Actor

Paste the following values into the Actor input fields:

  • xoxc Token
  • xoxd Cookie (d)

You can now run the Actor without Interactive Login.

LinkedIn enrichment

  • Resolve LinkedIn
    Keep this enabled if you want the Actor to also find LinkedIn profile URLs for scraped Slack members.

  • LinkedIn URLs on New Lines
    Keep this enabled if you want one LinkedIn profile per row.
    If multiple relevant LinkedIn profiles match the same Slack name, each match will be returned as a separate row.


Filtering & matching

  • Search Query
    Optional. Allows you to narrow down the Slack directory search.
    Recommended: leave empty to scrape all members.

  • Prompt
    This prompt helps decide which people with the same name should be included in the export.
    It is used during AI-based relevancy classification and LinkedIn disambiguation.

Example prompt:

You are a simple classifier.
Question: Does this person have ANY connection to sales, marketing, AI, lead generation, growth, automation, or technology?
Say YES if you see ANY of these (current or past):
- Sales (any role)
- Marketing (any role)
- Business development
- Growth
- RevOps, Sales Ops, Marketing Ops
- GTM, Go-to-Market
- Outreach, Lead generation
- CRM, Salesforce, HubSpot
- Automation, integrations, Zapier
- Agency, consulting
- SaaS, B2B, tech startup
- Founder, CEO, entrepreneur
- Account management
- Customer success
- Partnerships
- Product (PM, Product Manager)
- Data, analytics for business
Say NO only if none of the above apply
(e.g. finance, legal).
Return ONLY: YES or NO
Profile:
{profile_json}

Output

Each dataset item represents one Slack member, optionally enriched with a LinkedIn profile match.

If multiple relevant LinkedIn profiles are found for the same Slack user (for example, when several people share the same name), the Actor can return multiple rows for the same Slack member, each with a different linkedin_url.

Output fields

Each row may contain the following fields:

  • Slack identity

    • id — Slack user ID
    • team — Slack workspace ID
    • username — Slack username
    • real_name — full name from Slack
    • display_name — display name (if set)
  • Profile details

    • title — job title (if available)
    • email — email address (if available)
    • phone — phone number (if available)
  • Profile images

    • image_1024 — Slack profile image (1024px)
    • image_original — original avatar image
    • is_custom_image — whether the user has a custom avatar
  • LinkedIn enrichment (optional)

    • linkedin_url — a resolved LinkedIn profile URL
      • If multiple relevant matches exist, each LinkedIn profile is returned as a separate row for the same Slack user.

This row-based output makes it easy to:

  • export data to CSV / spreadsheets,
  • review multiple LinkedIn candidates,
  • apply additional filtering or scoring in downstream tools.

LinkedIn output formats

You can work in two practical modes:

  1. One LinkedIn profile per row (best match only) — great for exports and CRMs.
  2. All potential matches per Slack user (kept together) — great for manual review and QA.

(If you’re not sure which to use: start with “all matches”, then tighten your prompt until “best match” is reliably correct.)


Typical use cases

  • Lead generation from partner/customer communities (filter by roles + match to LinkedIn)
  • Recruiting / sourcing from niche Slack groups
  • Partnership mapping (who’s inside a workspace + what they do)
  • Community analytics (titles, domains, seniority distribution)
  • Outbound personalization (Slack profile → LinkedIn → enrichment pipeline)

Notes, limitations, and best practices

  • Scrape only workspaces you have legitimate access to and permission to use. :contentReference[oaicite:19]{index=19}
  • Slack may rate-limit large exports. Use maxResults, filtering query, and reasonable timeouts.
  • For best LinkedIn matching:
    • enable resolveAvatarLinkedins,
    • use a stricter prompt when your workspace has many repeated names,
    • prefer “all matches per row” until you’re happy with quality.

Support / feedback

Found an edge case (duplicate names, missing avatars, wrong LinkedIn picks)? Open an issue in the Actor’s Issues tab on Apify and include:

  • a short description,
  • a sample output row (without sensitive data),
  • what you expected vs what happened.

Keywords

Slack scraper · Slack members export · LinkedIn matching · avatar image search · AI classification · lead generation · enrichment