Guides

Task-oriented documentation. If you are looking for the signature of a particular method, you want the API reference instead.

New here? Start with Quickstart, then Concepts.

Start here

Concepts

DIDs, handles, records, lexicons and NSIDs: the vocabulary behind every method name.

Concepts
Authentication

App passwords, two-factor login, session reuse, and automatic token refresh.

Authentication
Sync and async

The two clients, what differs between them, and running calls concurrently.

Async

Doing things on Bluesky

Posting

Text, rich text, replies, images, video, embeds, and link cards.

Posting
Reading content

Timelines, threads, profiles, and paging through a cursor.

Reading
The social graph

Likes, reposts, follows, mutes, blocks, lists, and starter packs.

Social graph
Notifications

Reading notifications, unread counts, and polling for new ones.

Notifications
Direct messages

Conversations, messages, and reactions, on a separate service the client proxies to.

Direct messages

Working with the protocol

Records and repositories

Past the convenience methods: namespaces, record sugar, and raw repository operations.

Records and repositories
Working with models

NSID aliases, building models, DotDict, unknown types, and the record registry.

Working with models
String formats

Handles, DIDs, NSIDs, AT-URIs, TIDs, and how to turn on strict validation.

String formats
Identity

Resolving handles and DIDs, DID documents, and caching the results.

Resolving identities

Streaming the network

Firehose

Every event on the network, signed and verifiable, as CAR-encoded commits.

Firehose
Jetstream

The same events as plain JSON, filtered server-side, plus archive replay.

Jetstream

Configuration and operations

Errors and timeouts

The exception hierarchy, what maps to which status code, timeouts, and rate limits.

Error handling
Proxies and labelers

Routing requests to another service, accepting labelers, and what clone() shares.

Proxies and labelers
HTTP and transport

Configuring httpx: timeouts, retries, proxies, and the low-level invoke methods.

HTTP and transport

Building something bigger

Building a feed generator

A complete service, end to end: firehose ingest, the skeleton endpoint, service auth, and publishing the feed.

Building a feed generator
Custom lexicons

Generate typed models and a working client from lexicons of your own.

Custom lexicons