Bluesky Scraper Suite (AT Protocol)
Pricing
from $2.00 / 1,000 results
Bluesky Scraper Suite (AT Protocol)
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
4 days ago
Last modified
Categories
Share
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.