ink.branchline.editBud

branchline.ink

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Edit the title, text, and/or inline formatting of an existing bud. The caller must be signed in and must be the bud's author. The bud must have no children and must not be locked — edits to a bud with descendants would reshape text that later writers have already continued from, and locked buds are frozen by an admin. The AppView overwrites the ink.branchline.bud record in the caller's PDS via putRecord and mirrors the new row into the local read cache. `createdAt` and `bloomsAt` are preserved; the PDS assigns a new CID.",
      "errors": [
        {
          "description": "The caller is not signed in.",
          "name": "Unauthorized"
        },
        {
          "description": "No bud exists at the given URI in the AppView.",
          "name": "BudNotFound"
        },
        {
          "description": "The caller is not the bud's author.",
          "name": "NotOwner"
        },
        {
          "description": "The bud has one or more continuations and can no longer be edited.",
          "name": "BudHasChildren"
        },
        {
          "description": "The bud has been locked by an admin and can no longer be edited.",
          "name": "BudLocked"
        },
        {
          "description": "The edited bud text exceeds the 500-word ceiling.",
          "name": "WordLimitExceeded"
        },
        {
          "description": "A formatting span is malformed — offsets out of bounds, start >= end, or an unknown span type.",
          "name": "InvalidFormatting"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "formatting": {
              "description": "Byte-offset inline formatting spans over `text`. Replaces any prior spans on the bud.",
              "items": {
                "ref": "ink.branchline.bud#formatSpan",
                "type": "ref"
              },
              "type": "array"
            },
            "text": {
              "maxLength": 20000,
              "type": "string"
            },
            "title": {
              "maxGraphemes": 120,
              "maxLength": 1200,
              "type": "string"
            },
            "uri": {
              "description": "AT-URI of the bud to edit.",
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "uri",
            "title",
            "text"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "cid": {
              "description": "The new CID assigned by the PDS after the record is overwritten.",
              "format": "cid",
              "type": "string"
            },
            "uri": {
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "uri",
            "cid"
          ],
          "type": "object"
        }
      },
      "type": "procedure"
    }
  },
  "id": "ink.branchline.editBud",
  "lexicon": 1
}

Validate Record

Validate a record against ink.branchline.editBud

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

Metadata

DID
did:plc:brvu7akhdvsqcomb67pafw25
CID
bafyreic3yn443kwdo26vlfygdiccnhv43lglgg4s4qf7x7iduzizyxf3d4
Indexed At
2026-04-20 22:24 UTC
AT-URI
at://did:plc:brvu7akhdvsqcomb67pafw25/com.atproto.lexicon.schema/ink.branchline.editBud

Referenced Schemas (1)

Similar Lexicons

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

  • Publish a new bud. The parent may be another bud (continuation) or a seed (planting a root bud). The caller must be signed in. The AppView writes an ink.branchline.bud record to the caller's PDS and mirrors it into the …

  • Edit the text of a comment the authenticated member owns. The artwork and reply parent remain unchanged.

  • A bud: one contribution to a story tree. Freshly written buds grow for 24h (not yet followable); after that they open as 'blooms' that other writers can extend; past 48h without children they lock into 'branches'. These…

Lexicon Garden

@