Apify Bluesky Scraper

v1.0.0

Scrape Bluesky social posts via AT Protocol. Use when user asks to search Bluesky, find Bluesky posts, monitor Bluesky discussions, or extract Bluesky data....

0· 287· 1 versions· 1 current· 1 all-time· Updated 17h ago· MIT-0
byMarcin Dudek@marcindudekdev

Install

openclaw skills install apify-bluesky-scraper

Bluesky Scraper

Scrape Bluesky posts using an Apify Actor via the REST API.

Actor ID

WAJfBnZBYR9mJrk5d

Prerequisites

  • APIFY_TOKEN environment variable must be set
  • curl and jq must be available

Workflow

Step 1: Confirm search parameters with user

Ask what they want to search for. Supported input fields:

  • searchTerms (array of strings) - keywords to search
  • maxResults (integer) - max posts to return (default: 50)
  • sortBy (string) - "relevance" or "latest"

Step 2: Run the Actor (synchronous)

RESULT=$(curl -s -X POST "https://api.apify.com/v2/acts/WAJfBnZBYR9mJrk5d/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["SEARCH_TERM"], "maxResults": 50, "sortBy": "relevance"}')
echo "$RESULT" | jq '.'

For larger jobs (async):

RUN_ID=$(curl -s -X POST "https://api.apify.com/v2/acts/WAJfBnZBYR9mJrk5d/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["TERM"], "maxResults": 50}' | jq -r '.data.id')

Step 3: Poll and fetch (if async)

STATUS=$(curl -s "https://api.apify.com/v2/actor-runs/$RUN_ID?token=$APIFY_TOKEN" | jq -r '.data.status')
# Poll every 5s until SUCCEEDED or FAILED
curl -s "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN" | jq '.'

Step 4: Present results

Summarize: total posts, top by engagement, common themes. Offer JSON/CSV export.

Error Handling

  • If APIFY_TOKEN not set: export APIFY_TOKEN=your_token
  • If run FAILS: curl -s "https://api.apify.com/v2/actor-runs/$RUN_ID/log?token=$APIFY_TOKEN"
  • Rate limited (429): wait 60s, retry

Version tags

apifyvk971hmg30w55zacqbkzb45zk5582eetaat-protocolvk971hmg30w55zacqbkzb45zk5582eetablueskyvk971hmg30w55zacqbkzb45zk5582eetalatestvk971hmg30w55zacqbkzb45zk5582eetascrapingvk971hmg30w55zacqbkzb45zk5582eetasocial-mediavk971hmg30w55zacqbkzb45zk5582eeta

Runtime requirements

🦋 Clawdis
Binscurl, jq
EnvAPIFY_TOKEN
Primary envAPIFY_TOKEN