Bluesky Scraper — Posts, Profiles, Followers & Search avatar

Bluesky Scraper — Posts, Profiles, Followers & Search

Pricing

from $0.50 / 1,000 result items

Go to Apify Store
Bluesky Scraper — Posts, Profiles, Followers & Search

Bluesky Scraper — Posts, Profiles, Followers & Search

Bluesky scraper for posts, profiles, followers, likes & search. Uses the public Bluesky posts API (AT Protocol) — no login, no proxies. Fast Bluesky data export to JSON, CSV or Excel for monitoring, research and lead gen.

Pricing

from $0.50 / 1,000 result items

Rating

0.0

(0)

Developer

Tommi Sullivan

Tommi Sullivan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Bluesky Scraper

Scrape Bluesky posts, profiles, followers, likes and search results in minutes — no login, no password, no proxies. This Bluesky scraper talks directly to the official public AT Protocol API (public.api.bsky.app), the same Bluesky posts API that powers the app itself, and exports clean, structured data you can download as JSON, CSV, Excel or XML, or pipe straight into your own tools.

Whether you need a one-off Bluesky data export, continuous brand monitoring, or a data feed for an AI agent, this actor gets you from a handle or search query to a spreadsheet in under a minute.

What you get

Every result is a flat, analysis-ready record. Posts look like this:

FieldDescription
textFull post text
authorHandle / authorDisplayName / authorDidWho wrote it
createdAtISO 8601 timestamp
likeCount, repostCount, replyCount, quoteCountEngagement metrics
langsPost language codes
imagesFull-size image URLs from the post's embeds
externalLinkLink-card URL, if the post shares a link
quotedUri / quotedUrlThe post being quoted, if any
isReply, isRepost, repostedByThread/repost context
uri, cid, urlCanonical AT URI + shareable bsky.app URL

Profile records add followersCount, followsCount, postsCount, description (bio), avatar and banner. Follower and like records give you the full account list with handles, DIDs, display names and bios.

What it can scrape

  • Posts by account — the full author feed of any handle or DID, with optional replies and reposts
  • Search results — full-text Bluesky post search, paginated, with date filtering
  • Profiles — detailed profile metadata for any list of accounts
  • Followers — complete follower lists (handle, DID, bio, avatar)
  • Post threads — a post plus its entire reply tree from a bsky.app URL
  • Post likes — every account that liked a given post

Use cases

  1. Brand & keyword monitoring — track every mention of your product, company or founders on Bluesky and route new posts to Slack or a spreadsheet.
  2. Academic & social research — export post datasets by keyword and date range for discourse analysis, misinformation studies or network science.
  3. Lead generation — scrape followers of accounts in your niche, or everyone who liked a competitor's launch post, and enrich the handles into a prospect list.
  4. Trend & sentiment analysis — pull thousands of posts on a topic and feed them to an LLM or sentiment model to see how opinion is shifting.
  5. Influencer discovery & vetting — compare follower counts, posting frequency and engagement rates across creators before you sponsor them.
  6. Content backup & migration — export your own (or a client's) full posting history as JSON/CSV for archiving or cross-posting.
  7. Competitive intelligence — monitor competitors' posts, engagement and audience growth over time on a schedule.
  8. AI agents & RAG pipelines — give an agent live Bluesky data as a tool (see Integrations below).

Input example

{
"handles": ["bsky.app", "jay.bsky.team"],
"searchQueries": ["\"open source\" ai"],
"postUrls": ["https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l"],
"scrapeTypes": ["posts", "profile", "followers"],
"maxItems": 1000,
"includeReplies": false,
"includeReposts": false,
"dateFrom": "2026-01-01",
"dateTo": "2026-06-30"
}

Only one of handles, searchQueries or postUrls is required — everything else has sensible defaults.

Output example

{
"type": "post",
"uri": "at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3l6oveex3ii2l",
"cid": "bafyreib3vqn...",
"url": "https://bsky.app/profile/bsky.app/post/3l6oveex3ii2l",
"text": "Bluesky is an open social network built on the AT Protocol.",
"createdAt": "2026-05-12T18:04:33.183Z",
"langs": ["en"],
"authorDid": "did:plc:z72i7hdynmk6r22z27h6tvur",
"authorHandle": "bsky.app",
"authorDisplayName": "Bluesky",
"replyCount": 214,
"repostCount": 1830,
"likeCount": 9421,
"quoteCount": 96,
"isReply": false,
"isRepost": false,
"embedType": "images",
"images": ["https://cdn.bsky.app/img/feed_fullsize/plain/did:plc:.../bafkrei...@jpeg"],
"externalLink": null,
"indexedAt": "2026-05-12T18:04:34.512Z"
}

Integrations

The dataset produced by this actor plugs into the whole Apify ecosystem:

  • Make, n8n, Zapier — trigger a scenario on every finished run and push new Bluesky posts into Google Sheets, Airtable, Slack, Discord, Notion or email digests. Use Apify's native Make/Zapier apps or the n8n Apify node.
  • LangChain / LlamaIndex — load run results with the Apify dataset loaders and build RAG apps over live Bluesky content.
  • MCP & AI agents — this actor works out of the box with the Apify MCP server, so Claude, ChatGPT, Cursor or any MCP-capable agent can call it as a tool ("find the last 200 posts mentioning our brand on Bluesky and summarize sentiment"). Agentic workflows can also start runs via the Apify API and poll for results — the flat output schema is deliberately LLM-friendly.
  • API & webhooks — start runs and fetch results via the Apify REST API, or attach a webhook to feed your own backend.
  • Scheduler — run it hourly/daily with Apify Schedules for continuous monitoring.

FAQ

Is it legal to scrape Bluesky? This actor only collects public data through Bluesky's official, documented public API — the AT Protocol is designed to be open, and public posts are accessible to anyone without an account. That said, you are responsible for how you use the data: comply with GDPR/CCPA and other applicable laws, especially when processing personal data, and review Bluesky's terms for your specific use case. Nothing here is legal advice.

Does it need my Bluesky password or an API key? No. It never asks for credentials of any kind. All requests go to the unauthenticated public endpoint public.api.bsky.app, which serves public data only. Your account is never involved and cannot be flagged or banned.

Can it scrape private or logged-in-only content? No. It sees exactly what a logged-out visitor can see: public posts, public profiles, public followers and likes. Blocked, deleted and restricted content is skipped automatically.

How fast is it, and will I get rate-limited? It's HTTP-only (no browser), so it typically collects thousands of items per minute. The actor pages at the API's maximum page size and automatically backs off with exponential delays if the API returns 429 or 5xx responses, so runs finish cleanly even under rate limits.

How do I control cost? Set maxItems. It is a hard spend cap — the run stops the moment the cap is reached, and with pay-per-result pricing you never pay for more than that number of records.

Can I get the data as CSV or Excel? Yes. Every run's dataset can be downloaded from Apify as JSON, CSV, Excel (XLSX), XML or an RSS feed, and accessed programmatically via the API.

Bluesky scraper, scrape Bluesky posts, Bluesky posts API, Bluesky data export, export Bluesky followers, Bluesky search API, download Bluesky data to CSV, AT Protocol scraper, Bluesky monitoring tool.