Files
at-container-registry/docs/KNOWN_RELAYS.md

3.4 KiB

Known ATProto Relays

Reference list of known public ATProto relays and their capabilities, relevant to ATCR hold discovery and appview backfill.

There is no relay discovery protocol in ATProto — this list is manually maintained.

Last verified: 2026-02-08

Relay List

Bluesky (Official)

Relay URL requestCrawl listReposByCollection Notes
Bluesky (load balancer) https://bsky.network Yes No (400 — not proxied) Load balancer, proxies to regional relays
Bluesky US-East https://relay1.us-east.bsky.network Yes Yes Regional relay with full collection directory
Bluesky US-West https://relay1.us-west.bsky.network Yes Yes Regional relay with full collection directory

Community

Relay URL requestCrawl listReposByCollection Notes
Firehose NA https://northamerica.firehose.network Yes No (404) 72h replay buffer
Firehose EU https://europe.firehose.network Yes No (404) 72h replay buffer
Firehose Asia https://asia.firehose.network Yes No (404) 72h replay buffer
Microcosm Montreal https://relay.fire.hose.cam Yes No (404)
Microcosm France https://relay3.fr.hose.cam Yes No (404)
Upcloud https://relay.upcloud.world Yes No (404)
Blacksky https://atproto.africa Down (502) Down (502) Was offline as of 2026-02-08

ATCR Usage

Hold service (requestCrawl)

The hold announces its embedded PDS to relays on startup via com.atproto.sync.requestCrawl. Currently configured as a single relay in server.relay_endpoint. All healthy relays above accept requestCrawl.

Appview backfill (listReposByCollection)

The appview uses com.atproto.sync.listReposByCollection to discover DIDs with io.atcr.* records during backfill. Only Bluesky's regional relays support this endpoint. The appview defaults to relay1.us-east.bsky.network.

Why most relays lack listReposByCollection

The listReposByCollection endpoint is not part of the relay core. It's served by a separate microservice called collectiondir that maintains an index of (collection, timestamp, DID) tuples.

Community relays running the Rainbow relay can optionally proxy to a collectiondir instance via --collectiondir-host, but most don't deploy one — likely because maintaining that index across the full network is expensive relative to just fan-out relaying.

Other useful relay endpoints

These are standard XRPC endpoints that relays may implement:

  • com.atproto.sync.listRepos — paginated list of all known repos (all tested relays support this)
  • com.atproto.sync.getRepo — all tested relays 302 redirect to the source PDS
  • com.atproto.sync.getRepoStatus — check if a relay knows about a specific DID
  • com.atproto.sync.subscribeRepos — WebSocket firehose subscription

Sources