Bluesky Trending Topics API
Get the topics trending on Bluesky now: title, summary, category and how many posts each has.
- 1 credit per call
- Failed calls are free
- Updated
- bluesky.feed.get_trending_topics
{ "topics": [ { "display_name": "Altman on accepting AI risks", "category": "science-tech", "description": "OpenAI CEO Sam Altman told Politico AI benefits justify some harms, unlike Anthropic's stance.", "feed_uri": "at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/e28add03bb23", "link": "/profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/e28add03bb23", "post_count": 713, "started_at": "2026-10-04T21:54:18.560479+00:00", "status": "trending", "topic": "e28add03bb23" }, { "display_name": "Data center community impacts", "category": "science-tech", "description": "Big Tech facilities draw criticism over pollution, noise, water use, tax breaks, and rising power bills.", "feed_uri": "at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/6c19c0bde8c3", "link": "/profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/6c19c0bde8c3", "post_count": 569, "started_at": "2026-10-03T12:14:21.902656+00:00", "status": "trending", "topic": "6c19c0bde8c3" } ]}
| # | 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 |
What you send
The input
object of the request, with every field the endpoint accepts.
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
| limit | integer | no | Maximum number of results to return. From 1 to 25. |
Fields it returns
What each record in the response holds, with the values from the sample above.
| Field | Type | What it is | Example |
|---|---|---|---|
| topics[].display_name | string | The topic's name. | Altman on accepting AI risks |
| topics[].description | string | A short summary of the topic. | OpenAI CEO Sam Altman told Politico AI benefits justify some ha… |
| topics[].category | string | The topic's category. | science-tech |
| topics[].post_count | integer | Posts about the topic, as Bluesky counts them. | 713 |
| topics[].started_at | string | When the topic started trending. | 2026-10-04T21:54:18.560479+00:00 |
| topics[].feed_uri | string | The address of the topic's feed. | at://did:plc:qrz3lhbyuxbeilrc6nekdqme/app.bsky.feed.generator/e… |
| topics[].link | string | The topic's page on Bluesky. | /profile/did:plc:qrz3lhbyuxbeilrc6nekdqme/feed/e28add03bb23 |
| topics[].status | string | Whether the topic is trending. | trending |
| topics[].topic | string | Bluesky's ID for the topic. | e28add03bb23 |
| topics | array | Trending topics. | 10 records |
Call it from your code, or ask your agent
Set UPSCRAPE_API_KEY to your key and copy a working request.
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.feed.get_trending_topics", "input": {}}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "bluesky.feed.get_trending_topics", "input": {}}''')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.feed.get_trending_topics", "input": {}}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
https://data.upscrape.com/mcp
Using Upscrape, list the topics trending on Bluesky right now with their category and post count, biggest first.
More from the Bluesky API
- Bluesky Profile API1 credit
- Bluesky Author Feed API1 credit
- Bluesky Post Thread API1 credit
- Bluesky Actors Search API1 credit
- Bluesky Followers API1 credit
- Bluesky Follows API1 credit
- Bluesky Post Likes API1 credit
- Bluesky Repost Users API1 credit
- Bluesky Feed Generators API1 credit
- Bluesky Feed Posts API1 credit
- Bluesky Resolve Handle API1 credit
The same data from other platforms
Bluesky Trending Topics API FAQ
The short answers. The docs have the long ones.
How much does the Bluesky Trending Topics API cost?
1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.
What do I send?
Every input is optional; the input fields below list what each one does.
Do I need a Bluesky login?
No. It reads public Bluesky data; nothing runs on your account.
Can my AI agent call it?
Yes, over MCP: the agent finds bluesky.feed.get_trending_topics, checks its price and runs it with the same credits as the REST API.
Your first Bluesky call is free.
Up to 100 free credits to start, no card needed.