Bluesky Scraper
Pricing
from $2.00 / 1,000 results
Bluesky Scraper
Scrape Bluesky posts, profiles, account search and custom feeds via the free, open AT Protocol. No proxies, no anti-bot. Four of five modes need no login.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Technical Dost Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Bluesky Scraper Suite (AT Protocol)
Scrape Bluesky posts, profiles, account search, and custom feeds straight from the free, open AT Protocol — no proxies, no headless browser, no anti-bot games. Four of the five modes need no login at all.
What it does
| Mode | What you get | Login needed? |
|---|---|---|
posts | All posts from one or more authors (author feed) | No |
profile | Full profile data for one or more handles/DIDs | No |
search + accounts | Account/handle search results | No |
search + posts | Full-text post search | Yes (free app password) |
feed | Posts from any Bluesky feed generator | No |
Input
{"mode": "posts","handles": ["bsky.app", "news.bsky.team"],"maxItems": 100}
{ "mode": "profile", "handles": ["bsky.app"] }
{ "mode": "search", "searchTarget": "accounts", "query": "journalist", "maxItems": 50 }
{"mode": "feed","feedUrl": "at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot","maxItems": 100}
For search + posts, add a free Bluesky app password (Settings → App Passwords —
never your main password):
{ "mode": "search", "searchTarget": "posts", "query": "apify","identifier": "you.bsky.social", "appPassword": "xxxx-xxxx-xxxx-xxxx", "maxItems": 50 }
Fields
mode(required) —posts|profile|search|feedhandles[]— forpostsandprofilequery— forsearchsearchTarget—accounts(no login) orposts(needs app password)feedUrl— AT-URI forfeedmaxItems— caps results (and your cost). Default 100.identifier/appPassword— only for post search; stored as secrets.
Output
Post row:
{"scrapedMode": "posts", "type": "post","uri": "at://did:plc:.../app.bsky.feed.post/3l...","cid": "bafy...","authorHandle": "bsky.app", "authorDid": "did:plc:...", "authorDisplayName": "Bluesky","text": "Hello from Bluesky", "createdAt": "2026-05-30T12:00:00Z","likeCount": 1234, "repostCount": 56, "replyCount": 12, "quoteCount": 3,"langs": ["en"], "embedType": "app.bsky.embed.images#view","postUrl": "https://bsky.app/profile/bsky.app/post/3l..."}
Profile row:
{"scrapedMode": "profile", "type": "profile","did": "did:plc:...", "handle": "bsky.app", "displayName": "Bluesky","description": "...", "followersCount": 1500000, "followsCount": 50, "postsCount": 900,"avatar": "https://cdn.bsky.app/...", "createdAt": "2023-04-01T00:00:00Z","profileUrl": "https://bsky.app/profile/bsky.app"}
Pricing
Pay per result — $0.002 per item. You only pay for rows actually returned;
maxItems is a hard cap on cost.
Reliability
- Exponential backoff on rate limits (429) and server errors (5xx).
- Cursor pagination — pulls exactly up to
maxItems. - One malformed record is logged and skipped; the run never crashes on a single bad item.
- Built directly on the official AT Protocol XRPC API.
Data usage & compliance
This actor reads only public data exposed by the Bluesky AppView / AT Protocol public
API (public.api.bsky.app), the same data a logged-out visitor sees on bsky.app. Post
search uses your own Bluesky session via a revocable app password. Use the output in
accordance with Bluesky's Terms of Service and applicable privacy law; do not use it to
harass, deanonymize, or spam users.