Day 2

Part 1

Most data on the atmosphere is public and stored in things called records in the user's repo on the PDS. These are stored as key/values in the user's repo grouped by collections.

You can get records from a PDS as JSON, like this Bluesky "like" record:

{
  "$type": "app.bsky.feed.like",
  "subject": {
    "cid": "bafyreih2odjtzokqgwajtz6ern6h2gsz5humba3thz7hvt6qkj755jvn34",
    "uri": "at://did:plc:hdhoaan3xa3jiuq4fg4mefid/app.bsky.feed.post/3mabnbs3vbs2i"
  },
  "createdAt": "2026-03-17T20:15:52.571Z"
}

This is what makes up the public data on the atmosphere. All of your account's Bluesky posts, tangled repos, standard.site docs, everything like that is stored publicly on your repo as an atproto record.

The records are stored in collections and have "record keys", sometimes called rkeys. By combining them with the author's identity, they can form an at-uri like this:

at://did:plc:rnpkyqnmsw4ipey6eotbdnnf/app.bsky.feed.like/3mhbs2cnrl22r

This uri can be broken down into 3 parts:

  • at://did:plc:rnpkyqnmsw4ipey6eotbdnnf is the DID of the user
  • app.bsky.feed.like is the collection
  • 3mhbs2cnrl22r is the record key

You might also notice a $type field in the record, set to app.bsky.feed.like in the example above, matching its collection. More on this later.

For this challenge: Using what you learned from day 1 about finding the users PDS and their repo, find the following record:


Enter the verification code found in that record below: