ink.branchline.createBookmark

branchline.ink

Documentation

Bookmark a bud. The caller must be signed in. If the caller already has a bookmark in the same story whose subject is an ancestor or descendant of the new subject, the existing record is rewritten in place (putRecord) so the bookmark list stays one-per-thread. Otherwise a new ink.branchline.bookmark record is created in the caller's PDS and mirrored into the local read cache.

main procedure

Bookmark a bud. The caller must be signed in. If the caller already has a bookmark in the same story whose subject is an ancestor or descendant of the new subject, the existing record is rewritten in place (putRecord) so the bookmark list stays one-per-thread. Otherwise a new ink.branchline.bookmark record is created in the caller's PDS and mirrored into the local read cache.

Input

Encodingapplication/json
subjectUri stringat-uri Required

AT-URI of the ink.branchline.bud record to bookmark.

Output

Encodingapplication/json
cid stringcid Required

A content identifier (CID) referencing immutable data.

uri stringat-uri Required

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

Errors

Unauthorized The caller is not signed in.
SubjectNotFound The subject bud does not exist in the AppView.
DuplicateBookmark The caller already has a bookmark on this exact subject.
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://bsky.social)
Enter valid JSON for the request body
View raw schema
{
  "type": "procedure",
  "input": {
    "schema": {
      "type": "object",
      "required": [
        "subjectUri"
      ],
      "properties": {
        "subjectUri": {
          "type": "string",
          "format": "at-uri",
          "description": "AT-URI of the ink.branchline.bud record to bookmark."
        }
      }
    },
    "encoding": "application/json"
  },
  "errors": [
    {
      "name": "Unauthorized",
      "description": "The caller is not signed in."
    },
    {
      "name": "SubjectNotFound",
      "description": "The subject bud does not exist in the AppView."
    },
    {
      "name": "DuplicateBookmark",
      "description": "The caller already has a bookmark on this exact subject."
    }
  ],
  "output": {
    "schema": {
      "type": "object",
      "required": [
        "uri",
        "cid"
      ],
      "properties": {
        "cid": {
          "type": "string",
          "format": "cid"
        },
        "uri": {
          "type": "string",
          "format": "at-uri"
        }
      }
    },
    "encoding": "application/json"
  },
  "description": "Bookmark a bud. The caller must be signed in. If the caller already has a bookmark in the same story whose subject is an ancestor or descendant of the new subject, the existing record is rewritten in place (putRecord) so the bookmark list stays one-per-thread. Otherwise a new ink.branchline.bookmark record is created in the caller's PDS and mirrored into the local read cache."
}

Lexicon Garden

@