ink.branchline.createBookmark
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.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | branchline.ink |
| Indexed |
Checks
Valid Lint pass{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"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.",
"errors": [
{
"description": "The caller is not signed in.",
"name": "Unauthorized"
},
{
"description": "The subject bud does not exist in the AppView.",
"name": "SubjectNotFound"
},
{
"description": "The caller already has a bookmark on this exact subject.",
"name": "DuplicateBookmark"
}
],
"input": {
"encoding": "application/json",
"schema": {
"properties": {
"subjectUri": {
"description": "AT-URI of the ink.branchline.bud record to bookmark.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"subjectUri"
],
"type": "object"
}
},
"output": {
"encoding": "application/json",
"schema": {
"properties": {
"cid": {
"format": "cid",
"type": "string"
},
"uri": {
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"cid"
],
"type": "object"
}
},
"type": "procedure"
}
},
"id": "ink.branchline.createBookmark",
"lexicon": 1
}