app.didpic.notification.updateSeen

lexicons.didpic.app

Schema Diff

+18 -2

From

CID
bafyreif22ksmwqc...
Indexed At
2026-05-16 06:40 UTC
View this version

To

CID
bafyreianba75ywx...
Indexed At
2026-05-18 02:59 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 6 non-breaking changes.

Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "app.didpic.notification.updateSeen:input.token" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.notification.updateSeen:output" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.notification.updateSeen:output.badge" }
  • AddedEdge AddedEdge { src: "app.didpic.notification.updateSeen", tgt: "app.didpic.notification.updateSeen:output", kind: "prop", name: Some("output") }
  • AddedEdge AddedEdge { src: "app.didpic.notification.updateSeen:input", tgt: "app.didpic.notification.updateSeen:input.token", kind: "prop", name: Some("token") }
  • AddedEdge AddedEdge { src: "app.didpic.notification.updateSeen:output", tgt: "app.didpic.notification.updateSeen:output.badge", kind: "prop", name: Some("badge") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.didpic.notification.updateSeen:input.token" }
  • AddedVertex { vertex_id: "app.didpic.notification.updateSeen:output" }
  • AddedVertex { vertex_id: "app.didpic.notification.updateSeen:output.badge" }

Additional Notes

  • Non-breaking: AddedEdge { src: "app.didpic.notification.updateSeen", tgt: "app.didpic.notification.updateSeen:output", kind: "prop", name: Some("output") }
  • Non-breaking: AddedEdge { src: "app.didpic.notification.updateSeen:input", tgt: "app.didpic.notification.updateSeen:input.token", kind: "prop", name: Some("token") }
  • Non-breaking: AddedEdge { src: "app.didpic.notification.updateSeen:output", tgt: "app.didpic.notification.updateSeen:output.badge", kind: "prop", name: Some("badge") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 -
      "description": "Push the authenticated viewer's notification seenAt boundary forward. Server-enforced monotonic: a stale or out-of-order client call with an older seenAt is a no-op, not a regression.",
5 +
      "description": "Mark notifications as seen up to seenAt.",
6 6
      "input": {
7 7
        "encoding": "application/json",
8 8
        "schema": {
9 9
          "properties": {
10 10
            "seenAt": {
11 -
              "description": "Timestamp indicating everything indexed at or before this moment has been seen. Clients should echo back the serverTime returned by listNotifications rather than using a locally-computed `now`.",
12 11
              "format": "datetime",
13 12
              "type": "string"
13 +
            },
14 +
            "token": {
15 +
              "description": "Caller's push token. When supplied and bound to the viewer, the response carries the post-update device badge.",
16 +
              "type": "string"
14 17
            }
15 18
          },
16 19
          "required": [
17 20
            "seenAt"
18 21
          ],
19 22
          "type": "object"
20 23
        }
21 24
      },
25 +
      "output": {
26 +
        "encoding": "application/json",
27 +
        "schema": {
28 +
          "properties": {
29 +
            "badge": {
30 +
              "description": "Device-wide unread sum across every DID bound to the supplied token.",
31 +
              "minimum": 0,
32 +
              "type": "integer"
33 +
            }
34 +
          },
35 +
          "type": "object"
36 +
        }
37 +
      },
22 38
      "type": "procedure"
23 39
    }
24 40
  },
25 41
  "id": "app.didpic.notification.updateSeen",
26 42
  "lexicon": 1
27 43
}

Compare Other Versions

Lexicon Garden

@