pub struct LuckClient { /* private fields */ }
Expand description
A client for interacting with a LuckPerms instance.
Implementations§
Source§impl LuckClient
impl LuckClient
Sourcepub async fn users(&self) -> Result<Vec<Uuid>, RequestError>
pub async fn users(&self) -> Result<Vec<Uuid>, RequestError>
Get a list of all users on the LuckPerms instance.
Sourcepub async fn create_user(
&self,
user: UserIdentifier,
) -> Result<User, RequestError>
pub async fn create_user( &self, user: UserIdentifier, ) -> Result<User, RequestError>
Create a new user on the LuckPerms instance.
Sourcepub async fn username_lookup(
&self,
username: String,
) -> Result<UserIdentifier, RequestError>
pub async fn username_lookup( &self, username: String, ) -> Result<UserIdentifier, RequestError>
Lookup a user based on a username from the LuckPerms instance.
Sourcepub async fn uuid_lookup(
&self,
uuid: Uuid,
) -> Result<UserIdentifier, RequestError>
pub async fn uuid_lookup( &self, uuid: Uuid, ) -> Result<UserIdentifier, RequestError>
Lookup a user based on a UUID from the LuckPerms instance.
Sourcepub async fn user_search(
&self,
search: SearchRequest,
) -> Result<Vec<UserSearchResult>, RequestError>
pub async fn user_search( &self, search: SearchRequest, ) -> Result<Vec<UserSearchResult>, RequestError>
Search for users matching certain nodes.
Sourcepub async fn get_user(&self, uuid: Uuid) -> Result<Option<User>, RequestError>
pub async fn get_user(&self, uuid: Uuid) -> Result<Option<User>, RequestError>
Get a user based on their UUID.
Sourcepub async fn update_username(
&self,
uuid: Uuid,
username: String,
) -> Result<(), RequestError>
pub async fn update_username( &self, uuid: Uuid, username: String, ) -> Result<(), RequestError>
Update a user’s username.
Sourcepub async fn delete_user(&self, uuid: Uuid) -> Result<(), RequestError>
pub async fn delete_user(&self, uuid: Uuid) -> Result<(), RequestError>
Delete a user from the LuckPerms instance.
Sourcepub async fn get_user_nodes(
&self,
uuid: Uuid,
) -> Result<Vec<Node>, RequestError>
pub async fn get_user_nodes( &self, uuid: Uuid, ) -> Result<Vec<Node>, RequestError>
Get all nodes for a user.
Sourcepub async fn add_user_node(
&self,
uuid: Uuid,
node: Node,
) -> Result<(), RequestError>
pub async fn add_user_node( &self, uuid: Uuid, node: Node, ) -> Result<(), RequestError>
Add a node to a user.
Sourcepub async fn add_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>,
) -> Result<(), RequestError>
pub async fn add_user_nodes( &self, uuid: Uuid, nodes: Vec<Node>, ) -> Result<(), RequestError>
Add multiple nodes to a user.
Sourcepub async fn set_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>,
) -> Result<(), RequestError>
pub async fn set_user_nodes( &self, uuid: Uuid, nodes: Vec<Node>, ) -> Result<(), RequestError>
Set a user’s nodes.
Sourcepub async fn delete_user_nodes(
&self,
uuid: Uuid,
nodes: Vec<Node>,
) -> Result<(), RequestError>
pub async fn delete_user_nodes( &self, uuid: Uuid, nodes: Vec<Node>, ) -> Result<(), RequestError>
Delete nodes from a user.
Sourcepub async fn get_user_metadata(
&self,
uuid: Uuid,
) -> Result<Vec<Metadata>, RequestError>
pub async fn get_user_metadata( &self, uuid: Uuid, ) -> Result<Vec<Metadata>, RequestError>
Get a user’s meta data.
Sourcepub async fn check_user_permission(
&self,
uuid: Uuid,
permission: String,
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_user_permission( &self, uuid: Uuid, permission: String, ) -> Result<PermissionCheckResult, RequestError>
Check if a user has a permission.
Sourcepub async fn check_user_permission_query(
&self,
uuid: Uuid,
request: PermissionCheckRequest,
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_user_permission_query( &self, uuid: Uuid, request: PermissionCheckRequest, ) -> Result<PermissionCheckResult, RequestError>
Check if a user has a permission with more specific query options.
Sourcepub async fn promote_user(
&self,
uuid: Uuid,
track: String,
) -> Result<TrackMoveResponse, RequestError>
pub async fn promote_user( &self, uuid: Uuid, track: String, ) -> Result<TrackMoveResponse, RequestError>
Promote a user along a track.
Sourcepub async fn demote_user(
&self,
uuid: Uuid,
track: String,
) -> Result<TrackMoveResponse, RequestError>
pub async fn demote_user( &self, uuid: Uuid, track: String, ) -> Result<TrackMoveResponse, RequestError>
Demote a user along a track.
Source§impl LuckClient
impl LuckClient
Sourcepub async fn get_groups(&self) -> Result<Vec<String>, RequestError>
pub async fn get_groups(&self) -> Result<Vec<String>, RequestError>
Get all group names.
Sourcepub async fn create_group(&self, name: String) -> Result<Group, RequestError>
pub async fn create_group(&self, name: String) -> Result<Group, RequestError>
Create a new group.
Sourcepub async fn search_group(
&self,
search_request: SearchRequest,
) -> Result<Vec<GroupSearchResult>, RequestError>
pub async fn search_group( &self, search_request: SearchRequest, ) -> Result<Vec<GroupSearchResult>, RequestError>
Search for a group matching nodes.
Sourcepub async fn get_group(
&self,
name: String,
) -> Result<Option<Group>, RequestError>
pub async fn get_group( &self, name: String, ) -> Result<Option<Group>, RequestError>
Get a group based on its name.
Sourcepub async fn delete_group(&self, name: String) -> Result<(), RequestError>
pub async fn delete_group(&self, name: String) -> Result<(), RequestError>
Delete a group based on its name.
Sourcepub async fn get_group_nodes(
&self,
name: String,
) -> Result<Vec<Node>, RequestError>
pub async fn get_group_nodes( &self, name: String, ) -> Result<Vec<Node>, RequestError>
Get a group’s notes.
Sourcepub async fn add_group_node(
&self,
name: String,
node: Node,
) -> Result<Vec<Node>, RequestError>
pub async fn add_group_node( &self, name: String, node: Node, ) -> Result<Vec<Node>, RequestError>
Add a node to a group.
Sourcepub async fn add_group_nodes(
&self,
name: String,
nodes: Vec<Node>,
) -> Result<Vec<Node>, RequestError>
pub async fn add_group_nodes( &self, name: String, nodes: Vec<Node>, ) -> Result<Vec<Node>, RequestError>
Add multiple nodes to a group.
Sourcepub async fn set_group_nodes(
&self,
name: String,
nodes: Vec<Node>,
) -> Result<(), RequestError>
pub async fn set_group_nodes( &self, name: String, nodes: Vec<Node>, ) -> Result<(), RequestError>
Set nodes for a group.
Sourcepub async fn delete_group_node(
&self,
name: String,
nodes: Vec<Node>,
) -> Result<(), RequestError>
pub async fn delete_group_node( &self, name: String, nodes: Vec<Node>, ) -> Result<(), RequestError>
Delete nodes from a group.
Sourcepub async fn get_group_metadata(
&self,
name: String,
) -> Result<Metadata, RequestError>
pub async fn get_group_metadata( &self, name: String, ) -> Result<Metadata, RequestError>
Get a group’s metadata.
Sourcepub async fn check_group_permission(
&self,
name: String,
permission: String,
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_group_permission( &self, name: String, permission: String, ) -> Result<PermissionCheckResult, RequestError>
Check if a group has a permission.
Sourcepub async fn check_group_permission_query(
&self,
name: String,
request: PermissionCheckRequest,
) -> Result<PermissionCheckResult, RequestError>
pub async fn check_group_permission_query( &self, name: String, request: PermissionCheckRequest, ) -> Result<PermissionCheckResult, RequestError>
Check if a group has a permission with advanced query settings.
Source§impl LuckClient
impl LuckClient
Sourcepub async fn submit_action(&self, action: Action) -> Result<(), RequestError>
pub async fn submit_action(&self, action: Action) -> Result<(), RequestError>
Submit an action to the server.