List user statuses
GET /2/profile/{handle}/statuses
Returns a timeline page in the same shape as FxTwitter GET /2/profile/{handle}/statuses (code, results, cursor). handle may be a handle or DID. Pagination uses Bluesky app.bsky.feed.getAuthorFeed: cursor.bottom is the opaque next-page token (pass as cursor query param). cursor.top is always null—there is no reverse cursor on this upstream endpoint. Optional since (Unix time): when used without cursor, returns 204 No Content if no posts are strictly newer than that instant. Values ≥ 1e12 are treated as milliseconds.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Example
bsky.appBluesky handle (e.g. user.bsky.social) or DID (did:plc:…)
Query Parameters
Section titled “Query Parameters ”Page size (default 20)
Pagination cursor from prior response (cursor.bottom)
Unix timestamp (seconds, or ms if ≥ 1e12). Without cursor, 204 if no post is strictly newer than this time.
If truthy (1, true, yes, on, or empty), include replies (posts_with_replies upstream); otherwise posts_no_replies.
Example
esTarget language (ISO 639-1 or BCP 47) for inline translation when available
Responses
Section titled “ Responses ”Timeline page
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
No posts newer than since (only when since is set and cursor is omitted; same conditions as 200 otherwise)
Invalid path or query parameters (e.g. count out of range)
object
Actor not found
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
Upstream or processing error
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
object
Facet kind: e.g. url, mention, hashtag, bold, media, custom_emoji (Mastodon custom emoji image)
Start and end UTF-16 indices