This repository has no description
3.1 kB
102 lines
1{
2 "lexicon": 1,
3 "id": "org.tangled.temp.notification.listNotifications",
4 "defs": {
5 "main": {
6 "type": "query",
7 "description": "List notifications for the authenticated user, split by category.",
8 "parameters": {
9 "type": "params",
10 "properties": {
11 "limit": {
12 "type": "integer",
13 "minimum": 1,
14 "maximum": 100,
15 "description": "Max notifications per category to return."
16 },
17 "cursor": {
18 "type": "string"
19 },
20 "read": {
21 "type": "string",
22 "description": "Filter by read state: 'all' or 'unread'."
23 },
24 "category": {
25 "type": "string",
26 "description": "Filter by category: 'all', 'social', or 'work'."
27 }
28 }
29 },
30 "output": {
31 "encoding": "application/json",
32 "schema": {
33 "type": "object",
34 "required": ["notifications", "workUnreadCount", "socialUnreadCount"],
35 "properties": {
36 "notifications": {
37 "type": "array",
38 "items": {
39 "type": "ref",
40 "ref": "#notification"
41 }
42 },
43 "workUnreadCount": {
44 "type": "integer"
45 },
46 "socialUnreadCount": {
47 "type": "integer"
48 },
49 "cursor": {
50 "type": "string"
51 }
52 }
53 }
54 }
55 },
56 "notification": {
57 "type": "object",
58 "required": ["id", "type", "category", "actorDid", "read", "createdAt"],
59 "properties": {
60 "id": {
61 "type": "integer",
62 "description": "Stable numeric ID for this notification."
63 },
64 "type": {
65 "type": "string",
66 "description": "Notification type: repo_starred, issue_created, issue_commented, issue_closed, issue_reopen, issue_assigned, issue_unassigned, pull_created, pull_commented, pull_merged, pull_closed, pull_reopen, pull_assigned, pull_unassigned, followed, user_mentioned."
67 },
68 "category": {
69 "type": "string",
70 "description": "Broad category: 'social' or 'work'."
71 },
72 "actorDid": {
73 "type": "string",
74 "format": "did",
75 "description": "DID of the user who triggered this notification."
76 },
77 "read": {
78 "type": "boolean"
79 },
80 "createdAt": {
81 "type": "string",
82 "format": "datetime"
83 },
84 "repoDid": {
85 "type": "string",
86 "format": "did",
87 "description": "DID of the related repository, if applicable."
88 },
89 "issueAt": {
90 "type": "string",
91 "format": "at-uri",
92 "description": "AT-URI of the related org.tangled.issue.issue record, if applicable."
93 },
94 "pullAt": {
95 "type": "string",
96 "format": "at-uri",
97 "description": "AT-URI of the related org.tangled.pulls.pull record, if applicable."
98 }
99 }
100 }
101 }
102}