Bluesky Scraper - Posts, Profiles, Followers
Pricing
from $0.35 / 1,000 results
Bluesky Scraper - Posts, Profiles, Followers
Scrape and export Bluesky/AT Protocol posts, profiles, followers, follows, and actor search results to clean CSV/JSON datasets. Built for social listening, research, lead lists, analytics, and automation. Uses public endpoints; post search supports app-password auth.
Pricing
from $0.35 / 1,000 results
Rating
0.0
(0)
Developer
Open Web Team
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Bluesky Scraper API - Posts, Profiles, Followers
Export public Bluesky and AT Protocol data to clean Apify datasets for social listening, research, lead discovery, dashboards, and automation.
This Actor collects Bluesky profiles, author feeds, followers, follows, actor search results, and authenticated post-search results. It is built for users who want structured CSV/JSON output they can plug into spreadsheets, BI tools, APIs, and workflows.
Quick Preview
| Input | Output |
|---|---|
| Bluesky handle, DID, keyword, or account list | Clean Apify dataset rows |
Mode: profiles, authorFeed, followers, follows, actorSearch, searchPosts | CSV/JSON exports with typed fields |
| Optional app password for post search | Dataset views for posts, profiles, and relationships |
Why Use This Actor
- Clean dataset rows instead of deeply nested raw AT Protocol objects.
- Separate Apify dataset views for
Overview,Posts,Profiles, andRelationships. - Public-data modes work without a Bluesky login.
- Post search supports Bluesky app-password auth when the search endpoint requires it.
- Output is designed for CSV/JSON export, dashboards, scheduled runs, and downstream APIs.
- Transparent limits and auth behavior, with no browser, cookies, or proxy setup required.
What You Can Extract
| Mode | What it returns | Authentication |
|---|---|---|
actorSearch | Bluesky profiles matching a keyword | Not required |
profiles | Profile details for one or more handles/DIDs | Not required |
authorFeed | Recent posts from one or more public accounts | Not required |
followers | Followers of one or more public accounts | Not required |
follows | Accounts followed by one or more public accounts | Not required |
searchPosts | Public posts matching a keyword or phrase | Bluesky app password required |
Post search currently requires a Bluesky app password because Bluesky's post-search endpoint can require authentication. Use a Bluesky app password, not your main account password.
Common Use Cases
- Monitor Bluesky posts mentioning a brand, product, topic, or hashtag.
- Export public Bluesky profiles for research or lead discovery.
- Build follower/following lists around customers, competitors, creators, or communities.
- Collect recent posts from a list of public accounts.
- Feed Bluesky data into Google Sheets, Airtable, Make, Zapier, Slack, BI tools, or your own database.
- Build research datasets from public AT Protocol data.
Output Preview
Rows are pushed to the default Apify dataset as structured JSON records. You can export the same data as CSV, JSON, Excel, XML, RSS, or HTML from Apify.
Example dataset table:
| Type | Handle / Author | Text or Description | URL | Engagement |
|---|---|---|---|---|
post | example.bsky.social | We are testing a new data workflow... | Post URL | 250 likes, 34 reposts |
profile | bsky.app | Official Bluesky account | Profile data | follower/follow/post counts |
follower | example.bsky.social | Follower of bsky.app | Relationship row | profile metrics |
Dataset Views
| View | Best for |
|---|---|
Overview | Quick scan across all row types |
Posts | Post text, author, URL, timestamps, and engagement counts |
Profiles | Handles, display names, bios, avatars, and profile metrics |
Relationships | Followers/follows rows with source and target accounts |
Input Examples
Search Profiles
{"mode": "actorSearch","query": "data science","maxResults": 100}
Get Profiles
{"mode": "profiles","actors": ["bsky.app", "jay.bsky.team"]}
Get Recent Posts From An Account
{"mode": "authorFeed","actors": ["bsky.app"],"maxResults": 100}
Get Followers
{"mode": "followers","actors": ["bsky.app"],"maxResults": 500}
Get Accounts A User Follows
{"mode": "follows","actors": ["bsky.app"],"maxResults": 500}
Search Posts
{"mode": "searchPosts","query": "AI agents","maxResults": 100,"sort": "latest","identifier": "your-handle.bsky.social","appPassword": "your-app-password"}
Sample Output
Post Row
{"recordType": "post","uri": "at://did:plc:example/app.bsky.feed.post/3abc123","url": "https://bsky.app/profile/did:plc:example/post/3abc123","authorDid": "did:plc:example","authorHandle": "example.bsky.social","authorDisplayName": "Example Account","text": "We are testing a new data workflow with Bluesky public posts.","langs": ["en"],"createdAt": "2026-06-20T12:00:00.000Z","indexedAt": "2026-06-20T12:01:00.000Z","replyCount": 12,"repostCount": 34,"likeCount": 250,"quoteCount": 4,"searchQuery": "AI agents","labels": []}
Profile Row
{"recordType": "profile","did": "did:plc:example","handle": "example.bsky.social","displayName": "Example Account","description": "Public profile bio text.","avatar": "https://cdn.bsky.app/img/avatar/...","banner": "https://cdn.bsky.app/img/banner/...","followersCount": 12000,"followsCount": 320,"postsCount": 1800,"indexedAt": "2026-06-20T12:01:00.000Z","labels": []}
Follower / Follow Row
{"recordType": "follower","sourceActor": "bsky.app","targetDid": "did:plc:example","targetHandle": "example.bsky.social","handle": "example.bsky.social","displayName": "Example Account","description": "Public profile bio text.","followersCount": 12000,"followsCount": 320,"postsCount": 1800}
For debugging or advanced use, enable includeRaw to include the original Bluesky API object in each row.
Authentication Notes
Most modes use public Bluesky AppView endpoints and do not need credentials.
searchPosts requires:
identifier: your Bluesky handle or emailappPassword: a Bluesky app password
Create an app password in Bluesky under:
Settings -> Privacy and security -> App passwords
You can revoke app passwords at any time from Bluesky settings.
Limits and Caveats
- This Actor only returns public Bluesky data.
- It does not access private, deleted, or login-only user content.
- Result availability depends on Bluesky/AT Protocol public API behavior.
maxResultsis capped to keep runs predictable.- Keep result limits modest while validating large exports.
- Respect Bluesky terms, user privacy, and downstream data rules.
Pricing
This Actor is priced per exported dataset row. You pay only for results plus Apify platform usage.
Support
If a run fails or a field is missing, open an Actor issue with:
- the run URL,
- the input you used,
- the field or behavior you expected.