honesthook

bluesky-api/posts

Bluesky posts API — recent posts from one profile

Recent posts from the profile itself, via app.bsky.feed.getAuthorFeed. Official AT Protocol public API, no key and no account.

Parameters

NameWhat it is
handleThe account handle, or its DID directly.
limit1 to 100, default 25. A value outside the range is refused with 400 rather than silently clamped, and each limit has its own cache line.

Handle format and anchor

What this endpoint does not return.

A field we cannot read comes back null, never 0. A zero would be a claim about the account; null is a fact about our collection.

Where this goes wrong.

A third party's repost is excluded by authorship. The bsky.app feed carries roughly 1 in 20, and counting them would credit this account with posts it did not write.

Measured

About 93 KB with limit=25. This route goes through the fetch service like every other one, so it consumes proxy bandwidth.

Cost

1 credit per call. A call that finds nothing costs nothing.

Why does limit=200 return an error instead of 100 posts?

Because clamping in silence is worse than refusing. Someone who asks for 200 and gets 100 concludes the account has 100 posts.

Are reposts included?

No. A repost is someone else's post. It is excluded by authorship, not by heuristic.

Does each limit value cost a separate call?

Each limit has its own cache line, so limit=25 and limit=50 do not share a cached response.

Other routes for this platform

← bluesky-api