48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
# List of API endpoints and scopes
|
|
|
|
## Scopes
|
|
|
|
- `identify`: `@me` will refer to token user (always granted)
|
|
- `user.read_hidden`: can read non-privileged hidden information such as timezone,
|
|
whether the member list is hidden, and whether a member is unlisted.
|
|
- `user.read_privileged`: can read privileged information such as authentication methods
|
|
- `user.update`: can update the user's profile.
|
|
**cannot** update anything locked behind `user.read_privileged`
|
|
- `member.read`: can view member list if it's hidden and enumerate unlisted members
|
|
- `member.create`: can create new members
|
|
- `member.update`: can edit and delete members
|
|
|
|
## Meta
|
|
|
|
- [x] GET `/meta`: gets stats and server information
|
|
|
|
## Users
|
|
|
|
- [x] GET `/users/{userRef}`: views current user.
|
|
`identify` required to use `@me` as user reference.
|
|
`user.read_hidden` required to view timezone and other hidden non-privileged data.
|
|
`user.read_privileged` required to view authentication methods.
|
|
`member.read` required to view unlisted members.
|
|
- [x] PATCH `/users/@me`: updates current user. `user.update` required
|
|
- [x] PATCH `/users/@me/custom-preferences`: updates user's custom preferences. `user.update` required
|
|
- [ ] DELETE `/users/@me`: deletes current user. `*` required
|
|
- [ ] POST `/users/@me/export`: queues new data export. `*` required
|
|
- [ ] GET `/users/@me/export`: gets latest data export. `*` required
|
|
- [ ] GET `/users/@me/flags`: get all the user's flags. `identify` required
|
|
- [ ] POST `/users/@me/flags`: creates a new flag. `user.update` required
|
|
- [ ] PATCH `/users/@me/flags/{id}`: updates an existing flag. `user.update` required
|
|
- [ ] DELETE `/users/@me/flags/{id}`: deletes a user flag. `user.update` required
|
|
- [ ] POST `/users/@me/reroll`: rerolls a user's short ID. `user.update` required
|
|
|
|
## Members
|
|
|
|
- [x] GET `/users/{userRef}/members`: gets list of a user's members.
|
|
if the user's member list is hidden,
|
|
and it is not the authenticated user (or the token doesn't have the `member.read` scope)
|
|
returns an empty array.
|
|
- [x] GET `/users/{userRef}/members/{memberRef}`: gets a single member.
|
|
will always return a member if it exists, even if the member is unlisted.
|
|
- [x] POST `/users/@me/members`: creates a new member. `member.create` required
|
|
- [ ] PATCH `/users/@me/members/{memberRef}`: edits a member. `member.update` required
|
|
- [x] DELETE `/users/@me/members/{memberRef}`: deletes a member. `member.update` required
|
|
- [ ] POST `/users/@me/members/{memberRef}/reroll`: rerolls a member's short ID. `member.update` required.
|