# Admin API Authentication is required and the user must be an admin. ## `/api/pleroma/admin/users` ### List users - Method `GET` - Query Params: - `query`: **string** *optional* search term - `local_only`: **bool** *optional* whether to return only local users - `page`: **integer** *optional* page number - `page_size`: **integer** *optional* number of users per page (default is `50`) - Response: ```JSON { "page_size": integer, "count": integer, "users": [ { "deactivated": bool, "id": integer, "nickname": string }, ... ] } ``` ## `/api/pleroma/admin/user` ### Remove a user - Method `DELETE` - Params: - `nickname` - Response: User’s nickname ### Create a user - 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` ### Untag a list of users - Method: `DELETE` - Params: - `nickname` - `tags` ## `/api/pleroma/admin/permission_group/:nickname` ### Get user user permission groups membership - Method: `GET` - Params: none - Response: ```JSON { "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: ```JSON { "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` ### 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. ## `/api/pleroma/admin/activation_status/:nickname` ### Active or deactivate a user - 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 ### Unfollow a 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) ## `/api/pleroma/admin/email_invite` ### Sends registration invite via email - 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)