org.passingreads.book.event

passingreads.org

{
  "id": "org.passingreads.book.event",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "did",
          "book",
          "occurredAt",
          "location",
          "bookPub",
          "bookSig"
        ],
        "properties": {
          "did": {
            "type": "string",
            "format": "did",
            "description": "The DID of the person who registered the book. Included here, so it's verifiable with the bookSig."
          },
          "book": {
            "ref": "com.atproto.repo.strongRef#main",
            "type": "ref",
            "description": "The book that was dropped (a org.passingreads.book.registration)"
          },
          "event": {
            "type": "string",
            "description": "What event has occurred",
            "knownValues": [
              "org.passingreads.book.checkin",
              "org.passingreads.book.drop",
              "org.passingreads.book.find"
            ]
          },
          "bookPub": {
            "type": "bytes",
            "description": "The multicodec public key of the book."
          },
          "bookSig": {
            "type": "bytes",
            "description": "The signature of this record, without this attribute, as created by the private key associated with the book"
          },
          "location": {
            "refs": [
              "com.atproto.repo.strongRef#main",
              "community.lexicon.location.hthree#main",
              "#osmLocation"
            ],
            "type": "union",
            "description": "Where this event occurred (an h3 cell, an OSM place, or a link to an outpost — org.passingreads.outpost.registration)"
          },
          "occurredAt": {
            "type": "string",
            "format": "datetime",
            "description": "Client-declared timestamp of when the book was dropped"
          }
        }
      },
      "description": "The status of a book has changed."
    },
    "osmLocation": {
      "type": "object",
      "required": [
        "osmId",
        "name",
        "value"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "The name of the place from OpenStreetMap."
        },
        "osmId": {
          "type": "string",
          "description": "The OpenStreetMap element ID in interoperable format: N (node), W (way), or R (relation) prefix followed by numeric ID. Example: N123456789"
        },
        "value": {
          "type": "string",
          "description": "The H3 cell index for proximity queries."
        },
        "category": {
          "type": "string",
          "description": "The type of place (e.g., cafe, library, park)."
        }
      },
      "description": "A physical location from OpenStreetMap."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against org.passingreads.book.event

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:oeipalbxet5jghoqe6b6ctu6
CID
bafyreib6fo3flvdqqivnacsxhpu3iuve7ayjz3bbpaarespz3p6fiaeumq
Indexed At
2026-02-13 14:00 UTC
AT-URI
at://did:plc:oeipalbxet5jghoqe6b6ctu6/com.atproto.lexicon.schema/org.passingreads.book.event

Referenced Schemas (1)

Lexicon Garden

@