LinkedIn User Comments Scraper [NO COOKIES] β
Pricing
$5.00 / 1,000 results
LinkedIn User Comments Scraper [NO COOKIES] β
Scrape every comment a LinkedIn user has posted on other people's content. Get comment text, target posts, engagement, timestamps, and reaction breakdowns. The richest signal for personalized B2B outreach. No login, no cookies. Built for SDRs and ABM teams.
Pricing
$5.00 / 1,000 results
Rating
5.0
(3)
Developer
Unseen User
Maintained by CommunityActor stats
4
Bookmarked
5
Total users
3
Monthly active users
3 hours ago
Last modified
Categories
Share
π¬ LinkedIn Profile Comments Scraper - Every Comment a Profile Has Posted (No Login)
Pull every comment a LinkedIn profile has posted on other people's content. Get the full text, timestamps, parent post IDs, and reaction breakdowns. Perfect for prospect intel and warm outreach.
Disambiguation: This Actor returns comments only (heavy signal: full text + reactions). For lighter breadth signal use a Profile Reactions Scraper. For combined comments + reactions in a single run use the LinkedIn User Activity Scraper.
No cookies. No login. No account-ban risk. Unlike PhantomBuster, Dux-Soup, Expandi, or any cookie-based LinkedIn automation, this Actor never touches your LinkedIn session. No cookie to paste, no Chrome extension to install, no account to "warm up", and zero risk of getting your personal LinkedIn account restricted or banned.
π Quick Reference
| Property | Value |
|---|---|
| Public Name (Apify Title) | π¬ LinkedIn Profile Comments Scraper - Every Comment a Profile Has Posted (No Login) |
| Apify Slug | UnseenUser/linkedin-profile-comments-scraper |
| Short Description (160 chars) | Pull every comment a LinkedIn profile has posted on other people's content. Get the full text, timestamps, parent post IDs, and reaction breakdowns. Perfect for prospect intel and warm outreach. |
| API Provider | HarvestAPI |
| Endpoint Wrapped | GET /linkedin/profile-comments (single endpoint, atomic actor) |
| Endpoint Docs | https://docs.harvest-api.com/linkedin-api-reference/profile/profile-comments |
| Effective Date | May 5, 2026 |
| Keywords | linkedin engagement, warm outreach, social selling, prospect intelligence, comment scraping, sales triggers |
β‘ Why This Actor?
Single-purpose Apify actor: input one or more LinkedIn profiles (URLs or profileIds), get back every comment those profiles have posted on others' content. Each comment includes the full text (commentary), parent post ID, timestamp, reply count, and reaction-type breakdown. Built for prospect research and warm-outreach triggers - fast, atomic, no login.
This is a single-job atomic actor. It does ONE thing well. Want the companion endpoint? See "Related scrapers" at the bottom of this document.
Why comments are the #1 personalization hook for B2B outreach
Stop opening cold emails with "I see you work at X". Open with "I read your comment on John's post about Y - agreed that...". Comment text reveals what a prospect actually thinks, not what they curated for their own feed.
4-step SDR workflow
- Get the target prospect's LinkedIn URL
- Run this Actor with that URL
- Pick the most recent relevant comment
- Quote it in your outreach opener
π Why this Actor beats cookie-based scrapers
| This Actor | PhantomBuster / Dux-Soup / Expandi | |
|---|---|---|
| Account safety | Zero risk - your LinkedIn account is never used | High risk - LinkedIn detects session abuse and restricts accounts |
| Setup time | 30 seconds - paste URL and run | 30+ minutes - cookie extraction, IP warm-up, daily limits |
| Bulk scale | Unlimited parallel runs on Apify infra | Capped by your single LinkedIn account's daily limits |
| Cost per profile | Pay only for data returned | Per-seat SaaS subscription regardless of usage |
| Login required | No | Yes (your session cookie) |
| Cookie rotation | Not needed | Manual, breaks weekly |
| Maintenance | None - we maintain the wrapper | You re-paste cookies after every LinkedIn logout |
π Free plan limit
Free Apify users get up to 50 results per run. Paying users are not affected and receive results normally.
This limit was set by the Actor developer, not by Apify. To remove it and receive unlimited results, upgrade to any paid Apify plan: https://apify.com/pricing
When a free plan run hits the cap, the Actor finishes successfully (status SUCCEEDED) and the run's status message explains what happened. No error is raised, so the first 50 results are fully usable as normal.
π― Use Cases
- Warm-outreach triggers - message a prospect referencing what they recently commented on
- Sales intelligence - understand a prospect's professional opinions before reaching out
- Account-based marketing (ABM) - see what content topics resonate with target accounts
- Recruiter sourcing - see what a candidate says about their industry before contact
- Reputation monitoring - track what your CEO or brand ambassadors say on others' posts
- Influencer vetting - verify what an influencer actually says (not just what they post)
- Competitive intelligence - track what competitor executives comment on publicly
- Buying signals - detect when a target comments on competitor / category content
π Quick Start
- Click Try for free on this Actor's page
- Paste one or more LinkedIn profile URLs (one per line) - bulk supported out of the box
- (Optional) Pick a time window. Default is Anytime.
- (Optional) Set
maxResultsif you want to cap the total number of comments returned - Click Start
- Download results as JSON, CSV, XLSX, or pull via Apify API
βοΈ Inputs Overview
All fields live in a single flat input panel - no categories, no nested steps.
| Field | Type | Required | Description |
|---|---|---|---|
profiles | array of strings | β οΈ One of profiles / profileIds required | One or more full LinkedIn profile URLs. Bulk supported - one per line. Example: https://www.linkedin.com/in/satyanadella |
profileIds | array of strings | β οΈ One of profiles / profileIds required | One or more LinkedIn internal Profile IDs (e.g. ACoAAAEkwwAB9KEc...). Bulk supported. Faster than URLs when known. |
postedLimit | enum | β | Time window. Options: any (default), 24h, week, month, 3months, 6months, year. |
maxResults | integer | β | Hard cap on total comments returned across all profiles. Leave empty for no manual cap. Free users are always capped at 50 - this field can only lower the cap, not raise it. |
Bulk input
Both profiles and profileIds accept arrays. Paste many entries (one per line in the Apify Console, or send a JSON array via the API) and the Actor iterates through them sequentially, streaming each profile's comments into the same dataset. The free-user 50-result cap applies to the run as a whole, not per profile.
Time windows
| Value | Meaning | How it works |
|---|---|---|
any (default) | All available comments | No filter |
24h | Last 24 hours | Server-side filter |
week | Last 7 days | Server-side filter |
month | Last 30 days | Server-side filter |
3months | Last 90 days | Client-side filter on createdAtTimestamp |
6months | Last 180 days | Client-side filter on createdAtTimestamp |
year | Last 365 days | Client-side filter on createdAtTimestamp |
The Actor automatically stops paginating each profile once the oldest comment falls outside the selected window, so cost stays bounded.
β FAQ
Q: What's the difference between this and Profile Reactions / a combined Activity Scraper? A: This actor handles ONE endpoint only - comments. Comments include full text, timestamps, reactions, and reply counts - heavier and more actionable than reactions alone. Use a Profile Reactions actor for lighter breadth signal, or a combined Activity Scraper if you want comments + reactions in one run.
Q: Is this legal? What about CFAA / hiQ v. LinkedIn?
A: This Actor wraps the HarvestAPI /linkedin/profile-comments endpoint that handles the underlying data collection. The hiQ Labs v. LinkedIn line of cases (9th Circuit, 2019 and 2022) confirmed that scraping publicly available data is not a CFAA violation. However, LinkedIn's User Agreement separately restricts automated access. Your downstream use of the data is your responsibility - see the full Terms of Service and the Actor-Specific Addendum below for details.
Q: GDPR / CCPA compliance? A: Comments contain personal data. If you process EU/UK/California/Israeli residents' data, you are the data controller. You must establish a lawful basis (typically legitimate interest under GDPR Article 6(1)(f) with a completed balancing test), provide transparent notice, and honor data subject rights. UnseenUser does not store or retain returned data - it streams from HarvestAPI through Apify directly to you.
Q: Will my LinkedIn account get banned? A: No. This Actor never touches your LinkedIn account. It does not use your cookies, your IP, or your session. There is no account interaction surface, so there is no account-ban risk. This is the core differentiator vs PhantomBuster, Dux-Soup, Expandi, and every other cookie-based tool.
Q: What data fields are NOT returned? A: This endpoint does not return: the parent post's full text, the parent post's author, replies to the comment (only the count), the commenter's verified email, the commenter's phone number, or the commenter's employer details beyond their headline. For verified emails use the companion Profile Scraper. For replies use a dedicated Post Comments Scraper.
Q: Do I need a HarvestAPI account? A: No. UnseenUser holds the HarvestAPI credentials. You only need an Apify account.
Q: Should I use profile or profileId?
A: profileId is faster (per HarvestAPI docs). If you have the ID cached from a prior Profile lookup, prefer it. If you only have the URL, the Actor works fine.
Q: How do I get a profileId?
A: Run the Profile actor first (UnseenUser/linkedin-profile-extractor-enricher). The profile object's id field is the profileId.
Q: Why do reactor profile URLs look different in reactions endpoints? (Reactions only) A: For OTHER endpoints (post-reactions, comment-reactions), LinkedIn returns opaque profile IDs. For THIS endpoint (profile-comments), the actor IS the queried profile - same identity every time. Less of an issue.
Q: How many comments per profile? A: As many as LinkedIn shows publicly on the profile's recent-activity comments page, optionally narrowed by the time window you pick.
Q: What time range is covered?
A: All publicly visible comments on the profile's recent-activity page. Use postedLimit to constrain to the last 24h, 7 days, 30 days, 3 months, 6 months, or 12 months.
Q: What if LinkedIn sends a cease-and-desist? A: Notify UnseenUser within 48 hours via the Apify profile contact form (apify.com/UnseenUser) and cease using this Actor immediately.
π§ Technical Details
- Endpoint:
GET /linkedin/profile-comments - Pagination: token-based via
paginationToken(NOT page-number; incrementing page without the token returns page 1 again) - Concurrency: 1 (sequential pagination)
- Retries: 3 with exponential backoff on 429/502/503/504
- Output: streamed via Apify dataset, one row per comment
- Format: JSON, CSV, XLSX, or via Apify API
π‘ API Reference (built on HarvestAPI)
Retrieved from official documentation: https://docs.harvest-api.com/linkedin-api-reference/profile/profile-comments
Endpoint: Profile Comments β VERIFIED
GET /linkedin/profile-comments
Returns the comments that a LinkedIn profile has posted on other people's content. Equivalent to scraping the recent-activity comments page (e.g. https://www.linkedin.com/in/williamhgates/recent-activity/comments/).
Query Parameters
| Parameter | Type | Description |
|---|---|---|
profile | string | URL of the LinkedIn profile |
profileId | string | Profile ID of the LinkedIn profile (faster than searching by URL) |
postedLimit | string | Filter by maximum posted date. HarvestAPI native values: 24h, week, month. This Actor extends with client-side 3months, 6months, year. |
page | integer (default 1) | Page number for pagination |
paginationToken | string (nullable) | Required for pages > 1. Use the token returned in the previous page's response. Incrementing page alone returns page 1. |
At least one of profile or profileId is required. Per HarvestAPI docs, profileId is preferable and faster.
Response 200 - Schema
Top-level: elements (array), pagination (object), status (string), error (string).
Each comment element:
| Field | Type | Notes |
|---|---|---|
id | string | Comment ID, e.g. 7330012053861998592 |
linkedinUrl | string | Direct URL to the comment on LinkedIn |
commentary | string | The comment text itself |
createdAt | string (ISO date) | When the comment was posted |
createdAtTimestamp | integer | Unix ms timestamp version of createdAt |
numComments | integer | Reply count on this comment |
postId | string | ID of the post the comment was made on |
pinned | boolean | Whether the comment is pinned |
contributed | boolean | Contribution flag |
edited | boolean | Whether the comment has been edited |
numShares | integer (nullable) | Share count, often null |
numImpressions | integer (nullable) | Impression count, often null |
reactionTypeCounts | array | Breakdown of reaction types and counts |
actor | object | Profile who posted the comment (the queried profile) |
actor sub-object:
| Field | Type | Notes |
|---|---|---|
id | string | LinkedIn profile ID, e.g. ACoAABLGFg4BRMcDx84MmyU8X-Jqcw9wKCA1QxU |
name | string | Display name |
linkedinUrl | string | Profile URL |
author | boolean | Whether this actor is also the author of the original post |
position | string | Current headline/position |
pictureUrl | string | Profile photo URL |
picture | object | url, width, height, expiresAt |
reactionTypeCounts entries: each item { "type": "LIKE", "count": 1 }. Common types: LIKE, EMPATHY, PRAISE, INTEREST, APPRECIATION, ENTERTAINMENT.
pagination object:
| Field | Type |
|---|---|
totalPages | integer |
totalElements | integer |
pageNumber | integer |
previousElements | integer |
pageSize | integer |
paginationToken | string (nullable) |
Response 200 - Sample (verified from official docs)
{"elements": [{"id": "7330012053861998592","linkedinUrl": "https://www.linkedin.com/feed/update/urn:li:ugcPost:7329991434395160578?commentUrn=...","commentary": "Exciting π₯","createdAt": "2025-05-18T23:30:58.680Z","numComments": 0,"postId": "7329991434395160578","actor": {"id": "ACoAABLGFg4BRMcDx84MmyU8X-Jqcw9wKCA1QxU","name": "Harshavardhan G H","linkedinUrl": "https://www.linkedin.com/in/harshavardhangh","author": false,"position": "Business Analyst | Data-Driven Decision Maker | ...","pictureUrl": "https://media.licdn.com/...","picture": {"url": "https://media.licdn.com/...","width": 800,"height": 800,"expiresAt": 1753920000000}},"createdAtTimestamp": 1747611058680,"pinned": false,"contributed": false,"edited": false,"numShares": null,"numImpressions": null,"reactionTypeCounts": [{ "type": "LIKE", "count": 1 }]}],"pagination": {"totalPages": 123,"totalElements": 123,"pageNumber": 123,"previousElements": 123,"pageSize": 123,"paginationToken": "<string>"},"status": "<string>","error": "<string>"}
Pagination - Critical Detail
For pages > 1, you MUST pass paginationToken from the previous response. Incrementing page alone returns page 1 again. Loop pattern used by this Actor:
page = 1token = nullloop:response = GET /linkedin/profile-comments?profileId=...&page={page}&paginationToken={token}emit response.elementsif response.pagination.paginationToken is null: breaktoken = response.pagination.paginationTokenpage += 1if cap reached or time-window cutoff hit: break
postedLimit Notes
postedLimit (HarvestAPI native: 24h/week/month) is a server-side date filter applied AFTER LinkedIn returns results. This can throw off pagination.totalElements and totalPages. The Actor counts kept items client-side so totals stay accurate. The extended windows (3months, 6months, year) are applied entirely client-side on createdAtTimestamp.
π€ Output (this Actor's contribution)
Each comment element is streamed as a separate dataset row with a _metadata block:
{"id": "7330012053861998592","linkedinUrl": "https://www.linkedin.com/feed/update/...","commentary": "Exciting π₯","createdAt": "2025-05-18T23:30:58.680Z","createdAtTimestamp": 1747611058680,"numComments": 0,"postId": "7329991434395160578","pinned": false,"contributed": false,"edited": false,"numShares": null,"numImpressions": null,"reactionTypeCounts": [{ "type": "LIKE", "count": 1 }],"actor": { /* full actor object */ },"_metadata": {"page": 1,"fetched_at": "2026-05-25T12:34:56.789Z","profile_identifier": "satyanadella"}}
Output views
The dataset ships with three pre-configured views in the Apify Console:
- Overview - all useful fields (author, headline, comment text, timestamp, reactions, post ID)
- Outreach-ready - minimal columns (prospect, profile, quote-worthy comment, when, original thread) optimized for CRM import
- Grouped by profile - useful when bulk-scraping many profiles in one run; shows which profile each comment belongs to
Switch between them in the dataset preview - no transformation code needed.
π Pipeline guide
This Actor is one step in the full LinkedIn intelligence stack:
LinkedIn Post Search Scraper -> find posts in your niche|vThis Actor (Profile Comments) -> see who is actively commenting|vLinkedIn Profile Scraper -> enrich commenters with verified email|vLinkedIn Jobs Scraper -> cross-reference with hiring intent|vYour CRM (HubSpot/Salesforce) -> personalized warm outreach at scale
Each Actor in the stack is atomic - run any one independently or chain them.
π§© Integrations
HubSpot
import { ApifyClient } from 'apify-client';import { Client as HubSpotClient } from '@hubspot/api-client';const apify = new ApifyClient({ token: process.env.APIFY_TOKEN });const hubspot = new HubSpotClient({ accessToken: process.env.HUBSPOT_TOKEN });const run = await apify.actor('unseenuser/linkedin-profile-comments-scraper').call({profiles: ['https://www.linkedin.com/in/satyanadella','https://www.linkedin.com/in/williamhgates',],postedLimit: 'month',});const { items } = await apify.dataset(run.defaultDatasetId).listItems();for (const c of items) {await hubspot.crm.contacts.basicApi.update(contactId, {properties: { last_linkedin_comment: c.commentary, last_comment_at: c.createdAt },});}
Salesforce
import jsforce from 'jsforce';const conn = new jsforce.Connection({ loginUrl: 'https://login.salesforce.com' });await conn.login(process.env.SF_USER, process.env.SF_PASS + process.env.SF_TOKEN);for (const c of items) {await conn.sobject('Lead').update({Id: leadId,Last_LinkedIn_Comment__c: c.commentary,Last_LinkedIn_Comment_URL__c: c.linkedinUrl,});}
Clay
In a Clay table, add an HTTP API column pointing to Apify's run-sync-get-dataset-items endpoint:
POST https://api.apify.com/v2/acts/unseenuser~linkedin-profile-comments-scraper/run-sync-get-dataset-items?token=APIFY_TOKENBody: { "profiles": ["{{LinkedIn URL}}"], "postedLimit": "month" }
Map the commentary field to a new Clay column, then use it in your AI message generator.
Airtable
import Airtable from 'airtable';const base = new Airtable({ apiKey: process.env.AIRTABLE_KEY }).base('appXXXX');for (const c of items) {await base('Comments').create({Author: c.actor.name,Comment: c.commentary,URL: c.linkedinUrl,Posted: c.createdAt,});}
n8n
Use the Apify node:
- Operation:
Run Actor and get dataset items - Actor:
unseenuser/linkedin-profile-comments-scraper - Input JSON:
{ "profiles": ["{{ $json.linkedin_url }}"] }
Then pipe the output into your CRM node of choice.
Make (Integromat)
Use the Apify > Run an actor module, then Apify > Get dataset items, then your CRM/email module. No code.
Zapier
Trigger: Apify > Actor Run Finished. Action: HubSpot / Salesforce / Pipedrive > Update Contact using the comment field as the personalization token.
π Related scrapers
Build a complete LinkedIn intelligence stack:
- LinkedIn User Activity Scraper (combined) - get reactions too in one run
- LinkedIn Profile Reactions Scraper - reactions-only for topic interest mapping at scale
- LinkedIn Profile Scraper + Email Enrichment - enrich with verified emails for outreach
- LinkedIn Jobs Scraper - see who they're hiring (intent signal)
- LinkedIn Post Search Scraper - find the thought leaders whose posts they engage with
See all 20 scrapers by unseenuser
π·οΈ Target Keywords
linkedin profile comments scraper, linkedin user comments, scrape linkedin comments by user, linkedin comments history, linkedin sdr tool, personalized outreach, linkedin comment text api, profile activity scraper, linkedin engagement, warm outreach, social selling, prospect intelligence, comment scraping, sales triggers, no cookies linkedin scraper, no login linkedin scraper, account-ban-safe linkedin scraping, bulk linkedin scraper, abm prospecting tool, b2b sales intelligence, warm outreach automation, linkedin engagement data api
Apify Actor - Terms of Service
Version: 4.0 Effective Date: May 5, 2026
0. ACCEPTANCE BY USE - IMPORTANT
Read this section first.
These Terms of Service ("Terms") form a binding legal agreement between you ("User," "you," "your") and UnseenUser, the Publisher of this Apify actor ("UnseenUser," "the Publisher," "we," "us," "our").
0.1 How You Accept These Terms
You accept these Terms by any of the following actions, each of which constitutes a clear, affirmative act of acceptance:
(a) Running the Actor - Initiating any execution of the Actor on the Apify platform (b) Using any output returned by the Actor for any purpose (c) Continuing to access the Actor's listing or documentation after these Terms are visible
0.2 Continuing Acceptance
Each time you run the Actor or use its outputs, you reaffirm your acceptance of the then-current Terms. If you do not agree to these Terms or any subsequent update, you must stop using the Actor immediately.
0.3 No Anonymous Acceptance
You cannot disclaim acceptance by:
- Failing to read these Terms before running the Actor
- Running the Actor through automated systems
- Sharing your Apify account with others who may not have read these Terms
By the act of running the Actor on Apify, you bind yourself, your organization (if applicable), and any individuals or systems acting on your behalf or under your authority.
0.4 If You Do Not Accept
If you do not agree to these Terms, you must not run the Actor. No use is authorized without acceptance.
PREAMBLE - UNDERSTANDING THE ARCHITECTURE
Before using the Actor, please understand the technical architecture of the service:
The Data Flow
You (User) -> Apify Platform -> Actor (software) -> Third-Party API -> Source PlatformvYou (User) <- Apify Platform <- Actor (software) <- Third-Party API
What Each Party Does
- You (the User): Run the Actor on the Apify platform with input parameters you choose
- Apify: Operates the cloud infrastructure that hosts and executes Actors. Apify is a Czech-incorporated company (Apify Technologies s.r.o.) governed by its own Terms of Service.
- The Publisher (us): Publishes software code (the Actor) on Apify's platform. The Actor is a thin wrapper that translates your input into requests to a third-party API and returns the API's responses to you. The Publisher does not operate scraping infrastructure. The Publisher does not store or retain data returned by the Actor. The Publisher does not see, log, or process the personal data of any individuals returned in the Actor's outputs beyond what is incidental to passing the data through.
- Third-Party API Provider: HarvestAPI (https://harvest-api.com) or Scrape Creators (https://scrapecreators.com). These are independent third-party companies that operate scraping infrastructure and return data from source platforms.
- Source Platform: LinkedIn, TikTok, YouTube, Reddit, Linktree, etc. These are the platforms whose publicly visible data is accessed by the Third-Party API Providers.
Why This Matters
Your relationship with the Publisher is that of a software user to a software vendor. The Publisher has the responsibilities of a software vendor (functional code, accurate documentation) and the limits of one (the Publisher is not responsible for how you use the data you obtain).
These Terms operate alongside but do not replace:
- Apify's Terms of Service and Acceptable Use Policy (governing your relationship with Apify)
- HarvestAPI Terms of Service and Scrape Creators Terms of Service (governing the underlying data infrastructure)
- Source Platform terms (LinkedIn, TikTok, etc.) governing the public data accessed
- Applicable law in your jurisdiction and the jurisdictions of data subjects
These Terms incorporate the actor-specific addendum published in each Actor's individual listing ("Addendum"). In the event of a conflict, the more restrictive provision applies.
1. NATURE OF THE SERVICE
1.1 What the Actor Is
The Actor is a software program published on the Apify platform. Each Actor:
(a) Accepts structured input from you on the Apify platform (b) Translates that input into HTTP requests to a third-party API operated by HarvestAPI or Scrape Creators (c) Receives HTTP responses from that third-party API (d) Returns the response data to you in a structured format on the Apify platform
The Actor's source code is hosted on Apify's infrastructure. The Actor runs in Apify's cloud, not on the Publisher's servers. The Publisher operates no servers running the Actor.
1.2 What the Actor Is Not
The Actor is not:
(a) A scraping tool - the Publisher does not operate scraping infrastructure, proxies, headless browsers, or fake accounts (b) A direct connection to any source platform - connections to source platforms are made by HarvestAPI / Scrape Creators (c) A data storage or data retention service - the Publisher does not maintain a database of any data the Actor returns (d) A licensed access channel to LinkedIn, TikTok, YouTube, Reddit, X (Twitter), Meta, Linktree, or any other source platform (e) Affiliated with, endorsed by, sponsored by, or authorized by any source platform
1.3 The Publisher's Limited Role
The Publisher's role is limited to:
(a) Designing and writing the Actor's source code (b) Publishing the Actor on the Apify Store (c) Maintaining the Actor (updating it when API providers change schemas) (d) Providing documentation and customer support via Apify's contact mechanism
The Publisher is a software vendor, similar to a developer who publishes an app on the Apple App Store or Google Play Store. The Publisher is not a data provider, data broker, data processor, or data controller for purposes of GDPR, CCPA, Israel's Privacy Protection Law, or equivalent.
1.4 The Third-Party API Providers' Role
HarvestAPI (https://harvest-api.com) and Scrape Creators (https://scrapecreators.com) are independent third-party companies. They:
(a) Operate the actual data scraping infrastructure (b) Maintain relationships with source platforms (or accept the operational risk of accessing public data without such relationships) (c) Are themselves Apify publishers (HarvestAPI publishes 9+ actors directly; Scrape Creators publishes 10+) (d) Provide their own Terms of Service governing their operations (e) Are responsible for compliance obligations relating to the data collection itself
The Publisher is a customer of these providers. The Publisher is not their agent, partner, or representative.
2. WHO MAY USE THE ACTOR
2.1 Eligibility
You may use the Actor only if:
(a) You are at least 18 years old or the age of majority in your jurisdiction (b) You have legal capacity to enter into binding contracts (c) You are not located in or resident of a country subject to comprehensive sanctions by the United States, European Union, United Kingdom, or Israel (d) You are not on any prohibited persons list
2.2 User Representations
By using any Actor, you represent and warrant that:
(a) Truthful identity: Information you provide about your identity and intended use is accurate (b) Lawful intent: Your intended use complies with applicable law in your jurisdiction (c) Source platform compliance: You will independently comply with the Terms of Service of any source platform whose data you obtain through the Actor (d) Data subject rights: Where Actor outputs include personal data, you will respect data subject rights under applicable law (e) No prohibited use: You will not use the Actor for any of the purposes prohibited in Section 4
These representations are continuous - they must remain true throughout your use.
3. PERMITTED USES
The Actor may be used for any lawful purpose, including:
- Market research and competitive analysis
- Academic research
- Journalism and investigative reporting
- Internal business intelligence
- Brand monitoring
- Recruitment research where consistent with applicable employment law
- Building products that further process publicly available information lawfully
Specific permitted uses for each Actor are described in that Actor's individual listing and Addendum.
4. PROHIBITED USES
You may not use the Actor for any of the following:
4.1 Illegal Activity
Activity illegal under the law of your jurisdiction, the User's jurisdiction, or the jurisdiction of any data subjects.
4.2 Harassment, Stalking, and Personal Targeting
- Compiling profiles for harassment, stalking, or doxxing
- Tracking individuals' movements or activities without their knowledge
- Building profiles of journalists, activists, dissidents, or vulnerable populations for retaliatory purposes
4.3 Discrimination
- Using outputs for discriminatory employment, lending, housing, or insurance decisions based on protected characteristics
- Building lists for discriminatory purposes
4.4 Spam and Unsolicited Commercial Communication
- Sending unsolicited marketing in violation of CAN-SPAM, CASL, GDPR, PECR, Israeli Anti-Spam Law (Χ‘Χ’ΧΧ£ 30Χ ΧΧΧΧ§ ΧΧͺΧ§Χ©ΧΧ¨Χͺ), or equivalent laws
- Building "lead lists" from scraped contacts without proper consent infrastructure
- Reselling contact data for spam purposes
4.5 Fraud and Deception
- Identity theft or impersonation
- Generation of fake reviews, testimonials, or coordinated inauthentic behavior
- Election interference or political disinformation
- Securities fraud
4.6 Source Platform Abuse
- Using outputs to circumvent technical protection measures of source platforms
- Creating fake accounts on source platforms based on Actor outputs
- Vote manipulation, engagement manipulation, or platform algorithm gaming
- Building services that competitively substitute for source platforms
4.7 Reselling the Actor's Service
- Reselling raw Actor outputs as your own data product or scraping-as-a-service
- Sharing your Apify credentials to provide third parties indirect access
- Building competing API services using Actor outputs
4.8 AI Training Without Authorization
Using Actor outputs as training data for commercial AI/ML models without separate licensing authority from the source platform.
4.9 Sensitive Targeting
- Specifically targeting or profiling based on health conditions, sexual orientation, religious beliefs, political opinions, or other sensitive characteristics
- Targeting children under 16 (or local age of consent for data processing)
4.10 Privacy Law Violations
- Processing personal data of EU/UK/California/Israeli residents without complying with applicable privacy law
- Failing to honor data subject access, deletion, or objection requests
- Processing data for purposes incompatible with its publication context
5. SOURCE PLATFORM TERMS - YOUR RESPONSIBILITY
5.1 Acknowledgment
The Actor accesses publicly visible data on third-party platforms ("Source Platforms") through the Third-Party API Providers (HarvestAPI / Scrape Creators). Source Platforms include LinkedIn, TikTok, YouTube, Reddit, X (Twitter), Meta/Facebook, Linktree, Komi, Pillar, Linkbio, Linkme, and Amazon.
5.2 Your Sole Responsibility
You acknowledge:
(a) You are solely responsible for ensuring your downstream use of data obtained through the Actor complies with the Source Platform's Terms of Service (b) The Publisher makes no representation that any specific use is permitted under any Source Platform's terms (c) The Third-Party API Providers, not the Publisher, bear responsibility for the lawfulness of the data collection itself (d) You should review Source Platform terms before commercial use:
- LinkedIn: https://www.linkedin.com/legal/user-agreement
- TikTok: https://www.tiktok.com/legal/page/global/terms-of-service/en
- YouTube: https://www.youtube.com/static?template=terms
- X: https://twitter.com/en/tos
- Reddit: https://www.redditinc.com/policies/user-agreement
- Meta: https://www.facebook.com/legal/terms
- Linktree: https://linktr.ee/s/terms/
5.3 Cease-and-Desist Compliance
If you receive a cease-and-desist letter or other legal demand from a Source Platform regarding your use of Actor outputs, you must:
(a) Cease the contested use immediately (b) Notify UnseenUser within 48 hours via UnseenUser's Apify profile contact form (https://apify.com/UnseenUser) (c) Cooperate with the Publisher as needed to mitigate (d) Not assert against the Publisher any claim arising from your inability to use the Actor for that Source Platform
6. DATA PROTECTION - REFLECTING ACTUAL ARCHITECTURE
6.1 Roles Under Privacy Law
For purposes of GDPR, UK GDPR, CCPA, Israel's Privacy Protection Law (PPL) including Amendment 13, and equivalents:
- You (the User) are the Data Controller of any personal data you obtain through the Actor and subsequently process for your own purposes
- HarvestAPI and Scrape Creators are the entities that collect data from source platforms - they bear the responsibilities of data processors or controllers (depending on context) for the collection itself
- The Publisher acts solely as a software vendor, not as a data controller or processor, because the Publisher does not store, retain, or substantively process personal data - the Actor merely passes API responses through
6.2 No Data Retention by the Publisher
The Publisher confirms:
(a) The Publisher does not maintain a database of personal data obtained through the Actor (b) The Actor passes data from the Third-Party API directly to you on the Apify platform - data does not flow through the Publisher's infrastructure (c) Apify's standard execution and operational logging may include limited information about Actor runs (input parameters, run duration, data volume) - this is governed by Apify's own privacy practices (d) The Publisher does not access, view, or analyze your Actor outputs except as needed for technical support if you specifically share them with the Publisher
6.3 Your Obligations as Data Controller
Where your use of the Actor involves processing personal data, you are responsible for:
(a) Establishing a lawful basis for your processing (consent, legitimate interest with documented balancing test, contract, etc.) (b) Providing transparent notice to data subjects as required by applicable law (c) Honoring data subject access, rectification, erasure, restriction, and portability requests (d) Implementing appropriate security measures (e) Conducting Data Protection Impact Assessments where required (f) Appointing a Data Protection Officer if your operations require one (g) Registering databases with applicable supervisory authorities (h) Honoring opt-out requests for direct marketing (i) Cross-border transfer safeguards where data crosses borders
6.4 Israel's Amendment 13 - User Compliance
If your use of the Actor involves Israeli residents' personal data, you must comply with the Privacy Protection Law as amended (Amendment 13, effective August 14, 2025). These obligations are yours as the data controller, not the Publisher's as the software vendor.
6.5 Sensitive Data Targeting Restrictions
You will not use the Actor to specifically target, profile, or build datasets focused on:
- Health or medical conditions
- Religious beliefs
- Political opinions
- Sexual orientation or gender identity
- Genetic or biometric data
- Criminal history
- Children under 16
7. INTELLECTUAL PROPERTY
7.1 Actor Code
The Actor's source code, schemas, documentation, and branding are owned by the Publisher. You receive a limited, non-exclusive, non-transferable, revocable license to use the Actor for permitted purposes during your active subscription/run with Apify.
7.2 Output Data
The Publisher claims no ownership over the public data the Actor returns. Source Platforms may have copyright, database rights, or other rights in their data; data subjects may have copyright in user-generated content. Your use of output data must respect these rights independently.
7.3 Restrictions
You may not reverse engineer, decompile, or reuse the Actor's code in a competing actor.
7.4 Feedback
Feedback you provide may be used by the Publisher to improve products without compensation to you.
8. PRICING AND PAYMENT
8.1 Apify Platform Billing
Pricing is administered through Apify's pricing models. Apify processes all payments. Apify's payment terms govern refunds and disputes.
8.2 Pricing Changes
The Publisher may change Actor pricing with at least 14 days' notice via the Actor's Apify listing.
8.3 No Refunds for Misuse
If your access is suspended or terminated for breach of these Terms, you forfeit any unused balance and are not entitled to refunds.
9. SERVICE AVAILABILITY AND CHANGES
9.1 No Uptime Guarantee
The Actor depends on:
(a) The Apify platform (b) Underlying API providers (HarvestAPI, Scrape Creators) (c) Source Platforms' continued public accessibility
Any of these may change behavior, restrict access, or become unavailable without notice. The Publisher makes no uptime guarantees.
9.2 Service Discontinuation
The Publisher may discontinue any Actor at any time. Reasonable notice will be provided when feasible.
10. DISCLAIMERS
10.1 "AS IS" Service
THE ACTOR IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTIES OF ANY KIND, INCLUDING WARRANTIES OF MERCHANTABILITY, FITNESS FOR PURPOSE, NON-INFRINGEMENT, OR ACCURACY OF DATA.
10.2 No Representation of Lawfulness
The Publisher makes no representation that your specific use of the Actor or the data it returns is lawful in your jurisdiction or under any Source Platform's terms. The burden of determining lawfulness for your use case is yours.
10.3 No Endorsement of Source Content
Content returned by the Actor was created by third parties. The Publisher does not endorse, verify, or take responsibility for it.
11. LIMITATION OF LIABILITY
11.1 Aggregate Liability Cap
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL THE AGGREGATE LIABILITY OF THE PUBLISHER FOR ALL CLAIMS RELATING TO THE ACTOR EXCEED THE GREATER OF:
(a) ONE HUNDRED U.S. DOLLARS (US $100), OR (b) THE AMOUNTS YOU PAID THROUGH APIFY FOR USE OF THE ACTOR IN THE THREE (3) MONTHS IMMEDIATELY PRECEDING THE EVENT
11.2 Excluded Damages
THE PUBLISHER IS NOT LIABLE FOR INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES, OR FOR LOSS OF PROFITS, REVENUE, OR DATA, EVEN IF ADVISED OF THE POSSIBILITY.
11.3 Time Limit
Any claim must be brought within one (1) year of the event.
12. INDEMNIFICATION
12.1 Your Indemnification of the Publisher
You agree to defend, indemnify, and hold harmless the Publisher from any:
- Claims arising from your use of the Actor
- Claims arising from your violation of these Terms
- Claims arising from your violation of any law (including privacy law)
- Claims arising from your violation of any Source Platform's Terms of Service
- Claims arising from your processing of personal data obtained through the Actor
- Reasonable attorneys' fees and costs of defending such claims
12.2 Defense
The Publisher may assume defense at your expense. You will cooperate with the Publisher's defense.
12.3 Scope
The indemnification covers reasonable, foreseeable third-party claims arising from your use. It does not extend to:
- Claims arising from the Publisher's gross negligence or willful misconduct
- Claims regarding the Actor's source code itself (those are the Publisher's responsibility)
- Claims regarding the Third-Party API Provider's data collection (those are their responsibility)
13. SUSPENSION AND TERMINATION
13.1 Termination by the Publisher
The Publisher may terminate your access for material breach, illegal use, breach of warranty, or upon credible legal demand.
13.2 Effects of Termination
Your license ends, you must cease use, and applicable provisions survive.
13.3 Termination by You
You may stop using the Actor at any time on Apify.
14. DISPUTE RESOLUTION
14.1 Informal Resolution First
Send a detailed written description of the dispute via UnseenUser's Apify profile contact form (https://apify.com/UnseenUser) and wait 60 days for resolution attempt before any formal claim.
14.2 Governing Law
These Terms are governed by the substantive laws of the State of Israel, without regard to conflict of law principles.
14.3 Exclusive Jurisdiction
Any dispute shall be brought exclusively in the competent civil courts of Tel Aviv-Jaffa, Israel.
14.4 No Class Actions
You agree to bring claims only in your individual capacity.
14.5 Attorneys' Fees
The prevailing party recovers reasonable attorneys' fees.
15. MISCELLANEOUS
15.1 Entire Agreement
These Terms (with Addendum and incorporated documents) are the entire agreement.
15.2 Severability
Unenforceable provisions are reformed to the minimum extent or severed.
15.3 Assignment
You may not assign without the Publisher's consent. The Publisher may assign to affiliates, successors, or acquirers.
15.4 Force Majeure
Neither party is liable for failure due to events beyond reasonable control, including changes by Source Platforms or Third-Party API Providers, or actions by Apify.
15.5 Third-Party Beneficiaries
Apify, HarvestAPI, and Scrape Creators are intended third-party beneficiaries of Sections 4 (Prohibited Uses), 5 (Source Platform Compliance), and 12 (Indemnification).
15.6 Survival
Sections 0 (Acceptance), 4, 5, 6, 7, 10, 11, 12, 14, and 15 survive termination.
15.7 Language
English controls. Translations are for convenience only.
15.8 Publisher Identification for Legal Process
The Publisher operates on the Apify platform under the username UnseenUser (apify.com/UnseenUser). The Publisher is a registered legal entity. Upon receipt of valid legal process (subpoena, court order, or equivalent) directed through Apify's official channels, the Publisher's full legal identity may be disclosed as required by law. This Section ensures that you have a valid path to legal recourse if needed.
16. ACKNOWLEDGMENT
By using any Actor, you acknowledge that:
(a) You have read these Terms (b) You understand the architecture: you are using software (the Actor) on Apify's platform that calls third-party APIs (c) You accept responsibility for your use, including for compliance with Source Platform terms (d) Your indemnification obligations cover third-party claims arising from your use (e) Disputes are resolved in Israeli courts (f) The Publisher's identity, while not publicly disclosed in this listing, can be obtained through valid legal process via Apify
For questions, use UnseenUser's Apify profile contact form (https://apify.com/UnseenUser) before running the Actor.
APPENDIX - Document Version History
| Version | Date | Summary |
|---|---|---|
| 1.0 | May 5, 2026 | Initial publication |
| 2.0 | May 5, 2026 | Hardened (over-broad - treated User as data broker) |
| 3.0 | May 5, 2026 | Architecturally accurate - Publisher as software vendor |
| 4.0 | May 5, 2026 | Anonymous Publisher. All personally identifying information removed. Acceptance-by-Use mechanism formalized. |
These Terms reflect best practices for anonymous Apify actor publishing as of May 2026. Not a substitute for legal advice. Consult qualified Israeli commercial counsel before deploying.
π‘οΈ Actor-Specific ToS Addendum - π¬ LinkedIn Profile Comments Scraper
This addendum supplements the Master Terms of Service V4.0. By running this Actor, you accept both the Master ToS and this addendum.
A. Architectural Disclosure
This Actor is a software wrapper. It accepts your input parameters, calls the HarvestAPI /linkedin/profile-comments endpoint, and returns the response data to you on the Apify platform. UnseenUser does not store, log, or substantively process the data returned. The data flows from HarvestAPI through Apify's runtime directly to you.
B. Nature of Data Returned
This Actor returns: All comments a target LinkedIn profile has posted on other people's content. Each comment includes: comment text (commentary), comment URL, ISO + Unix timestamps, parent post ID, reply count (numComments), reaction-type breakdown (reactionTypeCounts - LIKE/EMPATHY/PRAISE/INTEREST/APPRECIATION/ENTERTAINMENT), edit/pinned/contributed flags, plus the actor's full identity (name, headline, profile picture).
Where the Actor's output includes individual people's names, photos, professional headlines, or content authored by them, that data constitutes personal data subject to GDPR, CCPA, Israeli Privacy Protection Law (including Amendment 13), and equivalent privacy laws in your downstream processing - but only in your hands as the data controller, not in UnseenUser's hands as the software vendor.
C. Permitted Use Cases
You may use this Actor for the following purposes (non-exhaustive list):
- Warm-outreach triggers - message a prospect referencing what they recently commented on
- Sales intelligence - understand a prospect's professional opinions before reaching out
- Account-based marketing - see what content topics resonate with target accounts
- Recruiter sourcing - see what a candidate says about their industry before contact
- Reputation monitoring - track what your CEO or brand ambassadors say on others' posts
- Influencer vetting - verify what an influencer actually says (not just what they post)
- Competitive intelligence - track what competitor executives comment on publicly
- Buying signals - detect when a target comments on competitor / category content
D. Specifically Prohibited Uses
In addition to Master ToS Section 4 prohibitions, you may NOT:
- Build cold-DM tools that auto-message profiles based on what they recently commented on - even with personalized openers, this remains spam under most anti-spam laws unless you have prior consent (GDPR, Israeli Anti-Spam Law, CAN-SPAM, CASL)
- Profile individuals based on their comments on politically- or socially-charged content for discriminatory purposes (hiring, lending, insurance)
- Track comments on sensitive content (mental health posts, illness disclosures, layoff announcements) to identify vulnerable people for predatory targeting
- Republish individuals' comments verbatim in commercial products outside their original LinkedIn context
- Use comment patterns to identify and harass commenters whose views you or your client disagrees with
- Build 'engagement scoring' systems that label individuals without their knowledge and sell or share the scores
- Use comment data to train commercial AI/LLM models without proper licensing - LinkedIn's Terms explicitly restrict this, and commenters retain copyright in their own words
- Aggregate comments across many profiles to build comprehensive 'engagement personality profiles' of named individuals
E. Platform Terms of Service Considerations
LinkedIn restricts engagement-data extraction more aggressively than profile data - comments and reactions are 'real-time pulse' data LinkedIn considers strategic. LinkedIn has actively litigated against scrapers (LinkedIn v. Proxycurl 2025 settled, LinkedIn v. ProAPIs 2025-2026 settled, hiQ Labs v. LinkedIn ongoing). This Actor accesses publicly visible LinkedIn engagement data via HarvestAPI - HarvestAPI bears responsibility for the lawfulness of the data collection. Your downstream use must independently comply with LinkedIn's User Agreement. If LinkedIn issues a cease-and-desist regarding data obtained via this Actor, notify UnseenUser within 48 hours via the Apify profile contact form (apify.com/UnseenUser) and cease your use immediately.
F. Personal Data - Heightened Care
Comments are HEIGHTENED-CARE personal data. They reveal:
- Professional opinions and beliefs - what the person actually thinks (vs. what they post curatedly)
- Reading habits and topical interests - which content they engage with
- Social and political views - when reacting to such content
- Relationships and networks - whose posts they consistently engage with
- Emotional state - comment tone reveals mood, stress, life events
This is high-sensitivity data under GDPR Article 6 (lawful basis required) and may touch GDPR Article 9 (special categories - religion, health, politics) when commenting on related content.
Recent European DPA decisions and German court rulings increasingly hold that the data subject would NOT reasonably expect their LinkedIn engagement to be used for commercial cold outreach. Your GDPR balancing test under Article 6(1)(f) must specifically address this expectation.
G. Prospecting Compliance
If you use this Actor for B2B prospecting:
- Establish a documented lawful basis under GDPR Article 6 - typically legitimate interest with completed balancing test
- Honor opt-outs and the right to object under GDPR Article 21 - this is NOT optional
- Comply with GDPR, CCPA, Israeli Anti-Spam Law (Χ‘Χ’ΧΧ£ 30Χ - prior consent required for marketing communications to natural persons in Israel)
- Comply with CAN-SPAM (US), CASL (Canada), PECR (UK), and equivalent laws in your operating jurisdictions
- Do not use sensitive engagement (health, religion, politics) as a basis for any outreach
- Disclose in your first outreach message how you found them when asked
H. Comment Author Copyright
Each comment is independently copyrighted by its author. You may:
- Quote with attribution (typically fair use)
- Aggregate metrics (no copyright issue - counts and types are facts)
- Perform sentiment analysis (typically fair use if results are aggregated)
You may NOT:
- Republish comments verbatim in commercial products
- Use comments to train AI without proper licensing
- Translate and republish without authorization
- Build a "LinkedIn comments search engine" using this data
I. Sensitive-Engagement Patterns
Some content attracts particularly sensitive comments:
- Layoff announcements - commenters often include affected employees
- Illness/bereavement disclosures - commenters share intimate personal info
- Political/social controversies - commenters reveal protected-category views
Do NOT weaponize these disclosures:
- Don't build "vulnerability lists" based on inferred life events from comment patterns
- Don't use bereavement comments as triggers for grief-targeting marketing
- Don't use illness disclosures to identify candidates for medical-related products without explicit consent
J. Data Minimization
Where possible, store only the engagement SIGNAL (e.g., "engaged with topic X") rather than the full comment text. This:
- Reduces your data protection exposure significantly
- Honors the spirit of GDPR Article 5(1)(c) data minimization
- Makes data subject right-to-deletion requests easier to honor
K. Cross-Profile Aggregation Limit
Pulling comments for ONE profile is bounded use. Pulling comments for MANY profiles and aggregating into a "people search" database crosses into data broker territory and triggers:
- California Delete Act (effective 2026)
- GDPR Article 14 (transparency obligations to data subjects)
- Israeli Privacy Law Amendment 13 (statutory damages of NIS 10,000 without proof of harm)
- Heightened LinkedIn ToS enforcement risk