org.swappulse.directMessage

bridge.swappulse.org

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A direct message in a conversation.",
      "key": "tid",
      "record": {
        "properties": {
          "authorAvatar": {
            "format": "uri",
            "type": "string"
          },
          "authorDid": {
            "format": "did",
            "type": "string"
          },
          "authorHandle": {
            "type": "string"
          },
          "authorName": {
            "type": "string"
          },
          "body": {
            "maxLength": 2000,
            "type": "string"
          },
          "conversationId": {
            "type": "string"
          },
          "conversationRef": {
            "format": "at-uri",
            "type": "string"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "read": {
            "type": "boolean"
          },
          "recipientDid": {
            "format": "did",
            "type": "string"
          }
        },
        "required": [
          "recipientDid",
          "body",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "description": "A single message in a 1:1 conversation, mirrored to AT Protocol as a real org.swappulse.directMessage record. The sender is tracked by authorDid; the recipient by recipientDid so both can read.",
  "id": "org.swappulse.directMessage",
  "lexicon": 1,
  "revision": 1
}

Validate Record

Validate a record against org.swappulse.directMessage

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:jwoatauidzr4lollmro2gh35
CID
bafyreickyn2sijypypf6w2ipezur6ew75dymhrpqgcxalqifser3e3ehgu
Indexed At
2026-08-16 00:57 UTC
AT-URI
at://did:plc:jwoatauidzr4lollmro2gh35/com.atproto.lexicon.schema/org.swappulse.directMessage

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • org.swappulse.conversation recordnot from the namespace authority

    A 1:1 direct-message conversation between two collectors, mirrored to AT Protocol as a real org.swappulse.conversation record. The creator is tracked by authorDid; the other participant by recipientDid so both can read.

  • A message in a channel or DM space. The record lives in the *author's* repo within the space, so a message has no single owning collection to sort by — it is identified by (authorDid, tid). One collection serves chann…

  • fyi.opensocial.conversation.message recordnot from the namespace authority

    Something said in a conversation, in its author's own repo in the conversation's space.

  • A single chat. Each individual message is a record.

  • Record containing a Streamplace chat message.

Lexicon Garden

@