Bluesky Posts Scraper — Search & User Feed (No Auth) avatar

Bluesky Posts Scraper — Search & User Feed (No Auth)

Pricing

Pay per usage

Go to Apify Store
Bluesky Posts Scraper — Search & User Feed (No Auth)

Bluesky Posts Scraper — Search & User Feed (No Auth)

Scrape posts from Bluesky social network via the public AT Protocol API. Search by keyword, hashtag, or user handle. No API key required. Outputs post text, author, likes, reposts, replies, images, URLs, and tags. PPE $0.003/post.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Hojun Lee

Hojun Lee

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Bluesky Posts Scraper

Keywords: Bluesky scraper · AT Protocol scraper · Bluesky posts · social media scraper · Bluesky keyword search · Bluesky hashtag · Bluesky API · decentralized social scraper

Scrape posts from Bluesky social network using the public AT Protocol API — no API key or login required.

Search by keyword, hashtag, or scrape any user's feed. Collect post text, engagement metrics, URLs, hashtags, image indicators, and language data.

Features

  • Keyword & hashtag search — find posts matching any query (e.g. bitcoin, #crypto, AI news)
  • User feed scraping — collect all recent posts from any public Bluesky account
  • Language filtering — restrict results to specific languages (e.g. en, ko, ja)
  • Date filtering — only collect posts on or after a specific date
  • Sort control — sort search results by latest or top engagement
  • No auth needed — uses the public https://public.api.bsky.app AppView endpoint
  • Rate-limit safe — built-in semaphore (3 concurrent) + request delays stay under the 3000 req/5 min limit

Use Cases

  • Social media monitoring and brand tracking
  • Crypto / Web3 community sentiment analysis
  • Research and journalism
  • Competitive intelligence
  • Trend detection and hashtag analysis

Input

FieldTypeDefaultDescription
modestringsearchsearch or user_feed
searchQuerystringKeyword or hashtag (mode=search)
userHandlestringBluesky handle (mode=user_feed), e.g. bsky.app
maxPostsinteger100Max posts to collect (up to 1000)
langstringLanguage filter, e.g. en, ko
sincestringStart date (YYYY-MM-DD)
sortstringlatestSort search: latest or top

Output

Each scraped post is stored in the dataset with the following fields:

{
"uri": "at://did:plc:abc123/.../xyz",
"cid": "bafyrei...",
"author_handle": "user.bsky.social",
"author_display_name": "User Name",
"text": "Post content here #bluesky",
"created_at": "2026-09-01T12:00:00.000Z",
"likes": 42,
"reposts": 10,
"replies": 5,
"has_image": false,
"urls": ["https://example.com/article"],
"tags": ["bluesky", "web3"],
"language": "en"
}

Pricing (Pay-Per-Event)

EventPrice
Actor start$0.005 (one-time)
Per post scraped$0.003

Scraping 100 posts costs approximately $0.305 ($0.005 start + $0.30 posts).

API Reference

This actor uses the public Bluesky AppView API:

  • Search: GET https://public.api.bsky.app/xrpc/app.bsky.feed.searchPosts
  • User feed: GET https://public.api.bsky.app/xrpc/app.bsky.feed.getAuthorFeed

No authentication is required for public data. The public API allows ~3000 requests per 5 minutes.

Examples

Search for crypto posts in English

{
"mode": "search",
"searchQuery": "#crypto",
"maxPosts": 200,
"lang": "en",
"sort": "top"
}

Scrape a user's recent posts

{
"mode": "user_feed",
"userHandle": "jack.bsky.social",
"maxPosts": 100
}

Search posts since a specific date

{
"mode": "search",
"searchQuery": "ethereum ETF",
"maxPosts": 500,
"since": "2026-08-01",
"sort": "latest"
}

Bluesky scraper, AT Protocol scraper, Bluesky posts API, Bluesky data extraction, social media scraper, decentralized social scraper, Bluesky search API, atproto scraper