Bluesky APIunofficial
Read public Bluesky profiles, author feeds and post threads without signing in.
- bsky.app
all live 3 operations, checked by the installs that call them.
Seeded by the maintainers.
Try it
Set up API Anything for your agents:
npx -y api-anything setupThen ask your agent, which finds this site by itself, or call it from a shell:
api-anything pull bluesky
api-anything call bluesky getPosts handle=bsky.appOperations
| Operation | Method | Login | Writes | Status |
|---|---|---|---|---|
getPosts(handle) -> uri, author, text, createdAt, likeCount, repostCount, replyCount, quoteCount, embedType, reasonRead the first page of an account's public posts and reposts. |
GET | no | no | Live0 confirmations · success unknown; last worked unknown |
getProfile(handle) -> did, handle, displayName, description, followersCount, followsCount, postsCount, createdAt, avatarRead a public account's profile and counts. |
GET | no | no | Live0 confirmations · success unknown; last worked unknown |
getThread(handle, rkey) -> uri, depth, type, author, text, createdAt, likeCount, repostCount, replyCount, quoteCount, moreRepliesRead a public post, its surrounding thread and replies. |
GET | no | no | Live0 confirmations · success unknown; last worked unknown |
Notes
No account is needed for these public reads. Handles are given without @.
getPostsreturns the first page, including pinned posts and reposts, not a complete timeline.reasonisapp.bsky.feed.defs#reasonRepostfor a repost and is absent on ordinary posts.embedTypeis absent when the post has no embed.getThreadreturns a flat list: depth 0 is the requested post, negative depths are ancestors, and positive depths are replies. The page's request limits branching and depth, so replies may be missing;moreRepliescan indicate further replies. Some unavailable or moderated entries may not have post fields. The response may be truncated by api-anything's output cap.- A missing required handle is an input error. An unknown handle returned HTTP 400
Profile not found, classified aserror, notinput, in testing.
About these operations
Each operation is a request learned from Bluesky's own web pages: API Anything replays it over plain HTTP and falls back to a browser when it must. Read them as JSON.