microcosm

Open-source APIs to kick-start your next app on ATProto.
Community-supported infrastructure ready for production.

Quickstart

get_likes_count.py


            
import requests

            
data = requests.get(
    "https://constellation.microcosm.blue/links/count/distinct-dids",
    params={
        "target": "at://did:plc:hdhoaan3xa3jiuq4fg4mefid/app.bsky.feed.post/3lwcmto4tck2h",
        "collection": "app.bsky.feed.like",
        "path": ".subject.uri",
    },
).json()

            
print("this post has", data["total"], "likes")

          

Constellation crawls every record seen in the firehose, and collects every link it can find: all at-uris, every DID, and any plain old web URL.

Every social interaction in ATProto is a link! Constellation can tell you who follows @oppi.li on tangled.sh and what are the replies to a frontpage.fyi story.

Spacedust extracts links seen in the firehose, and re-emits them directly. It can filter based on link target or even by targetted account.

Every social interaction in ATProto is a link! With Spacedust you can build things like following graphs and notification services for any lexicon.

Slingshot listens to the firehose to pre-caches records and rapidly evict deleted content. It can retain large chunks of the network, so you get fast, authenticated access to records, even for slow/unreliable upstream PDS hosts.

Slingshot also resolves (and of course caches) atproto identities! It only returns bi-directionally verified handles and DIDs, and has a cute resolveMiniDoc endpoint to make safely working with identities as simple as possible.

Network exploration

(bear with us, we're in still the middle of updating this website!)

UFOs: explore lexicons

Compare hoses: live atproto firehose information

Protocol infrastructure

EU

relay3.fr.hose.cam public full-network relay in France

jetstream2.fr.hose.cam public Jetstream instance in Germany

Canada

relay.fire.hose.cam public full-network relay in Montreal

jetstream.fire.hose.cam public Jetstream instance in Montreal