ink.branchline.publishBud

branchline.ink

{
  "id": "ink.branchline.publishBud",
  "defs": {
    "main": {
      "type": "procedure",
      "input": {
        "schema": {
          "type": "object",
          "required": [
            "parentUri",
            "title",
            "text"
          ],
          "properties": {
            "text": {
              "type": "string",
              "maxLength": 20000
            },
            "title": {
              "type": "string",
              "maxLength": 1200,
              "maxGraphemes": 120
            },
            "parentUri": {
              "type": "string",
              "format": "at-uri",
              "description": "AT-URI of the parent bud being continued."
            },
            "formatting": {
              "type": "array",
              "items": {
                "ref": "ink.branchline.bud#formatSpan",
                "type": "ref"
              },
              "description": "Byte-offset inline formatting spans over `text`."
            }
          }
        },
        "encoding": "application/json"
      },
      "errors": [
        {
          "name": "Unauthorized",
          "description": "The caller is not signed in."
        },
        {
          "name": "ParentNotFound",
          "description": "The parent bud does not exist in the AppView."
        },
        {
          "name": "SelfReply",
          "description": "The caller is the parent bud's author. Buds cannot continue themselves."
        },
        {
          "name": "ParentGrowing",
          "description": "The parent bud is still inside its 24h growing window."
        },
        {
          "name": "WordLimitExceeded",
          "description": "The bud text exceeds the 500-word ceiling."
        }
      ],
      "output": {
        "schema": {
          "type": "object",
          "required": [
            "uri",
            "cid"
          ],
          "properties": {
            "cid": {
              "type": "string",
              "format": "cid"
            },
            "uri": {
              "type": "string",
              "format": "at-uri"
            }
          }
        },
        "encoding": "application/json"
      },
      "description": "Publish a new bud as a continuation of an existing parent. The caller must be signed in. The AppView writes an ink.branchline.bud record to the caller's PDS and mirrors it into the local read cache so the new bud is immediately navigable. Rejection reasons mirror ink.branchline.bud create validation — 500-word limit on `text`, 24h parent growing window, self-reply, etc. Root buds are not created through this procedure; they are written directly to an allowlisted author's PDS and picked up by the indexer."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against ink.branchline.publishBud

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

Metadata

DID
did:plc:brvu7akhdvsqcomb67pafw25
CID
bafyreihsfk222ljy6gkxnrdizbs5dfruwmydrhjpt4zenujzhkeut3dzg4
Indexed At
2026-04-15 19:26 UTC
AT-URI
at://did:plc:brvu7akhdvsqcomb67pafw25/com.atproto.lexicon.schema/ink.branchline.publishBud

Referenced Schemas (1)

Lexicon Garden

@