From ed7fd6b47e93e0874e3d79f124b71693e43dbb2c Mon Sep 17 00:00:00 2001 From: Maxim Filippov Date: Wed, 27 Feb 2019 03:08:03 +0300 Subject: Add missing docs and tests --- docs/Admin-API.md | 191 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 128 insertions(+), 63 deletions(-) (limited to 'docs/Admin-API.md') diff --git a/docs/Admin-API.md b/docs/Admin-API.md index 016444d58..508981d38 100644 --- a/docs/Admin-API.md +++ b/docs/Admin-API.md @@ -1,108 +1,173 @@ # Admin API + Authentication is required and the user must be an admin. +## `/api/pleroma/admin/users` + +### List users + +- Method `GET` +- Response: + +```JSON +[ + { + "deactivated": bool, + "id": integer, + "nickname": string + }, + ... +] +``` + ## `/api/pleroma/admin/user` + ### Remove a user -* Method `DELETE` -* Params: - * `nickname` -* Response: User’s nickname + +- Method `DELETE` +- Params: + - `nickname` +- Response: User’s nickname + ### Create a user -* Method: `POST` -* Params: - * `nickname` - * `email` - * `password` -* Response: User’s nickname + +- Method: `POST` +- Params: + - `nickname` + - `email` + - `password` +- Response: User’s nickname + +## `/api/pleroma/admin/users/:nickname/toggle_activation` + +### Toggle user activation + +- Method: `PATCH` +- Params: + - `nickname` +- Response: User’s object + +```JSON +{ + "deactivated": bool, + "id": integer, + "nickname": string +} +``` ## `/api/pleroma/admin/users/tag` + ### Tag a list of users -* Method: `PUT` -* Params: - * `nickname` - * `tags` + +- Method: `PUT` +- Params: + - `nickname` + - `tags` + ### Untag a list of users -* Method: `DELETE` -* Params: - * `nickname` - * `tags` + +- Method: `DELETE` +- Params: + - `nickname` + - `tags` ## `/api/pleroma/admin/permission_group/:nickname` + ### Get user user permission groups membership -* Method: `GET` -* Params: none -* Response: + +- Method: `GET` +- Params: none +- Response: + ```JSON { - "is_moderator": bool, - "is_admin": bool + "is_moderator": bool, + "is_admin": bool } ``` ## `/api/pleroma/admin/permission_group/:nickname/:permission_group` + Note: Available `:permission_group` is currently moderator and admin. 404 is returned when the permission group doesn’t exist. ### Get user user permission groups membership -* Method: `GET` -* Params: none -* Response: + +- Method: `GET` +- Params: none +- Response: + ```JSON { - "is_moderator": bool, - "is_admin": bool + "is_moderator": bool, + "is_admin": bool } ``` + ### Add user in permission group -* Method: `POST` -* Params: none -* Response: - * On failure: ``{"error": "…"}`` - * On success: JSON of the ``user.info`` + +- Method: `POST` +- Params: none +- Response: + - On failure: `{"error": "…"}` + - On success: JSON of the `user.info` + ### Remove user from permission group -* Method: `DELETE` -* Params: none -* Response: - * On failure: ``{"error": "…"}`` - * On success: JSON of the ``user.info`` -* Note: An admin cannot revoke their own admin status. + +- Method: `DELETE` +- Params: none +- Response: + - On failure: `{"error": "…"}` + - On success: JSON of the `user.info` +- Note: An admin cannot revoke their own admin status. ## `/api/pleroma/admin/activation_status/:nickname` ### Active or deactivate a user -* Method: `PUT` -* Params: - * `nickname` - * `status` BOOLEAN field, false value means deactivation. + +- Method: `PUT` +- Params: + - `nickname` + - `status` BOOLEAN field, false value means deactivation. ## `/api/pleroma/admin/relay` + ### Follow a Relay -* Methods: `POST` -* Params: - * `relay_url` -* Response: - * On success: URL of the followed relay + +- Methods: `POST` +- Params: + - `relay_url` +- Response: + - On success: URL of the followed relay + ### Unfollow a Relay -* Methods: `DELETE` -* Params: - * `relay_url` -* Response: - * On success: URL of the unfollowed relay + +- Methods: `DELETE` +- Params: + - `relay_url` +- Response: + - On success: URL of the unfollowed relay ## `/api/pleroma/admin/invite_token` + ### Get a account registeration invite token -* Methods: `GET` -* Params: none -* Response: invite token (base64 string) + +- Methods: `GET` +- Params: none +- Response: invite token (base64 string) ## `/api/pleroma/admin/email_invite` + ### Sends registration invite via email -* Methods: `POST` -* Params: - * `email` - * `name`, optionnal + +- Methods: `POST` +- Params: + - `email` + - `name`, optionnal ## `/api/pleroma/admin/password_reset` + ### Get a password reset token for a given nickname -* Methods: `GET` -* Params: none -* Response: password reset token (base64 string) + +- Methods: `GET` +- Params: none +- Response: password reset token (base64 string) -- cgit v1.2.3 From adac7455122d37058bff2e4a805066f2cd24fbf9 Mon Sep 17 00:00:00 2001 From: Maxim Filippov Date: Fri, 1 Mar 2019 17:34:14 +0300 Subject: Add docs to /users/search --- docs/Admin-API.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'docs/Admin-API.md') diff --git a/docs/Admin-API.md b/docs/Admin-API.md index 508981d38..ed19bc875 100644 --- a/docs/Admin-API.md +++ b/docs/Admin-API.md @@ -20,6 +20,26 @@ Authentication is required and the user must be an admin. ] ``` +## `/api/pleroma/admin/users/search?query={query}` + +### Search users + +- Method `GET` +- Params: + - `query` +- Response: + +```JSON +[ + { + "deactivated": bool, + "id": integer, + "nickname": string + }, + ... +] +``` + ## `/api/pleroma/admin/user` ### Remove a user -- cgit v1.2.3 From 5b08b470f69738f4528455a58fefe3a8d4acae02 Mon Sep 17 00:00:00 2001 From: Maxim Filippov Date: Fri, 1 Mar 2019 20:13:02 +0300 Subject: Add "local" params to users search --- docs/Admin-API.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'docs/Admin-API.md') diff --git a/docs/Admin-API.md b/docs/Admin-API.md index ed19bc875..4403620bf 100644 --- a/docs/Admin-API.md +++ b/docs/Admin-API.md @@ -20,13 +20,14 @@ Authentication is required and the user must be an admin. ] ``` -## `/api/pleroma/admin/users/search?query={query}` +## `/api/pleroma/admin/users/search?query={query}&local={local}` -### Search users +### Search users by name or nickname - Method `GET` - Params: - - `query` + - `query`: **string** search term + - `local`: **bool** whether to return only local users - Response: ```JSON -- cgit v1.2.3 From 08c6aeeed7ff5db242050d06e707f99b6d75684d Mon Sep 17 00:00:00 2001 From: Maxim Filippov Date: Sat, 2 Mar 2019 17:32:46 +0300 Subject: Add docs --- docs/Admin-API.md | 49 +++++++++++++++++++++++++++++++------------------ 1 file changed, 31 insertions(+), 18 deletions(-) (limited to 'docs/Admin-API.md') diff --git a/docs/Admin-API.md b/docs/Admin-API.md index 4403620bf..407647645 100644 --- a/docs/Admin-API.md +++ b/docs/Admin-API.md @@ -7,20 +7,27 @@ Authentication is required and the user must be an admin. ### List users - Method `GET` +- Params: + - `page`: **integer** page number + - `page_size`: **integer** number of users per page (default is `50`) - Response: ```JSON -[ +{ + "page_size": integer, + "count": integer, + "users": [ { - "deactivated": bool, - "id": integer, - "nickname": string + "deactivated": bool, + "id": integer, + "nickname": string }, ... -] + ] +} ``` -## `/api/pleroma/admin/users/search?query={query}&local={local}` +## `/api/pleroma/admin/users/search?query={query}&local={local}&page={page}&page_size={page_size}` ### Search users by name or nickname @@ -28,17 +35,23 @@ Authentication is required and the user must be an admin. - Params: - `query`: **string** search term - `local`: **bool** whether to return only local users + - `page`: **integer** page number + - `page_size`: **integer** number of users per page (default is `50`) - Response: ```JSON -[ +{ + "page_size": integer, + "count": integer, + "users": [ { - "deactivated": bool, - "id": integer, - "nickname": string + "deactivated": bool, + "id": integer, + "nickname": string }, ... -] + ] +} ``` ## `/api/pleroma/admin/user` @@ -70,9 +83,9 @@ Authentication is required and the user must be an admin. ```JSON { - "deactivated": bool, - "id": integer, - "nickname": string + "deactivated": bool, + "id": integer, + "nickname": string } ``` @@ -102,8 +115,8 @@ Authentication is required and the user must be an admin. ```JSON { - "is_moderator": bool, - "is_admin": bool + "is_moderator": bool, + "is_admin": bool } ``` @@ -119,8 +132,8 @@ Note: Available `:permission_group` is currently moderator and admin. 404 is ret ```JSON { - "is_moderator": bool, - "is_admin": bool + "is_moderator": bool, + "is_admin": bool } ``` -- cgit v1.2.3