Lemon8 Search, Profile & Post Monitor
Pricing
from $0.06 / 1,000 lemon8 posts
Lemon8 Search, Profile & Post Monitor
Export public Lemon8 posts from keyword, topic, profile and exact URLs with stable IDs, factual fields, media URLs, coverage and safe exact-post monitoring.
Pricing
from $0.06 / 1,000 lemon8 posts
Rating
0.0
(0)
Developer
Luka
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Collect public Lemon8 posts from keyword searches, topic URLs, public profiles, exact posts, and public feed URLs. Get stable post identities, factual engagement and media fields, or safely monitor one exact post for NEW, UPDATED, and confirmed ENDED changes.
๐ Start in 60 seconds
The default collects up to 100 US fashion posts:
{"workflow": "collect","searchTerms": ["fashion"],"region": "us","detailLevel": "core","maxResults": 100}
Core mode reads the public result payload directly and is the lowest-cost option. Missing optional fields remain null; the Actor does not guess metrics or identities.
๐ฏ Choose the right workflow
| Goal | Input | Result |
|---|---|---|
| Search one or more topics | searchTerms + workflow: collect | Query-faithful public post rows |
| Collect a topic or profile | startUrls + workflow: collect | Posts tied to that public surface |
| Enrich exact post fields | detailLevel: detailed | One exact public detail request per delivered post |
| Track one post | one exact post URL + workflow: monitor | Baseline, factual updates, and safe removal semantics |
Monitoring accepts exactly one public post URL. Its first run creates a baseline by default; later complete comparable runs emit factual changes. One missing observation never ends a post.
๐ฆ What you get

| Group | Fields |
|---|---|
| Identity | stableId, postId, url, region, postType |
| Content | title, description, ocrText, hashtags, publishedAt |
| Author | authorId, authorUsername, authorName, authorBio, authorAvatarUrl, authorVerified |
| Engagement | likeCount, commentCount, saveCount, shareCount, viewCount when source-published |
| Media | primaryImageUrl, imageUrls, videoUrls |
| Audit | observedAt, sourceTargets, sourceClass, coverageStatus |
{"recordType": "post","stableId": "lemon8:post:7460605475378283050","postId": "7460605475378283050","url": "https://www.lemon8-app.com/@janeddove/7460605475378283050?region=us","title": "Fashion wardrobe essentials","authorUsername": "janeddove","likeCount": 16074,"sourceClass": "PUBLIC_FIRST_PARTY"}
๐๏ธ Input guide
searchTermsaccepts up to 10 keywords; each result must be literally query-faithful.startUrlsaccepts public topic, profile, exact post, experience/search, or feed URLs.regionselects a canary-proven public region: US, Singapore, Thailand, or Japan.maxResultsandmaxResultsPerTargetare hard output caps.detailLevel: corereuses the listing payload.detailedopens each exact post and requiresmaxDetailRequests >= maxResults.- Runtime, request, transfer, platform-usage, and buyer-charge guards fail before surprise spending.
Duplicates merge by stable Lemon8 post ID. The Actor never imports account cookies, uses login-only surfaces, or solves CAPTCHA.
๐ฐ Pricing
Core costs $0.06 per 1,000 posts plus $0.0013 for a trustworthy collection. At 1,000 rows the complete total is $0.0613, below the closest current basic-search offer at about $0.075 including its start event.
| Paid event | Planned price |
|---|---|
| Core post | $0.06 / 1,000 |
| Detailed post | $1.40 / 1,000 |
| Comparable monitoring scan | $0.0013 / scan |
| Delivered change | $0.06 / 1,000 |
Detailed replaces Core row pricing; a row is not charged twice. Failed, blocked, or structurally invalid targets are free. Coverage rows are always free.
โ Coverage you can trust
COMPLETEโ every requested target returned a trustworthy public result window.EMPTY_CONFIRMEDโ an exact public post was conclusively absent.CAPPEDโ a declared result or resource limit stopped the walk.PARTIAL,BLOCKED, orFAILEDโ the scope is unsafe for removal decisions.
Only complete comparable exact-post monitoring may advance state. ENDED requires two consecutive comparable absences. Failed, blocked, partial, filtered, or capped observations never create false removals or overwrite good state.
๐ API and automation
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('luminar/lemon8-search-profile-post-monitor').call({workflow: 'collect',searchTerms: ['fashion', 'skincare'],region: 'us',detailLevel: 'core',maxResults: 200});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Use the Dataset for rows and KVS OUTPUT for counts, field coverage, resource limits, accepted billing events, and next action. Keep scheduled monitor runs sequential and reuse the same input and stateNamespace.
โ ๏ธ Not yet supported
Login-only content, private profiles, CAPTCHA solving, imported cookies/tokens, direct file downloads, outbound alerts, AI sentiment, inferred trend/demand scores, and profit or recommendation claims are not supported. United Kingdom, Malaysia, Philippines, Indonesia, Brazil, Mexico, and other unlisted regions are not yet supported. Comment bodies are not yet supported, and optional fields remain nullable when Lemon8 does not publish them.
โ FAQ and support
Why is an optional field null?
The selected public Lemon8 surface did not publish it. Check fieldCoverage in OUTPUT.
Why did monitoring return no paid rows?
The first run normally seeds a quiet baseline, and unchanged repeats emit no paid changes.
Can a failed run mark a post as ended?
No. Only two consecutive complete comparable absences can emit ENDED.
For support, share the run ID, public input, coverage status, and OUTPUT. Never share Lemon8 cookies, passwords, or private tokens.