Merge pull request 'remove the docs for stuff i didn't do' (#72) from remove-weird...
[akkoma] / docs / docs / development / API / nodeinfo.md
1 # Nodeinfo
2
3 See also [the Nodeinfo standard](https://nodeinfo.diaspora.software/).
4
5 ## `/.well-known/nodeinfo`
6 ### The well-known path
7 * Method: `GET`
8 * Authentication: not required
9 * Params: none
10 * Response: JSON
11 * Example response:
12 ```json
13 {
14 "links":[
15 {
16 "href":"https://example.com/nodeinfo/2.0.json",
17 "rel":"http://nodeinfo.diaspora.software/ns/schema/2.0"
18 },
19 {
20 "href":"https://example.com/nodeinfo/2.1.json",
21 "rel":"http://nodeinfo.diaspora.software/ns/schema/2.1"
22 }
23 ]
24 }
25 ```
26
27 ## `/nodeinfo/2.0.json`
28 ### Nodeinfo 2.0
29 * Method: `GET`
30 * Authentication: not required
31 * Params: none
32 * Response: JSON
33 * Example response:
34 ```json
35 {
36 "metadata":{
37 "accountActivationRequired":false,
38 "features":[
39 "pleroma_api",
40 "mastodon_api",
41 "mastodon_api_streaming",
42 "polls",
43 "pleroma_explicit_addressing",
44 "shareable_emoji_packs",
45 "multifetch",
46 "pleroma:api/v1/notifications:include_types_filter",
47 "chat",
48 "shout",
49 "relay",
50 "pleroma_emoji_reactions",
51 "pleroma_chat_messages"
52 ],
53 "federation":{
54 "enabled":true,
55 "exclusions":false,
56 "mrf_hashtag":{
57 "federated_timeline_removal":[
58
59 ],
60 "reject":[
61
62 ],
63 "sensitive":[
64 "nsfw"
65 ]
66 },
67 "mrf_object_age":{
68 "actions":[
69 "delist",
70 "strip_followers"
71 ],
72 "threshold":604800
73 },
74 "mrf_policies":[
75 "ObjectAgePolicy",
76 "TagPolicy",
77 "HashtagPolicy"
78 ],
79 "quarantined_instances":[
80
81 ]
82 },
83 "fieldsLimits":{
84 "maxFields":10,
85 "maxRemoteFields":20,
86 "nameLength":512,
87 "valueLength":2048
88 },
89 "invitesEnabled":false,
90 "mailerEnabled":false,
91 "nodeDescription":"Pleroma: An efficient and flexible fediverse server",
92 "nodeName":"Example",
93 "pollLimits":{
94 "max_expiration":31536000,
95 "max_option_chars":200,
96 "max_options":20,
97 "min_expiration":0
98 },
99 "postFormats":[
100 "text/plain",
101 "text/html",
102 "text/markdown",
103 "text/bbcode"
104 ],
105 "private":false,
106 "restrictedNicknames":[
107 ".well-known",
108 "~",
109 "about",
110 "activities",
111 "api",
112 "auth",
113 "check_password",
114 "dev",
115 "friend-requests",
116 "inbox",
117 "internal",
118 "main",
119 "media",
120 "nodeinfo",
121 "notice",
122 "oauth",
123 "objects",
124 "ostatus_subscribe",
125 "pleroma",
126 "proxy",
127 "push",
128 "registration",
129 "relay",
130 "settings",
131 "status",
132 "tag",
133 "user-search",
134 "user_exists",
135 "users",
136 "web",
137 "verify_credentials",
138 "update_credentials",
139 "relationships",
140 "search",
141 "confirmation_resend",
142 "mfa"
143 ],
144 "skipThreadContainment":true,
145 "staffAccounts":[
146 "https://example.com/users/admin",
147 "https://example.com/users/staff"
148 ],
149 "suggestions":{
150 "enabled":false
151 },
152 "uploadLimits":{
153 "avatar":2000000,
154 "background":4000000,
155 "banner":4000000,
156 "general":16000000
157 }
158 },
159 "openRegistrations":true,
160 "protocols":[
161 "activitypub"
162 ],
163 "services":{
164 "inbound":[
165
166 ],
167 "outbound":[
168
169 ]
170 },
171 "software":{
172 "name":"pleroma",
173 "version":"2.4.1"
174 },
175 "usage":{
176 "localPosts":27,
177 "users":{
178 "activeHalfyear":129,
179 "activeMonth":70,
180 "total":235
181 }
182 },
183 "version":"2.0"
184 }
185 ```
186
187 ## `/nodeinfo/2.1.json`
188 ### Nodeinfo 2.1
189 * Method: `GET`
190 * Authentication: not required
191 * Params: none
192 * Response: JSON
193 * Example response:
194 ```json
195 {
196 "metadata":{
197 "accountActivationRequired":false,
198 "features":[
199 "pleroma_api",
200 "mastodon_api",
201 "mastodon_api_streaming",
202 "polls",
203 "pleroma_explicit_addressing",
204 "shareable_emoji_packs",
205 "multifetch",
206 "pleroma:api/v1/notifications:include_types_filter",
207 "chat",
208 "shout",
209 "relay",
210 "pleroma_emoji_reactions",
211 "pleroma_chat_messages"
212 ],
213 "federation":{
214 "enabled":true,
215 "exclusions":false,
216 "mrf_hashtag":{
217 "federated_timeline_removal":[
218
219 ],
220 "reject":[
221
222 ],
223 "sensitive":[
224 "nsfw"
225 ]
226 },
227 "mrf_object_age":{
228 "actions":[
229 "delist",
230 "strip_followers"
231 ],
232 "threshold":604800
233 },
234 "mrf_policies":[
235 "ObjectAgePolicy",
236 "TagPolicy",
237 "HashtagPolicy"
238 ],
239 "quarantined_instances":[
240
241 ]
242 },
243 "fieldsLimits":{
244 "maxFields":10,
245 "maxRemoteFields":20,
246 "nameLength":512,
247 "valueLength":2048
248 },
249 "invitesEnabled":false,
250 "mailerEnabled":false,
251 "nodeDescription":"Pleroma: An efficient and flexible fediverse server",
252 "nodeName":"Example",
253 "pollLimits":{
254 "max_expiration":31536000,
255 "max_option_chars":200,
256 "max_options":20,
257 "min_expiration":0
258 },
259 "postFormats":[
260 "text/plain",
261 "text/html",
262 "text/markdown",
263 "text/bbcode"
264 ],
265 "private":false,
266 "restrictedNicknames":[
267 ".well-known",
268 "~",
269 "about",
270 "activities",
271 "api",
272 "auth",
273 "check_password",
274 "dev",
275 "friend-requests",
276 "inbox",
277 "internal",
278 "main",
279 "media",
280 "nodeinfo",
281 "notice",
282 "oauth",
283 "objects",
284 "ostatus_subscribe",
285 "pleroma",
286 "proxy",
287 "push",
288 "registration",
289 "relay",
290 "settings",
291 "status",
292 "tag",
293 "user-search",
294 "user_exists",
295 "users",
296 "web",
297 "verify_credentials",
298 "update_credentials",
299 "relationships",
300 "search",
301 "confirmation_resend",
302 "mfa"
303 ],
304 "skipThreadContainment":true,
305 "staffAccounts":[
306 "https://example.com/users/admin",
307 "https://example.com/users/staff"
308 ],
309 "suggestions":{
310 "enabled":false
311 },
312 "uploadLimits":{
313 "avatar":2000000,
314 "background":4000000,
315 "banner":4000000,
316 "general":16000000
317 }
318 },
319 "openRegistrations":true,
320 "protocols":[
321 "activitypub"
322 ],
323 "services":{
324 "inbound":[
325
326 ],
327 "outbound":[
328
329 ]
330 },
331 "software":{
332 "name":"pleroma",
333 "repository":"https://akkoma.dev/AkkomaGang/akkoma",
334 "version":"2.5.2"
335 },
336 "usage":{
337 "localPosts":27,
338 "users":{
339 "activeHalfyear":129,
340 "activeMonth":70,
341 "total":235
342 }
343 },
344 "version":"2.1"
345 }
346 ```
347