Trending topics (Bluesky)
GET
/2/trends
const url = 'https://api.fxbsky.app/2/trends?type=trending&count=20';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.fxbsky.app/2/trends?type=trending&count=20'Returns trending topic labels and suggested topic feeds from the Bluesky public AppView, in the same envelope as FxTwitter GET /2/trends (code, timeline_type, trends, cursor). Each trend’s context includes a bsky.app URL to the topic feed when the upstream provides a link.
Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ” type
string
Example
trendingTrend list. trending returns Bluesky live topics first, then suggested topic feeds to fill count. suggested returns only suggested feeds. Upstream: app.bsky.unspecced.getTrendingTopics (max 25 rows per request).
count
integer
Number of trends (default 20, max 50)
Responses
Section titled “ Responses ”Trends payload
Media type application/json
object
code
required
number
message
string
timeline_type
required
string
trends
required
Array<object>
object
name
required
string
rank
required
string
context
required
string
grouped_topics
Array<object>
object
name
required
string
cursor
required
object
top
required
string
bottom
required
string
Example generated
{ "code": 1, "message": "example", "timeline_type": "example", "trends": [ { "name": "example", "rank": "example", "context": "example", "grouped_topics": [ { "name": "example" } ] } ], "cursor": { "top": "example", "bottom": "example" }}Invalid query parameters (e.g. type or count out of allowed range)
Media type application/json
object
code
required
number
message
required
string
Example
{ "code": 400}Trends unavailable or empty upstream list
Media type application/json
object
code
required
number
message
string
timeline_type
required
string
trends
required
Array<object>
object
name
required
string
rank
required
string
context
required
string
grouped_topics
Array<object>
object
name
required
string
cursor
required
object
top
required
string
bottom
required
string
Example generated
{ "code": 1, "message": "example", "timeline_type": "example", "trends": [ { "name": "example", "rank": "example", "context": "example", "grouped_topics": [ { "name": "example" } ] } ], "cursor": { "top": "example", "bottom": "example" }}Upstream or processing error
Media type application/json
object
code
required
number
message
string
timeline_type
required
string
trends
required
Array<object>
object
name
required
string
rank
required
string
context
required
string
grouped_topics
Array<object>
object
name
required
string
cursor
required
object
top
required
string
bottom
required
string
Example generated
{ "code": 1, "message": "example", "timeline_type": "example", "trends": [ { "name": "example", "rank": "example", "context": "example", "grouped_topics": [ { "name": "example" } ] } ], "cursor": { "top": "example", "bottom": "example" }}