Lemmy Scraper: Posts, Comments, Communities & Users
Pricing
from $1.00 / 1,000 posts
Lemmy Scraper: Posts, Comments, Communities & Users
Scrape posts, comments, communities, search results and user profiles from any Lemmy instance in the fediverse, through the instance's own official API. No login or API key.
Pricing
from $1.00 / 1,000 posts
Rating
0.0
(0)
Developer
Alex Burton
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Collect data from any Lemmy instance in the fediverse through that server's own official API. No login, no API key, no HTML parsing.
| Mode | What you get |
|---|---|
| Posts | Title, body, link, score, up/down votes, comment count, community, author and timestamps |
| Comments | Comment text with its thread depth, score, author, community and parent post |
| Communities | The instance's community directory with subscriber counts and weekly/monthly active users |
| Search | Posts, comments, communities and users matching a query |
| Users | Profile, bio, post and comment counts, join date |
Why use this one
- Any instance, not just one. The server is an input, so the same Actor reads lemmy.world, lemmy.ml, beehaw.org, sh.itjust.works or your own private server. Most Lemmy tools are hard-wired to a single host.
- Official API. Lemmy publishes and documents these endpoints; nothing here depends on the look of the web front end.
- Federated or local. Choose whether to include content federated in from other servers or only what this instance hosts.
- Clear failure messages. Lemmy instances run different versions. If a server doesn't answer the
/api/v3path, the log says so and names the instance, instead of returning an empty dataset with no explanation. - Flat output. Posts, comments, communities and users come back as plain rows ready for a spreadsheet or a database.
How to use it
- Choose What to scrape.
- Set the Lemmy instance (defaults to
lemmy.world). - Optionally narrow to Communities, or fill in Search terms or Users.
- Pick a Sort order and a cap, then click Start.
Communities are accepted in any of these forms:
technology!technology@lemmy.worldhttps://lemmy.world/c/technology
Example input: hot posts in one community
{"mode": "posts","instance": "lemmy.world","communities": ["technology"],"sort": "Hot","maxItemsPerTarget": 100}
Example input: one post's whole discussion
{"mode": "comments","instance": "lemmy.world","postId": "https://lemmy.world/post/53225445","sort": "Old","maxItemsPerTarget": 500}
Example input: biggest communities on an instance
{"mode": "communities","instance": "lemmy.ml","sort": "TopAll","maxItemsPerTarget": 200}
Output
Every row has a type field: post, comment, community or user. The dataset ships with a table view for each.
Post
{"type": "post","id": 53225445,"title": "A new release is out","url": "https://example.com/release","score": 39,"upvotes": 40,"downvotes": 1,"commentCount": 6,"communityName": "technology","creatorName": "someone","publishedAt": "2026-10-16T22:31:13Z","nsfw": false,"postUrl": "https://lemmy.world/post/53225445","instance": "https://lemmy.world"}
Community
{"type": "community","rank": 1,"name": "technology","title": "Technology","subscribers": 88826,"postCount": 22232,"commentCount": 968547,"usersActiveMonth": 14686,"url": "https://lemmy.world/c/technology"}
Pricing
Pay only for results:
| Result | Price |
|---|---|
| Post or comment | $1.00 per 1,000 |
| Community | $3.00 per 1,000 |
| User profile | $3.00 per 1,000 |
Set a maximum spend per run in the run options and the Actor stops cleanly when it's reached.
Limits to know about
- Instances run different Lemmy versions. This Actor targets
/api/v3, which the great majority of servers still serve. A server that has moved on will answer 404; the log then names the instance so you know to switch servers rather than wonder why the run was empty. - Volunteer-run servers rate-limit hard. The default of 2 parallel requests is deliberate. Raising it is the fastest way to get temporarily blocked, and lemmy.world in particular returns HTTP 429 quickly.
- Field coverage varies by version and by instance. Optional fields such as a user's display name, avatar or banner are omitted entirely by some servers; those come back as
nullrather than breaking the run. - Only public, logged-out data. Subscribed listings need an account, so that listing type returns nothing without one.
- Comment depth is derived from Lemmy's
pathfield. On instances that don't populate it,depthisnull. - Votes are the instance's own tallies and can differ between servers for the same federated post.
FAQ
Do I need a Lemmy account? No. Everything here is public, logged-out data.
Can I scrape more than one instance in a run? Not in a single run — set the instance per run. Create one Apify task per instance and schedule them separately.
Why did my run return nothing? Check the log. Either the instance didn't answer the /api/v3 path, the community name was wrong, or a rate limit was hit. The message says which.
Can I monitor a community? Yes. Use Posts with sort New, set a schedule in Apify Console, and connect the dataset to Slack, Google Sheets, Zapier or Make.
Is this allowed? Lemmy's API is open by design and these are the same endpoints its own apps use. Keep the concurrency low out of courtesy to volunteer-run servers. Output contains public usernames and post text, so handle it in line with any privacy law that applies to you.
Feedback
Found a bug or need a field that's missing? Open an issue on the Actor's Issues tab.