chat.yakka.markRead

Advance the viewer's read marker for a channel. The marker is a `chat.yakka.readMarker` record in the viewer's own settings space (ADR 0017), so it follows them to any client rather than living in this appview's idea of them. Monotonic: a marker never moves backwards, so an out-of-order call from a second tab cannot un-read a channel.

Repository @yakka.chat did:plc:wpjoy2orkqq5m65vq7gg7liz namespace authority
Details · procedure
Kindprocedure
Authorityyakka.chat
Indexed
cid bafyreia34gqwkbd5syh452vkwbrlmbsw4bp7jclpdfbz4e2zfzb3ivdmnu

Checks

Valid
  • unlimited-string defs.input.properties.channelNo maxLength, maxGraphemes or format limits this string.
  • endpoint-output-undefined defs.mainNo output is defined. Endpoints should define one, even an empty one.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "input": {
      "properties": {
        "channel": {
          "type": "string"
        },
        "seq": {
          "description": "The highest sequence the viewer has seen.",
          "minimum": 1,
          "type": "integer"
        }
      },
      "required": [
        "channel",
        "seq"
      ],
      "type": "object"
    },
    "main": {
      "description": "Advance the viewer's read marker for a channel. The marker is a `chat.yakka.readMarker` record in the viewer's own settings space (ADR 0017), so it follows them to any client rather than living in this appview's idea of them.\n\nMonotonic: a marker never moves backwards, so an out-of-order call from a second tab cannot un-read a channel.",
      "errors": [
        {
          "name": "ChannelNotFound"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "ref": "#input",
          "type": "ref"
        }
      },
      "type": "procedure"
    }
  },
  "id": "chat.yakka.markRead",
  "lexicon": 1
}