# Bluesky API

Read Bluesky actor and post data from public AT Protocol endpoints.

- Platform ID: `bluesky`
- Capabilities: 13
- Execute endpoint: `POST https://data.upscrape.com/execute`
- OpenAPI: https://upscrape.com/scrapers/bluesky/openapi.json

## Capabilities

| Endpoint | Capability ID | Cost | Description |
| --- | --- | --- | --- |
| [Get followers](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.actor.get_followers) | `bluesky.actor.get_followers` | 1 credit per request | List followers for a Bluesky actor. |
| [Get follows](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.actor.get_follows) | `bluesky.actor.get_follows` | 1 credit per request | List actors followed by a Bluesky actor. |
| [Get profile](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.actor.get_profile) | `bluesky.actor.get_profile` | 1 credit per request | Fetch profile metadata for a Bluesky actor. |
| [Resolve handle](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.actor.resolve_handle) | `bluesky.actor.resolve_handle` | 1 credit per request | Resolve a Bluesky handle to its DID. |
| [Search actors](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.actor.search) | `bluesky.actor.search` | 1 credit per request | Search actors by keyword with cursor pagination. |
| [Get author feed](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_author_feed) | `bluesky.feed.get_author_feed` | 1 credit per request | Fetch an author's public posts feed with cursor pagination. |
| [Get feed posts](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_feed) | `bluesky.feed.get_feed` | 1 credit per request | Fetch posts from a specific feed URI with cursor pagination. |
| [Get feed generators](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_feed_generators) | `bluesky.feed.get_feed_generators` | 1 credit per request | Discover popular feed sources used by the Bluesky app. |
| [Get post likes](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_likes) | `bluesky.feed.get_likes` | 1 credit per request | List users who liked a post with cursor pagination. |
| [Get post thread](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_post_thread) | `bluesky.feed.get_post_thread` | 1 credit per request | Fetch a post thread with bounded nested replies depth. |
| [Get repost users](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_reposted_by) | `bluesky.feed.get_reposted_by` | 1 credit per request | List users who reposted a post with cursor pagination. |
| [Get trending topics](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.get_trending_topics) | `bluesky.feed.get_trending_topics` | 1 credit per request | List trending topics surfaced by public feed index data. |
| [Search posts](https://docs.upscrape.com/docs/platforms/bluesky/bluesky.feed.search_posts) | `bluesky.feed.search_posts` | 1 credit per request | Search Bluesky posts and return paginated records. |

## Common uses

- Handle and profile verification
- Social graph snapshotting
- Post search and discovery monitoring
- Author feed and follower analytics
- Post interaction extraction (likes/reposts/thread)
- Trending-topic and feed discovery

## Integration contract

All capabilities use the shared `POST /execute` envelope. A `200` response completed inline; a `202` response must be polled through `GET /jobs/{id}`.

See [authentication](https://docs.upscrape.com/docs/api/authentication), [jobs and results](https://docs.upscrape.com/docs/api/jobs), and [errors and retries](https://docs.upscrape.com/docs/api/errors).
