app.zeens.notification.listNotifications

zeens.app

Documentation

List notifications for the authenticated Zeens user. Merges likes, replies, follows, group-membership and group-photo events from the firehose.

main query

List notifications for the authenticated Zeens user. Merges likes, replies, follows, group-membership and group-photo events from the firehose.

Parameters

actors string Required

Required comma-separated allowlist of author DIDs (the Zeens membership set). Only notifications authored by one of these DIDs are returned, so activity that reached the repo from Bluesky or another atproto client is excluded. An empty list returns nothing.

cursor string Optional

Pagination cursor (ISO-8601 timestamp of the oldest notification in the previous page).

limit integer Optional

No description available.

recipient string did Required

DID whose notifications to fetch. The AppView trusts this value; auth is enforced at the SvelteKit layer.

Output

Encodingapplication/json
cursor string Optional

No description available.

notifications array Required

No description available.

seenAt stringdatetime Optional

An RFC 3339 formatted timestamp.

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
Required comma-separated allowlist of author DIDs (the Zeens membership set). Only notifications authored by one of these DIDs are returned, so activity that reached the repo from Bluesky or another atproto client is excluded. An empty list returns nothing.
Pagination cursor (ISO-8601 timestamp of the oldest notification in the previous page).
DID whose notifications to fetch. The AppView trusts this value; auth is enforced at the SvelteKit layer.
View raw schema
{
  "description": "List notifications for the authenticated Zeens user. Merges likes, replies, follows, group-membership and group-photo events from the firehose.",
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "cursor": {
          "type": "string"
        },
        "notifications": {
          "items": {
            "ref": "#notification",
            "type": "ref"
          },
          "type": "array"
        },
        "seenAt": {
          "format": "datetime",
          "type": "string"
        }
      },
      "required": [
        "notifications"
      ],
      "type": "object"
    }
  },
  "parameters": {
    "properties": {
      "actors": {
        "description": "Required comma-separated allowlist of author DIDs (the Zeens membership set). Only notifications authored by one of these DIDs are returned, so activity that reached the repo from Bluesky or another atproto client is excluded. An empty list returns nothing.",
        "type": "string"
      },
      "cursor": {
        "description": "Pagination cursor (ISO-8601 timestamp of the oldest notification in the previous page).",
        "type": "string"
      },
      "limit": {
        "default": 50,
        "maximum": 100,
        "minimum": 1,
        "type": "integer"
      },
      "recipient": {
        "description": "DID whose notifications to fetch. The AppView trusts this value; auth is enforced at the SvelteKit layer.",
        "format": "did",
        "type": "string"
      }
    },
    "required": [
      "recipient",
      "actors"
    ],
    "type": "params"
  },
  "type": "query"
}
actor object

No description available.

Properties

avatar string Optional

No description available.

did string did Required

A decentralized identifier (DID).

displayName string Optional

No description available.

handle string Optional

No description available.

View raw schema
{
  "properties": {
    "avatar": {
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "displayName": {
      "type": "string"
    },
    "handle": {
      "type": "string"
    }
  },
  "required": [
    "did"
  ],
  "type": "object"
}
notification object

No description available.

Properties

author ref #actor Required

Who caused the notification (the liker, replier, follower, inviter, etc.).

extra unknown Optional

Reason-specific payload (e.g. group DID, role, accept/decline flag).

indexedAt string datetime Required

An RFC 3339 formatted timestamp.

isRead boolean Required

No description available.

labels array of unknown Optional

No description available.

reason string Required

The type of notification.

Known values: like, reply, follow, article-like, article-reply, comment_like, comment_reply, group-member-added, group-photo-added, group-invite, group-photo-invite, group-photo-invite-accepted
reasonSubject string at-uri Optional

For like/reply/article-like: AT-URI of the subject post/article. For group events: AT-URI of the group record.

recordUri string at-uri Required

Same as uri — present for compatibility with bsky notification shape.

uri string at-uri Required

AT-URI of the triggering record (the like, reply, follow, groupMember, etc.).

View raw schema
{
  "properties": {
    "author": {
      "description": "Who caused the notification (the liker, replier, follower, inviter, etc.).",
      "ref": "#actor",
      "type": "ref"
    },
    "extra": {
      "description": "Reason-specific payload (e.g. group DID, role, accept/decline flag).",
      "type": "unknown"
    },
    "indexedAt": {
      "format": "datetime",
      "type": "string"
    },
    "isRead": {
      "type": "boolean"
    },
    "labels": {
      "items": {
        "type": "unknown"
      },
      "type": "array"
    },
    "reason": {
      "description": "The type of notification.",
      "knownValues": [
        "like",
        "reply",
        "follow",
        "article-like",
        "article-reply",
        "comment_like",
        "comment_reply",
        "group-member-added",
        "group-photo-added",
        "group-invite",
        "group-photo-invite",
        "group-photo-invite-accepted"
      ],
      "type": "string"
    },
    "reasonSubject": {
      "description": "For like/reply/article-like: AT-URI of the subject post/article. For group events: AT-URI of the group record.",
      "format": "at-uri",
      "type": "string"
    },
    "recordUri": {
      "description": "Same as uri — present for compatibility with bsky notification shape.",
      "format": "at-uri",
      "type": "string"
    },
    "uri": {
      "description": "AT-URI of the triggering record (the like, reply, follow, groupMember, etc.).",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "author",
    "reason",
    "recordUri",
    "isRead",
    "indexedAt"
  ],
  "type": "object"
}

Lexicon Garden

@