ink.branchline.getBuds

branchline.ink

Documentation

Hydrate full bud views for a set of AT-URIs. Buds are returned in the same order as the input URIs. Unknown URIs are silently omitted from the response.

main query

Hydrate full bud views for a set of AT-URIs. Buds are returned in the same order as the input URIs. Unknown URIs are silently omitted from the response.

Parameters

uris array of string Required

AT-URIs of buds to hydrate.

Output

Encodingapplication/json
buds array Required

No description available.

Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://api.bsky.social)
Parameters
AT-URIs of buds to hydrate.
View raw schema
{
  "type": "query",
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "buds"
      ],
      "properties": {
        "buds": {
          "type": "array",
          "items": {
            "ref": "#budView",
            "type": "ref"
          }
        }
      }
    },
    "encoding": "application/json"
  },
  "parameters": {
    "type": "params",
    "required": [
      "uris"
    ],
    "properties": {
      "uris": {
        "type": "array",
        "items": {
          "type": "string",
          "format": "at-uri"
        },
        "maxLength": 25,
        "description": "AT-URIs of buds to hydrate."
      }
    }
  },
  "description": "Hydrate full bud views for a set of AT-URIs. Buds are returned in the same order as the input URIs. Unknown URIs are silently omitted from the response."
}
authorView object

No description available.

Properties

did string did Required

A decentralized identifier (DID).

displayName string Optional

No description available.

maxLength: 640 bytesmaxGraphemes: 64 graphemes
handle string handle Required

An AT Protocol handle (e.g., alice.bsky.social).

View raw schema
{
  "type": "object",
  "required": [
    "did",
    "handle"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did"
    },
    "handle": {
      "type": "string",
      "format": "handle"
    },
    "displayName": {
      "type": "string",
      "maxLength": 640,
      "maxGraphemes": 64
    }
  }
}
budView object

No description available.

Properties

author ref #authorView Optional

No description available.

bloomsAt string datetime Optional

Timestamp when this bud finishes its growing window and blooms into the feed. Present on every bud; compare with the current time rather than relying on `growing` alone when a live countdown is needed.

children array of stringat-uri Optional

AT-URIs of buds that extend this bud.

cid string cid Required

A content identifier (CID) referencing immutable data.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

depth integer Required

Depth of this bud in the story tree (0 = root).

minimum: 0
growing boolean Optional

True when the bud has not yet reached its bloomsAt time and is still in the growing window.

intermediateCount integer Optional

Count of distinct contributor DIDs on the root-to-bud path, including the root author and this bud's author.

minimum: 0
locked boolean Optional

True when the bud's bloom time can no longer be extended.

pollenCount integer Required

Lifetime number of pollen grains on this bud (raw count, not the ranking-weighted score).

minimum: 0
text string Required

No description available.

title string Required

No description available.

uri string at-uri Required

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

viewerBookmarked boolean Optional

True when the authenticated viewer has a bookmark whose subject is this bud. A bookmark earlier or later on the same lineage does not light this flag; only the exact subject does. Omitted when there is no viewer session.

viewerCanEdit boolean Optional

True when the authenticated viewer is permitted to edit this bud — they are the author, the bud has no children, and it is not locked. Omitted when there is no viewer session.

viewerPollinated boolean Optional

True when the authenticated viewer has already pollinated this bud. Omitted when there is no viewer session.

View raw schema
{
  "type": "object",
  "required": [
    "uri",
    "cid",
    "title",
    "text",
    "createdAt",
    "depth",
    "pollenCount"
  ],
  "properties": {
    "cid": {
      "type": "string",
      "format": "cid"
    },
    "uri": {
      "type": "string",
      "format": "at-uri"
    },
    "text": {
      "type": "string"
    },
    "depth": {
      "type": "integer",
      "minimum": 0,
      "description": "Depth of this bud in the story tree (0 = root)."
    },
    "title": {
      "type": "string"
    },
    "author": {
      "ref": "#authorView",
      "type": "ref"
    },
    "locked": {
      "type": "boolean",
      "description": "True when the bud's bloom time can no longer be extended."
    },
    "parent": {
      "ref": "com.atproto.repo.strongRef",
      "type": "ref"
    },
    "growing": {
      "type": "boolean",
      "description": "True when the bud has not yet reached its bloomsAt time and is still in the growing window."
    },
    "bloomsAt": {
      "type": "string",
      "format": "datetime",
      "description": "Timestamp when this bud finishes its growing window and blooms into the feed. Present on every bud; compare with the current time rather than relying on `growing` alone when a live countdown is needed."
    },
    "children": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "at-uri"
      },
      "description": "AT-URIs of buds that extend this bud."
    },
    "createdAt": {
      "type": "string",
      "format": "datetime"
    },
    "formatting": {
      "type": "array",
      "items": {
        "ref": "ink.branchline.bud#formatSpan",
        "type": "ref"
      }
    },
    "pollenCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Lifetime number of pollen grains on this bud (raw count, not the ranking-weighted score)."
    },
    "viewerCanEdit": {
      "type": "boolean",
      "description": "True when the authenticated viewer is permitted to edit this bud — they are the author, the bud has no children, and it is not locked. Omitted when there is no viewer session."
    },
    "viewerBookmarked": {
      "type": "boolean",
      "description": "True when the authenticated viewer has a bookmark whose subject is this bud. A bookmark earlier or later on the same lineage does not light this flag; only the exact subject does. Omitted when there is no viewer session."
    },
    "viewerPollinated": {
      "type": "boolean",
      "description": "True when the authenticated viewer has already pollinated this bud. Omitted when there is no viewer session."
    },
    "intermediateCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Count of distinct contributor DIDs on the root-to-bud path, including the root author and this bud's author."
    }
  }
}

Lexicon Garden

@