Bluesky Profile API
Get a profile from its handle, DID or bsky.app link: name, bio, followers, follows and post count.
Sendactor
Returnsdisplay_namehandlefollowers_countfollows_countposts_countdescription
Get public Bluesky profiles, posts, threads, followers, likes, feeds and trending topics as clean JSON. Send a handle, a post link or a feed. No Bluesky account or app password.
| # | Post | Author | Posted | Language | URI |
|---|---|---|---|---|---|
| 1 | The modern research ecosystem of online tools and communities i… | aster.id | 2026-09-30T13:22:23.989Z | en | at://did:plc:ifn645rwvsuolxg7o3w7ouo4/app.bsky.feed.post/3mwqgs… |
| 2 | Happy opening day of hockey season, NHL fans! Keep up with all … | bsky.app | 2026-09-29T19:43:14.855Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mwolm… |
| 3 | If you're in line to vote for @bsky38.com, please stay in line!… | bsky.app | 2026-09-21T18:04:06.128Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mw2cd… |
| 4 | I don’t usually meddle on the writing side of Jeopardy!, but to… | kenjennings.bsky.social | 2026-09-18T22:34:18.503Z | en | at://did:plc:zbrhmanjs62oyqywjwdazxz3/app.bsky.feed.post/3mvta2… |
| 5 | Less than 4 hours until the #Emmys kick off! You can keep up wi… | avclub.com | 2026-09-14T19:47:12.655Z | en | at://did:plc:kwxpje5qog6wwndagwbssatp/app.bsky.feed.post/3mviut… |
| 6 | Thanks for being with us here on Bluesky, the official app of s… | bsky.app | 2026-09-10T16:59:29.774Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mv6jm… |
| 7 | Thank you for coming to today’s Apple event! You can find these… | bsky.app | 2026-09-09T18:27:44.595Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mv462… |
| 8 | @lightlyspicy.bsky.social asks, "Best way to care for young app… | bsky.app | 2026-09-09T18:26:59.158Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mv45z… |
| 9 | @feralpuppygirl.bsky.social asks, "We moved into a home with an… | bsky.app | 2026-09-09T18:21:35.669Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mv45p… |
| 10 | @mortenschoubye.bsky.social asks, "Which apple would be the bes… | bsky.app | 2026-09-09T18:18:48.471Z | en | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.post/3mv45k… |
| # | Topic | Summary | Category | Posts | Started | Status | Topic | Feed uri | Link |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Altman on accepting AI risks | OpenAI CEO Sam Altman told Politico AI benefits justify some ha… | science-tech | 713 | 2026-10-04T21:54:18.560479+00:00 | trending | e28add03bb23 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/e… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/e28add03bb23 |
| 2 | Data center community impacts | Big Tech facilities draw criticism over pollution, noise, water… | science-tech | 569 | 2026-10-03T12:14:21.902656+00:00 | trending | 6c19c0bde8c3 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/6… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/6c19c0bde8c3 |
| 3 | Green Party Zionism motion vote | Brighton conference members vote on Zionism motion; leader Zack… | politics | 4442 | 2026-09-28T09:54:25.078960+00:00 | trending | 090ded1ba125 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/0… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/090ded1ba125 |
| 4 | Birds against blue sky theme | Photographers share herons, ospreys and eagles for Monday's Bir… | culture | 536 | 2026-10-01T10:54:20.764967+00:00 | trending | 0f10ea646c62 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/0… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/0f10ea646c62 |
| 5 | Media that scared us as kids | For scary media month, people name the first film, show or game… | entertainment | 8341 | 2026-10-04T23:24:19.080857+00:00 | cooling | 19120953a43d | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/1… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/19120953a43d |
| 6 | Plague death reported in Siberia | A lab worker in Shelekhov, Irkutsk region, reportedly died; a h… | science-tech | 2227 | 2026-10-03T13:34:19.730826+00:00 | cooling | 37678c174695 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/3… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/37678c174695 |
| 7 | Midterm get-out-the-vote push | Activists urge Americans to register, pledge to vote early, and… | politics | 2669 | 2026-10-01T20:14:22.144164+00:00 | cooling | a478bd2b6a1b | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/a… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/a478bd2b6a1b |
| 8 | Samuel Alito hints at retirement | The Supreme Court justice told CBS News he'll revisit retiring … | politics | 491 | 2026-10-04T16:54:24.380587+00:00 | cooling | dd11647672e5 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/d… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/dd11647672e5 |
| 9 | Lula faces Bolsonaro in Brazil election | Luiz Inácio Lula da Silva and Flávio Bolsonaro end campaigns am… | politics | 2159 | 2026-09-30T19:14:20.840955+00:00 | cooling | 1b993705c304 | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/1… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/1b993705c304 |
| 10 | US removes bombers from RAF Fairford | Reports say US Air Force B-1 bombers are leaving the England ba… | politics | 970 | 2026-10-04T21:34:20.617653+00:00 | cooling | 9946167ac0ba | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/9… | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/9946167ac0ba |
| # | Feed | Description | Likes | URI | Did | Indexed at |
|---|---|---|---|---|---|---|
| 1 | For You | A personalized algorithmic feed based on your likes. It finds p… | 53,174 | at://did:plc:3guzzweuqraryl3rdkimjamk/app.bsky.feed.generator/f… | did:web:foryou.club | 2026-05-06T01:45:57.363Z |
| 2 | Discover | Trending content from your personal network | 39,492 | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/w… | did:web:discover.bsky.app | 2023-05-19T23:19:19.592Z |
| 3 | Popular With Friends | A mix of popular content from accounts you follow and content t… | 41,372 | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/w… | did:web:discover.bsky.app | 2023-05-19T23:19:21.076Z |
| 4 | Mutuals | Posts from users who are following you back | 28,807 | at://did:plc:tenurhgjptubkk5zf5qhi3og/app.bsky.feed.generator/m… | did:web:skyfeed.xyz | 2023-05-22T21:29:12.432Z |
| 5 | Science | The Science Feed. A curated feed from Bluesky professional scie… | 29,468 | at://did:plc:jfhpnnst6flqway4eaeqzj2a/app.bsky.feed.generator/f… | did:web:bs.bossett.io | 2023-11-26T19:34:54.335Z |
| 6 | Artists: Trending | General art feed — image posts from artists across Bluesky, sor… | 32,793 | at://did:plc:y7crv2yh74s7qhmtx3mvbgv5/app.bsky.feed.generator/a… | did:web:api.graze.social | 2025-07-28T23:44:37.802Z |
| 7 | 📰 News | Headlines from verified news organisations in reverse-chronolog… | 23,982 | at://did:plc:kkf4naxqmweop7dv4l2iqqf5/app.bsky.feed.generator/v… | did:web:api.graze.social | 2026-09-30T19:21:50.061Z |
| 8 | Blacksky | An algorithm showcasing posts by Black users on the network. Us… | 28,108 | at://did:plc:w4xbfzo7kqfes5zb7r6qv3rw/app.bsky.feed.generator/b… | did:web:bsky.rudyfraser.com | 2025-09-24T13:48:28.652Z |
| 9 | What's Hot Classic | The original What's Hot experience | 10,359 | at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/h… | did:web:discover.bsky.app | 2023-05-19T23:19:20.098Z |
| 10 | Notícias do Momento | Noticias das últimas 24 horas, de fontes confiáveis e canais of… | 3082 | at://did:plc:7ba7lz54yll7pxslxv47ejws/app.bsky.feed.generator/a… | did:web:skyfeed.me | 2024-11-12T15:09:12.023Z |
What each one takes and what it returns. Open one for a real response, every input and every field.
Get a profile from its handle, DID or bsky.app link: name, bio, followers, follows and post count.
Sendactor
Returnsdisplay_namehandlefollowers_countfollows_countposts_countdescription
List an account's posts and reposts, newest first, with text, author, language and time, page by page.
Sendactor
Returnstextauthorcreated_atlanguri
Get a post with its replies, nested a few levels deep, and the post it answers.
Senduri
Returnsdepth_requesteddepth_usedthread
Find accounts by keyword, page by page.
Sendquery
Returnsdisplay_namehandledidindexed_at
List an account's followers, page by page.
Sendactor
ReturnsJSON; every field is in the API reference
List the accounts an account follows, page by page.
Sendactor
ReturnsJSON; every field is in the API reference
List the accounts that liked a post.
Senduri
ReturnsJSON; every field is in the API reference
List the accounts that reposted a post.
Senduri
ReturnsJSON; every field is in the API reference
Get the topics trending on Bluesky now: title, summary, category and how many posts each has.
Returnsdisplay_namedescriptioncategorypost_countstarted_atfeed_uri
Discover the popular custom feeds people use on Bluesky, with their likes.
Returnsdisplay_namedescriptionlike_counturididindexed_at
Read the posts in any public custom feed, page by page.
Sendfeed
ReturnsJSON; every field is in the API reference
Follow brands, newsrooms and public figures: followers, posts and replies over time.
ProfileAuthor feedPost threadSee what is trending, then read the posts in the feeds behind each topic.
Trending topicsFeed postsFeed generatorsMeasure an account's reach: its follower count and how many likes and reposts its posts get.
ProfileAuthor feedPost likesConfirm an account's handle and its permanent DID, and find accounts by keyword.
Resolve handleActors searchOne request shape for every Bluesky endpoint: the endpoint ID and its input. No SDK needed.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "bluesky.actor.get_profile", "input": { "actor": "bsky.app" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "bluesky.actor.get_profile", "input": { "actor": "bsky.app" }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "bluesky.actor.get_profile", "input": { "actor": "bsky.app" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
{ "display_name": "Bluesky", "handle": "bsky.app", "description": "official Bluesky account (check username👆)\n\nBugs, feature requests, feedback: [email protected]", "did": "did:plc:z72i7hdynmk6r22z27h6tvur", "followers_count": 35154398, "follows_count": 15, "indexed_at": "2025-10-27T21:05:26.152Z", "posts_count": 865}
https://data.upscrape.com/mcp
Use Upscrape to look up @bsky.app on Bluesky. How many followers and posts does it have?
With Upscrape, get the latest posts from @bsky.app and summarise what Bluesky announced recently, with links.
Using Upscrape, list the topics trending on Bluesky right now with their category and post count, biggest first.
The short answers. The docs have the long ones.
You can call Bluesky's public API yourself. Upscrape gives you the same public data as clean JSON in the same shape as every other platform Upscrape covers, with paging handled, over REST or MCP, so one integration covers them all.
No. You send a handle, a link or a feed and get JSON back. No account or app password is needed.
Not yet. You can search accounts, read any account's posts and threads, and follow feeds and trending topics.
Profile, author feed, post thread, actors search, followers, follows, post likes, repost users, trending topics, feed generators, feed posts and resolve handle. Each is its own endpoint with a published input schema, and the response is JSON.
Every Bluesky endpoint costs 1 credit per successful call. You buy credits once, with no subscription, and paid credits never expire. New accounts get free credits to try it.
Yes. Connect any MCP client to the Upscrape MCP server with OAuth or an API key. The agent finds the Bluesky endpoint, checks its price and runs it with the same credits as the REST API.
Upscrape reads public pages only and needs no login. How you use the data is yours to decide under the laws that apply to you; we sign a data processing agreement for your legal review.
We fix the endpoint. Your request and the response fields stay the same.
Up to 100 free credits to start, no card needed.