zone.stratos.sync.subscribeRecords
Schema Diff
+1 -5
Compatibility Analysis
Backward Compatible
No changes detected.
1
1
{
2
2
"id": "zone.stratos.sync.subscribeRecords",
3
3
"defs": {
4
4
"info": {
5
5
"type": "object",
6
6
"required": [
7
7
"name"
8
8
],
9
9
"properties": {
10
10
"name": {
11
11
"type": "string",
12
12
"maxLength": 128,
13
13
"description": "The type of info message.",
14
14
"knownValues": [
15
15
"OutdatedCursor"
16
16
]
17
17
},
18
18
"message": {
19
19
"type": "string",
20
20
"maxLength": 1024,
21
21
"description": "Additional details about the info message."
22
22
}
23
23
},
24
24
"description": "An informational message about the subscription state."
25
25
},
26
26
"main": {
27
27
"type": "subscription",
28
28
"errors": [
29
29
{
30
30
"name": "FutureCursor",
31
31
"description": "Cursor is in the future."
32
32
},
33
33
{
34
34
"name": "AuthRequired",
35
35
"description": "Authentication is required."
36
36
}
37
37
],
38
38
"message": {
39
39
"schema": {
40
40
"refs": [
41
41
"#commit",
42
42
"#enrollment",
43
43
"#info"
44
44
],
45
45
"type": "union"
46
46
}
47
47
},
48
48
"parameters": {
49
49
"type": "params",
50
50
"properties": {
51
51
"did": {
52
52
"type": "string",
53
53
"format": "did",
54
54
"description": "The DID of the account to subscribe to. If omitted, subscribes to service-level enrollment events."
55
55
},
56
56
"cursor": {
57
57
"type": "integer",
58
58
"description": "The last known event sequence number to resume from."
59
59
},
60
60
"domain": {
61
61
"type": "string",
62
62
"maxLength": 253,
63
63
"description": "Optional domain filter. Only events for records with this domain in their boundary will be emitted."
64
-
},
65
-
"syncToken": {
66
-
"type": "string",
67
-
"description": "Signed service JWT for AppView authentication. Must include iss, aud, exp, and lxm claims. Required for service callers; owner callers may use the Authorization header instead."
68
64
}
69
65
}
70
66
},
71
-
"description": "Subscribe to stratos events. When 'did' is provided, subscribes to record updates for that account. When omitted, subscribes to service-level events (enrollments). AppViews must provide a signed service JWT via syncToken."
67
+
"description": "Subscribe to stratos events. When 'did' is provided, subscribes to record updates for that account. When omitted, subscribes to service-level events (enrollments). Callers must authenticate with a signed service JWT via the Authorization: Bearer header."
72
68
},
73
69
"commit": {
74
70
"type": "object",
75
71
"required": [
76
72
"seq",
77
73
"did",
78
74
"time",
79
75
"rev",
80
76
"ops"
81
77
],
82
78
"properties": {
83
79
"did": {
84
80
"type": "string",
85
81
"format": "did",
86
82
"description": "The DID of the account."
87
83
},
88
84
"ops": {
89
85
"type": "array",
90
86
"items": {
91
87
"ref": "#recordOp",
92
88
"type": "ref"
93
89
},
94
90
"description": "List of record operations in this commit."
95
91
},
96
92
"rev": {
97
93
"type": "string",
98
94
"format": "tid",
99
95
"description": "The repo revision."
100
96
},
101
97
"seq": {
102
98
"type": "integer",
103
99
"description": "The sequence number of this event."
104
100
},
105
101
"time": {
106
102
"type": "string",
107
103
"format": "datetime",
108
104
"description": "Timestamp of when the event was sequenced."
109
105
}
110
106
},
111
107
"description": "A commit event containing record operations."
112
108
},
113
109
"recordOp": {
114
110
"type": "object",
115
111
"required": [
116
112
"action",
117
113
"path"
118
114
],
119
115
"properties": {
120
116
"cid": {
121
117
"type": "cid-link",
122
118
"description": "The CID of the record. Present for create and update operations."
123
119
},
124
120
"path": {
125
121
"type": "string",
126
122
"maxLength": 512,
127
123
"description": "The record path (collection/rkey)."
128
124
},
129
125
"action": {
130
126
"type": "string",
131
127
"maxLength": 32,
132
128
"description": "The type of operation.",
133
129
"knownValues": [
134
130
"create",
135
131
"update",
136
132
"delete"
137
133
]
138
134
},
139
135
"record": {
140
136
"type": "unknown",
141
137
"description": "The record content. Present for create and update operations."
142
138
}
143
139
},
144
140
"description": "A single record operation within a commit."
145
141
},
146
142
"enrollment": {
147
143
"type": "object",
148
144
"required": [
149
145
"did",
150
146
"action",
151
147
"time"
152
148
],
153
149
"properties": {
154
150
"did": {
155
151
"type": "string",
156
152
"format": "did",
157
153
"description": "The DID of the user."
158
154
},
159
155
"time": {
160
156
"type": "string",
161
157
"format": "datetime",
162
158
"description": "Timestamp of the enrollment event."
163
159
},
164
160
"action": {
165
161
"type": "string",
166
162
"maxLength": 32,
167
163
"description": "The enrollment action.",
168
164
"knownValues": [
169
165
"enroll",
170
166
"unenroll"
171
167
]
172
168
},
173
169
"service": {
174
170
"type": "string",
175
171
"format": "uri",
176
172
"description": "The Stratos service endpoint URL."
177
173
},
178
174
"boundaries": {
179
175
"type": "array",
180
176
"items": {
181
177
"type": "string"
182
178
},
183
179
"description": "The boundaries assigned to the user."
184
180
}
185
181
},
186
182
"description": "An enrollment event indicating a user has enrolled or unenrolled from the service."
187
183
}
188
184
},
189
185
"$type": "com.atproto.lexicon.schema",
190
186
"lexicon": 1
191
187
}